当前位置:网站首页>JDBC_PreparedStatement预编译对象
JDBC_PreparedStatement预编译对象
2022-08-09 05:09:00 【Camellia——】
package com.lin.jdbc_04;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import com.lin.jdbc_01.JDBCUtils;
/*
*
* java.sql.PerparedStatement extends java.sql.Statement接口
*
* 好处:
* 1)通过连接对象创建PerparedStatement对象就已经sql进行预编译,提高sql的执行效率
* 2)有效的防止sql注入!
*
* 预编译对象
*
* JDBC
* 1)注册驱动
* 2)获取连接对象
* 3)准备sql: 里面要使用占位符号?
* 4)通过连接对象获取预编译对象并将sql发送到数据库进行预编译
* 5)通过预编译对象设置sql中的参数
* 6)
* 执行查询
* ResultSet executeQuery() 在perparedStatement对象中执行DQL语句
*
* 执行更新int executeUpdate() 在perparedStatement对象中执行DML,DDL语句
* 7)释放资源
* */
public class PreparedStatementDemo {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement stmt = null;
try {
// 注册驱动
// 获取连接
conn = JDBCUtils.getConnection();
// 准备sql
// 向mydb_01数据库中employee表中插入数据
String sql = "insert into employee(name,address,dept_id)values(?,?,?)";
// 通过连接对象创建预编译对象
// PreparedStatement prepareStatement(String sql)
// 将参数化的sql语句发送到数据库中进行预编译(编译一次),提供执行效率
stmt = conn.prepareStatement(sql);
// void setXXX(int paramentIndex,XXX value)
// 参数1:描述的当前?占位符第几个
// 参数2:当前占位符所在字段类型
// 设置参数
stmt.setString(1,"ll");
stmt.setString(2,"北京");
stmt.setInt(3,2);
// 执行更新:sql
int count=stmt.executeUpdate();
if(count>0) {
System.out.println("更新成功,影响了"+count+"行");
}else {
System.out.println("更新失败");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
JDBCUtils.close(stmt, conn);
}
}
}
边栏推荐
- PWM输出模块PCA9685
- 【HMS core】【Ads Kit】Huawei Advertising——Overseas applications are tested in China. Official advertisements cannot be displayed
- ddr系统检验
- [Harmony OS] [ArkUI] ets development graphics and animation drawing
- equals和==
- 【ITRA】2022年ITRA赛事注册流程 从0-1
- 软件测试的发展趋势
- STM32系列单片机使用心得
- Eureka-Server------单节和集群的搭建
- STM32之vl53l0x读取距离
猜你喜欢
随机推荐
力扣242-有效的字母异位词——哈希表法
剑指Offer-二维动态规划问题题目总结
【ManageEngine】网络性能监控工具
php将在线远程文件写入临时文件
软件测试的发展趋势
C进阶-C语言文件操作
could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarExcept
神经网络预测应力应变-单轴实验
Quantitative Genetics Heritability Calculation 1: Parent-Child Regression Method
剑指Offer-二叉树路径问题总结
【学习笔记】AGC044
【计算机网络-哈工大】---学习笔记(下)---(二)Web安全威胁、SSL\IPsec、虚拟专用网、防火墙
PWM输出模块PCA9685
aur安装报错一个或多个文件没有通过有效性检查!
说明高级语言、汇编语言、机器语言三者的区别,谈谈你对汇编语言的认识。
【Harmony OS】【ArkUI】ets开发 图形与动画绘制
【LeetCode】287. 寻找重复数
equals and ==
如何让Win11两个屏幕任务栏都显示时间?
Anonymous shared memory ashmem