sql注入:
通过输入一些特殊的字符,使得Sql查询得到不应该查询到的数据
JDBC是什么?
Java Database Connectivity:Java访问数据库的解决方案
JDBC定义了一套标准接口,即访问数据库的标准API,不同数据库厂商根据各自数据库特点去实现这些接口
JDBC希望用相同的访问方式,访问不同的数据库。让具体的数据库操作与数据库厂商实现无关,从而实现各个数据库之间的来回切换。
JDBC相关类及接口
驱动管理类 :Drivermanager
连接接口:Connection
语句对象接口:Statement
结果集接口:ResultSet
用法举例:
public static void main(String[] args) throws ClassNotFoundException, SQLException {
// 1加载驱动
Class.forName("com.mysql.cj.jdbc.Driver"); // 第一步 加载驱动
// 2 获取连接
String url="jdbc:mysql://localhost:3306/javaee2309?serverTimezone=GMT" ;
String user="root";
String pwd= "123456";
Connection conn = DriverManager.getConnection(url, user, pwd);
//3 sql语句
String sql="insert into student (sname,birthday,ssex,classid) values('迪迦', '2000-10-02','男',2)";
String sql1="insert into student (sname,birthday,ssex,classid) values('花花', '2023-05-20','男',1)";
//3.1 sql语句执行对象
Statement statm = conn.createStatement(); //获取执行对象
int executeUpdate = statm.executeUpdate(sql);
int executeUpdate1 = statm.executeUpdate(sql1);// 返回影响行数
if(executeUpdate1>0) {
System.out.println("用户添加成功");
}else {
System.out.println("用户添加失败");
}
// 释放资源
statm.close();
conn.close();
}
JDBC工作原理
1.Class.forName() 加载驱动
2.DriverManager获取Connection连接
3.创建Statement执行SQL语句
4.返回ResultSet 查询结果
5.释放资源