黑马程序员技术交流社区
标题:
原生JDBC使用步骤,知识点
[打印本页]
作者:
zhangjingxian
时间:
2016-9-13 23:45
标题:
原生JDBC使用步骤,知识点
概念:java连接数据库的工具,java提供了JDBC的接口规范,数据库厂商提供给了针对各种数据库的具体实现类
步骤:
1:注册驱动
DriverManager:驱动控制管理类
registerDriver(java.sql.Driver driver)
方式一:
手动调用registerDriver注册驱动,不建议,因为如果是mysql的驱动Driver中已经在静态代码块中注册过一遍了。我们无需二次注册,所以不建议。
方式二:
Class.forName("驱动的全名");建议,因为避免了二次注册。
2:获取连接
DriverManager的方法:
public static Connection getConnection(String url,String user, String password)
url:数据库资源地址 jdbc:mysql://localhost:3306/mydatabase
user:账号
password:密码
3:获取执行平台
4:执行语句
普通执行平台:
Statement:sql执行平台类,我们通过连接获取这个连接的执行平台,在平台上执行SQL语句
Connection提供了获取执行平台的方法:
Statement createStatement() throws SQLException
Statement提供了执行SQL语句的方法
int executeUpdate(String sql); --执行insert update delete语句.
ResultSet executeQuery(String sql); --执行select语句.
预处理平台:
PreparedStatement:预处理平台类
Connection提供了获取预处理执行平台对象的方法:
PreparedStatement prepareStatement(String sql) 通过SQL语句获取预处理执行平台对象,给予的sql语句中,用户输入的值可以使用?替代,可以避免SQL注入问题
PreparedStatement提供了执行sql的方法
void setString(int parameterIndex, String x) 为指定编号的?赋值 字符串的值
setXxx(int index,Object value) 为指定编号的?赋值
int executeUpdate() 执行增删改语句
ResultSet executeQuery() 执行查询语句
5:处理结果
ResultSet:结果集类
boolean next()
getXXX(int col) 通过第几列获取该行该列的值 注意:从1开始
getXXX(String colName) 通过列名获取该行该列的值
6:释放资源
如果使用异常捕获,则释放资源应该在finally代码块中,需要释放的资源有:结果集、平台对象、连接对象
工具类:
方便我们获取连接的工具类
在静态代码块中注册驱动,为常用的数据库属性值赋值
提供获取连接对象的方法,该方法通常为静态方法
还可以在未属性赋值时使用配置文件properties
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2