Java_jdbc 基础笔记之四 数据库连接 (通用更新方法)
2024-08-26 09:44:13
/**
* 写一个通用的更新方法 包括 INSERT、 DELETE、UPDATE
* 使用工具类
* @param sql
*/
public void update(String sql){
Connection conn=null;
Statement statement=null;
try {
conn=JDBCTools.getConnection();
statement=conn.createStatement();
statement.executeUpdate(sql); } catch (Exception e) {
e.printStackTrace();
}finally{
JDBCTools.close(statement, conn);
} }
//jdbc工具类
package jdbc; import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties; public class JDBCTools { /**
* 操作JDBC的工具类,其中封装了一些工具方法 版本一;
*
* @author 杨波波
*/
/**
* 关闭Statement 和Connection
*/
public static void close(ResultSet rs, Statement statement, Connection conn) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
if (statement != null) {
try {
statement.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} } } public static void close(Statement statement, Connection conn) { if (statement != null) {
try {
statement.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} } } /**
* 1 获取连接的方法 通过读取配置文件从数据库服务器获取一个连接
*
* @return
* @throws Exception
*/
public static Connection getConnection() throws Exception {
// 1 准备连接数据库的4个字符串
String driverClass = null;
String urljdbc = null;
String user = null;
String password = null;
// 2 读取路径下的配置文件
InputStream is = JDBCTools.class.getClassLoader().getResourceAsStream(
"jdbc.properties");
Properties p = new Properties();
p.load(is);// 加载
driverClass = p.getProperty("driver");
urljdbc = p.getProperty("urljdbc");
user = p.getProperty("user");
password = p.getProperty("password"); // // 3 通过反射--->Driver
// Driver driver = (Driver) Class.forName(driverClass).newInstance();//
// 反射!!
// Properties info=new Properties();
// info.put("user",user);
// info.put("password", password);
// // 通过Driver的connect方法获取数据库的连接
// Connection cc=driver.connect(urljdbc, info);
// return cc; // 3 加载数据库的驱动程序(对应的Driver 实现类中有注册驱动的静态代码块)
Class.forName(driverClass);// 是的方法灵活
// 4 通过DriverManager的getConnection()方法获取数据库的连接。 Connection cc = DriverManager.getConnection(urljdbc, user, password);
return cc; } }
转: https://blog.csdn.net/YL1214012127/article/details/48214093
最新文章
- mysql 列类型
- DOM对象 与 jQuery对象 之间的相互装换
- MVC下载文件方式
- 关于header('location:url')的一些说明,php缓冲区
- js高级程序设计(三)基本概念
- HDU-4089 Activation (概率DP求概率)
- ZOJ3238 Water Ring(计算几何)
- Shell实现跳板机,为什么用跳板机
- app/desktop/view/index.html 显示授权标识
- SQL运维
- 算法 BF算法
- cmd &; tree &; bash
- hdu1754splaytree区间查询
- vs2017使用rdlc实现批量打印
- 缓存机制和Hibernate的缓存机制介绍
- hdu6438 Buy and Resell
- svnserve配置文件详析
- Javascript汉字拼音互转
- Java并发(二):Java内存模型
- Android 开发错误集锦
热门文章
- Python——模块合集
- 常用模块(collections模块,时间模块,random模块,os模块,sys模块,序列化模块,re模块,hashlib模块,configparser模块,logging模块)
- abp学习(三)——文档翻译一
- generator 和yeild
- DeferredResult使用方式和场景
- linux系统编程之信号(七)
- spring DefaultListableBeanFactory 概述
- C++处理异常
- 团队协作editconfig与eslint
- jquery中ajax跨域加载