文章目录
0.前言
Java web项目–JDBC连接数据库的七个步骤
1. 下载jar包并导入jar包 至 WebRoot - WEB-INF - LIB路径下
https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.zip //可下载地址
2. import导包
import com.mysql.jdbc.Driver;//数据库厂商提供的
import java.sql.*;
3. 注册驱动
Class.forName(“com.mysql.jdbc.Driver”);
4. 得到连接
Connection conn; //用来得到连接
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/news, “root”,“123456”);
news–需要连接的数据库名
root–本地数据库的用户名
123456–本地数据库的密码
5. 得到Statement
Statement st; //用来执行SQL语句
st = conn.createStatement();//生成Statement
st.executeUpdate(sql) //用来处理数据库 “增删改” 的sql语句
st.executeQuery(sql) //用来处理数据库 “查询” 的sql语句
6. 如果有处理结果集 调用方法处理
ResultSet rs; //用来处理返回的结果(集)
rs=st.executeQuery(sql);
while(rs.next()){ System.out.println(rs.getInt(1)+“\t”+rs.getString(2)+“\t”+rs.getString(3));
//输出的数据是数据库表的信息,下标从1开始
//所以输出的数据类型需要根据数据库里表的结构确定,并需要一一对应
}
7. 不用的时候关闭连接
public void close(){
if(rs!=null)
try {
rs.close();
if(st!=null)
st.close();
if(conn!=null)
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
具体代码 及测试
package com.hk.db;
import com.mysql.jdbc.Driver;//数据库厂商提供的
import java.sql.*;
/**
* JDBC入门
* JDBC连接数据库的七个步骤
* 1.导入jar包 至 WebRoot - WEB-INF - LIB下
* 2.import导包
* 3.注册驱动
* 4.得到连接
* 5.得到Statement
* 6.如果有处理结果集 调用方法处理
* 6.1 如果是增加 修改 删除(使用 st.executeUpdate(sql) 方法)
* 6.2 如果是查询(使用 st.executeQuery(sql)方法)
* 7.不用的时候关闭连接
* @author Administrator
*/
public class DBConnection {
Connection conn; //用来得到连接
Statement st; //用来执行SQL语句
ResultSet rs; //用来处理返回的结果
static{
//3.注册驱动
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("注册驱动成功");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("注册驱动失败"+e.getMessage());
//e.getMessage() 错误提示
e.printStackTrace();
}
}
//4.得到连接
public Connection getConn(){
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/news?useUnicode=true&characterEncoding=utf8", "root","123456");
System.out.println("连接成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("连接失败"+e.getMessage());
e.printStackTrace();
}
return conn;
}
//返回结果集
public ResultSet select(String sql){
try {
st = conn.createStatement();
rs=st.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("发生了异常"+e.getMessage());
e.printStackTrace();
}
return rs;
}
public void close(){
if(rs!=null)
try {
rs.close();
if(st!=null)
st.close();
if(conn!=null)
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 主函数里测试代码是否正确
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
DBConnection dbconn =new DBConnection();
Connection conn=dbconn.getConn();
//5.生成Statement
try {
String sql ="select * from users";
dbconn.st=conn.createStatement();
//6.如果有处理结果集
dbconn.rs=dbconn.st.executeQuery(sql);
//处理结果集
while(dbconn.rs.next()){
System.out.println(dbconn.rs.getInt(1)+"\t"+dbconn.rs.getString(2)+"\t"+
dbconn.rs.getString(3));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("发生了异常"+e.getMessage());
e.printStackTrace();
}finally{
dbconn.close();
}
}
}
小的知识点
//java三种注释方式
// 一.单行注释
/* 二.多行注释*/
/**
* 三.文档注释
*/
如果你觉得这篇文章对你有所启发的话,期待你的点赞、收藏和打赏,对我创作的支持!!!