1,JDBC连接mysql时需要用到的类:
Drivermanager 类:驱动管理类 Connection 接口:数据库连接接口
Statement 接口:执行sql语句的接口 Resultset 接口:查询的结果集对象 Preparedstatement 接口:可以传参,并执行sql语句,是statement的子接口,实际应用中比较常用
2,jdbc开发的步骤:
1>先导入mysql Driver 包
2>
public static void main(String[] args) {
try {
//1,加载驱动
Class.forName("com.mysql.jdbc.Driver");//这个也就是我导入mysql Driver包的原因
//2建立连接
Connection connection =
//本机:端口号/数据库名,用户名,密码
DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","123456");
//3创建sql语句
String sql="UPDATE student SET name='李' WHERE id=12";
//4获得执行对象,并执行
Statement createStatement = connection.createStatement();
createStatement.execute(sql);
//关闭资源( 关闭资源的原则,先开后关)
createStatement.close();
connection.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
以上就是jdbc的创建过程
请注意,执行查询使用的是executeQuery()方法,executeQuery()方法返回的是ResultSet,ResultSet封装了查询结果,我们称之为结果集。
增,删,改使用的executeUpdate()方法 ,可以通过返回值反映出操作是否成功 (该方法的返回值,是执行操作成功的数据条数)
3,由于在项目操作中需要经常对数据库进行操作,每次创建jdbc很麻烦,那么接下来就是对jdbc的封装,封装成自己的util包:
public class JDUtil {
// 封装jdbc
private static String url = "jdbc:mysql://localhost:3306/SSM";
// 本地 端口号 数据库
private static String user = "root";
private static String password = "123456";
private static Connection ct = null;
// 连接
public static Connection getConnection() {
try {
// 1加载驱动
Class.forName("com.mysql.jdbc.Driver");
// 2连接
ct = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
System.out.println("连接失败!!");
e.printStackTrace();
}
return ct;
}
// 关闭资源 每次关闭资源前都需要进行判断,是否有该资源
public static void closeAll(Connection ct, PreparedStatement ps, ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (ps != null) {
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (ct != null) {
try {
ct.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
以上就是jdbc的创建以及封装过程,为了防止出现中文乱码的情况,请在创建工程后,统一jsp,以及workspace中的编码格式,统一为utf-8