package com.visual.utils; import java.sql.*; import java.util.List; public class DBBean { private String url = "jdbc:mysql://47.101.187.125:3310/douban?useSSL=false"; // 数据库信息,旧版本中不用useSSL=false private String username = "root"; private String password = "rootRoot123."; private String driverName = "com.mysql.jdbc.Driver"; private Connection con = null; //连接对象 private PreparedStatement pstmt = null; //语句对象 private ResultSet rs = null; //结果集对象 public DBBean() throws ClassNotFoundException, SQLException { Class.forName(driverName); con = DriverManager.getConnection(url, username, password); } /* * sql:要执行的SQL语句 * params:SQL语句中需要的变量 */ public int executeUpdate(String sql, List<Object> params) throws SQLException { pstmt = con.prepareStatement(sql); if (params != null && params.size() > 0) { for (int i = 0; i < params.size(); i++) { pstmt.setObject(i + 1, params.get(i)); } } return pstmt.executeUpdate(); } public ResultSet executeQuery(String sql, List<Object> params) throws SQLException { pstmt = con.prepareStatement(sql); if (params != null && params.size() > 0) { for (int i = 0; i < params.size(); i++) { pstmt.setObject(i + 1, params.get(i)); } } return pstmt.executeQuery(); } public void close() { if (rs != null) { try { rs.close(); } catch (Exception ee) { } } if (pstmt != null) { try { pstmt.close(); } catch (Exception ee) { } } if (con != null) { try { con.close(); } catch (Exception ee) { } } } }
时间: 2024-04-21 15:24:42 浏览: 19
这是一个名为DBBean的工具类,用于与数据库进行交互。它使用JDBC连接到MySQL数据库,并提供了执行SQL语句的方法。
该类包含以下属性:
- url:数据库的URL地址
- username:数据库用户名
- password:数据库密码
- driverName:MySQL驱动程序的类名
该类有一个构造方法,使用反射加载驱动程序并建立数据库连接。
该类提供了两个方法:
- executeUpdate(String sql, List<Object> params):执行更新操作的SQL语句,可以传入参数列表。
- executeQuery(String sql, List<Object> params):执行查询操作的SQL语句,可以传入参数列表。
另外,该类还提供了一个关闭连接的方法close(),用于关闭连接、语句和结果集对象。
请注意,为了安全起见,这里只提供了基本的数据库操作方法,并未进行异常处理和安全验证,实际应用中需要根据具体情况进行改进。
相关问题
from ._internal_utils import to_native_string ImportError: attempted relative import with no known parent package
这个错误通常是由于相对导入出现问题,可能是因为当前模块的父级包不在Python解释器的搜索路径中。解决这个问题的方法通常是在文件顶部加入以下代码:
```
import os, sys
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
```
这将会将当前文件的父目录添加到Python解释器的搜索路径中,从而解决导入问题。
另外,`from ._internal_utils import to_native_string` 这种形式的相对导入通常只适用于包内部的模块间导入,如果你想导入一个外部的模块,应该使用绝对导入或者修改`PYTHONPATH`环境变量。
from utils.getPublicData import * import json userList = getAllUserList() bookList = getAllBookList()
这段代码的作用是从一个名为 `getPublicData` 的模块中导入 `getAllUserList` 和 `getAllBookList` 两个方法,然后使用这两个方法获取所有的用户列表和图书列表,并将它们分别赋值给 `userList` 和 `bookList` 变量。其中,`json` 模块没有被使用到。