JDBC基础
来源:互联网 发布:淘宝二级词是什么 编辑:程序博客网 时间:2024/05/22 22:35
JDBC基础
(一)、
1、在使用JDBC之前应该先导入jar包:mysql-connector-java-5.1.5-bin.jar。
2、连接数据库需要四个参数:
驱动:如:com.mysql.jdbc.Driver(导入连接数据库驱动)。
数据库的路径:如:jdbc:mysql://localhost:3306/txt?characterEncoding=UTF-8(jdbc:mysql://本机IP:端口号/数据库名?传递编码方式)。
数据库账号:如:root(这里为本人数据库名)。
密码:(本人密码为空,个位可以根据自己的密码填写)。
3、通过Class.forName(驱动):导入驱动
4、通过Connection连接数据库,如:DriverManager.getConnection(数据库的路径,数据库的路径 ,数据库的路径).
5、通过Statement对SQL语句操作(这可能会有注入问题),如:conn.createStatement()(conn为Connection连接数据库后的对象)。
6、增删改一般使用executeUpdate()方法,返回受影响的行数st.executeUpdate(sql);(st为Statement的对象,sql可以是增删改的任意语句)。
7、判断executeUpdate()是否等于0,(等于0位没有操作成功)
8、查看使用st.executeQuery(sql)返回查询的值,返回的值为ResultSet型的,(所以后面关闭的时候先关ResultSet)(st为Statement的对象,sql可以是增删改的任意语句)
9、通过rs.next() 来查看下一个值是否为空为空则返回false,然后给user赋值,如:
while(rs.next()){
User user = new User();
user.setUserId(rs.getInt("userId"));
user.setUsername(rs.getString("username"));
user.setSex(rs.getInt("sex"));
user.setPassword(rs.getString("password"));
user.setFlag(rs.getInt("flag"));
}
10 、在使用完后需要关闭你打开的接口,按照先开后关的原则。
(二)、
1、之前提到注入问题,可以通过prepareStatement来解决,具体用法如: conn.prepareStatement(sql);(conn为Connection连接数据库后的对象,之所以这里要输操作语句是为了预编译节约了时间)
2、JDBC还有一个事务问题conn.setAutoCommit(false);表示手动开始事务,conn.commit();提交事务,conn.rollback();回滚事务
注:本文编写以Mysql为基础
- JDBC基础
- JDBC基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- JDBC基础
- JDBC基础
- JDBC ---- 基础
- JDBC 基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- jdbc基础
- JDBC基础
- JDBC基础
- JDBC基础
- Redis事务
- 利用递归求n的阶乘
- 第二章 OpenResty(Nginx+Lua)开发入门
- 架构师之路--视频业务介绍,离线服务架构和各种集群原理(1/2)
- 简单好玩的算法(二)
- JDBC基础
- CALayer与iOS动画 讲解及使用
- 7.3
- [杜教筛] 51Nod 1244: 莫比乌斯函数之和
- 学院网站的建设
- boost log库学习使用四(关于logger)
- 位操作-leetcode 231 Power of Two
- caffe框架特征提取的dll封装
- href="javascript:xxx(this);"和onclick="javascript:xxx(this);"的区别