使用JDBC的基本步骤
- 加载驱动
Class.forName(“com.mysql.cj.jdbc.Driver”); - 建立连接
conn=DriverManager.getConnection(“jdbc:mysql://localhost:3306/student1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true&user=root&pwd=root”);
student1是数据库名,?后面是参数,只要改下数据库名和密码;
也可以用下面的格式
参数一: 协议 + 访问的数据库 , 参数二: 用户名 , 参数三: 密码。
conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/student1”, “root”, “root”);
-
创建statement
statement st = conn.createStatement();
-
执行sql ,得到ResultSet
//执行查询 , 得到结果集
String sql = “select * from t_user”;
ResultSet rs = st.executeQuery(sql); -
遍历结果集
//遍历查询每一条记录
while(rs.next()){
int id = rs.getInt(“id”);
String name = rs.getString(“name”);
int age = rs.getInt(“age”);
System.out.println(“id=”+id + “===name=”+name+"==age="+age);}
-
释放资源
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
然后释放st,conn的资源,先创建的后释放;
遍历
public static void main(String[] args) {
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
try {
//加在这里插入代码片载驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//建立连接
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true","root","123123");
String sql="select id,user_name,age from tbl_user_info where id>?";
ps=conn.prepareStatement(sql);
//建立查询,返回结果集
ps.setObject(1,2);
rs=ps.executeQuery();
while(rs.next()){
System.out.println(rs.getInt(1)+"---"+rs.getString(2)+"---"+rs.getInt(3));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}finally {
try {
if(rs!=null)
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(ps!=null)
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(conn!=null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
insert
// 1. 获取连接对象
conn = JDBCUtil.getConn();
// 2. 根据连接对象,得到statement
st = conn.createStatement();
//3. 执行添加
String sql = "insert into t_stu values(null , 'aobama' , 59)";
//影响的行数, ,如果大于0 表明操作成功。 否则失败
int result = st.executeUpdate(sql);
if(result >0 ){
System.out.println("添加成功");
}else{
System.out.println("添加失败");
}