Java-JDBCUtil工具类
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
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;
import org.apache.log4j.Logger;
public class JdbcUtil {
public static Logger logger = Logger.getLogger(JdbcUtil.class.getName());
// 创建静态全局变量
// static Connection conn;
// static Statement statement;
public static Connection getConnection() {
String jdbc_url = null;
//String jdbc_db = null;
String jdbc_driver = null;
String jdbc_name = null;
String jdbc_password = null;
try {
Properties prop = new Properties();
// InputStream inStream =
// JdbcUtil.class.getResourceAsStream("config/database.properties");
InputStream inStream = new FileInputStream(new File("config/database.properties"));
prop.load(inStream);
jdbc_url = prop.getProperty("jdbc_url");
//jdbc_db = prop.getProperty("jdbc_db");
jdbc_driver = prop.getProperty("jdbc_driver");
jdbc_name = prop.getProperty("jdbc_name");
jdbc_password = prop.getProperty("jdbc_password");
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
Connection con = null; // 创建用于连接数据库的Connection对象
try {
Class.forName(jdbc_driver);// 加载Mysql数据驱动
// con = DriverManager.getConnection(jdbc_url + jdbc_db, jdbc_name,
// jdbc_password);// 创建数据连接
con = DriverManager.getConnection(jdbc_url + "?user=" + jdbc_name + "&password=" + jdbc_password + "&useUnicode=true&characterEncoding=utf-8");// 创建数据连接
} catch (Exception e) {
System.out.println("数据库连接失败" + e.getMessage());
}
return con; // 返回所建立的数据库连接
}
/* 插入数据记录,并输出插入的数据记录数 */
public static void insert(String sql) {
Connection conn = getConnection(); // 首先要获取连接,即连接到数据库
try {
logger.info("jdbc插入数据开始");
Statement statement = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象
int count = statement.executeUpdate(sql); // 执行插入操作的sql语句,并返回插入数据的个数
System.out.println("更新 " + count + " 条数据"); // 输出插入操作的处理结果
statement.close();
conn.close(); // 关闭数据库连接
logger.info("jdbc插入数据结束");
} catch (SQLException e) {
System.out.println("插入数据失败" + e.getMessage());
}
}
/* 更新符合要求的记录,并返回更新的记录数目 */
public static void update(String sql) {
Connection conn = getConnection(); // 同样先要获取连接,即连接到数据库
try {
// logger.info("jdbc更新数据开始");
// String sql =
// "update staff set wage='2200' where name = 'lucy'";// 更新数据的sql语句
Statement statement = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象,st属局部变量
int count = statement.executeUpdate(sql);// 执行更新操作的sql语句,返回更新数据的个数
System.out.println("更新 " + count + " 条数据"); // 输出更新操作的处理结果
statement.close();
conn.close(); // 关闭数据库连接
// logger.info("jdbc更新数据结束");
} catch (SQLException e) {
System.out.println("更新数据失败");
}
}
/* 查询数据库,输出符合要求的记录的情况 */
public static String query(String sql,String queryContent) {
Connection conn = getConnection(); // 同样先要获取连接,即连接到数据库
String queryContentTemp = "";
try {
Statement statement = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象,st属局部变量
ResultSet rs = statement.executeQuery(sql); // 执行sql查询语句,返回查询数据的结果集
while (rs.next()) { // 判断是否还有下一个数据
// 根据字段名获取相应的值
queryContentTemp = rs.getString(queryContent);
}
rs.close();
statement.close();
conn.close(); // 关闭数据库连接
} catch (SQLException e) {
e.printStackTrace();
}
return queryContentTemp;
}
/* 删除符合要求的记录,输出情况 */
public static void delete(String sql) {
Connection conn = getConnection(); // 同样先要获取连接,即连接到数据库
try {
logger.info("jdbc删除数据开始");
// String sql = "delete from staff where name = 'lili'";//
// 删除数据的sql语句
Statement statement = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象,st属局部变量
int count = statement.executeUpdate(sql);// 执行sql删除语句,返回删除数据的数量
System.out.println("agent表中删除了【 " + count + " 】条数据。"); // 输出删除操作的处理结果
statement.close();
conn.close(); // 关闭数据库连接
logger.info("jdbc删除数据结束");
} catch (SQLException e) {
System.out.println("删除数据失败");
}
}
}
Java-JDBCUtil工具类的更多相关文章
- Java Properties工具类详解
1.Java Properties工具类位于java.util.Properties,该工具类的使用极其简单方便.首先该类是继承自 Hashtable<Object,Object> 这就奠 ...
- Java json工具类,jackson工具类,ObjectMapper工具类
Java json工具类,jackson工具类,ObjectMapper工具类 >>>>>>>>>>>>>>> ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java并发工具类 - CountDownLatch
Java并发工具类 - CountDownLatch 1.简介 CountDownLatch是Java1.5之后引入的Java并发工具类,放在java.util.concurrent包下面 http: ...
- MinerUtil.java 爬虫工具类
MinerUtil.java 爬虫工具类 package com.iteye.injavawetrust.miner; import java.io.File; import java.io.File ...
- MinerDB.java 数据库工具类
MinerDB.java 数据库工具类 package com.iteye.injavawetrust.miner; import java.sql.Connection; import java.s ...
- 小记Java时间工具类
小记Java时间工具类 废话不多说,这里主要记录以下几个工具 两个时间只差(Data) 获取时间的格式 格式化时间 返回String 两个时间只差(String) 获取两个时间之间的日期.月份.年份 ...
- Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie
Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...
- UrlUtils工具类,Java URL工具类,Java URL链接工具类
UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...
- java日期工具类DateUtil-续一
上篇文章中,我为大家分享了下DateUtil第一版源码,但就如同文章中所说,我发现了还存在不完善的地方,所以我又做了优化和扩展. 更新日志: 1.修正当字符串日期风格为MM-dd或yyyy-MM时,若 ...
随机推荐
- mysql --explain+slowlog
一.EXPALIN 在SQL语句之前加上EXPLAIN关键字就可以获取这条SQL语句执行的计划 那么返回的这些字段是什么呢? 我们先关心一下比较重要的几个字段: 1. select_type 查询类型 ...
- mongodb 批量替换内容的语句
// 注意上面的集合要和下面的集合名称相同 db.rand_web_test.find( { 'content': /^.*要替换的字符串.*$/ } ).forEach( function (ite ...
- python项目内import其他内部package的模块的正确方法
转载 :https://blog.csdn.net/u011089523/article/details/52931844 本文主要介绍如何在一个Python项目中,优雅的实现项目内各个package ...
- docker-Overlay原生网络
节点1/键值存储:192.168.50.130 :192.168.50.131 1.下载Consul二进制包并启动 wget https://releases.hashicorp.com/consul ...
- nginx + uwsgi 部署django项目
因项目需求,需要部署django项目,这里是基础的nginx配合uwsgi部署django,后续会采用docker部署的方式 环境: centos7 python3.5.4 django2.1.4 u ...
- layer插件loading快速应用示例
1.页面引用<link rel="stylesheet" href="../Js/layer/skin/layer.css" /><scri ...
- 【题解】codevs 3044 矩形面积合并
传送门 3044 矩形面积求并 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 输入n个矩形,求他们总共占地面积(也就是求一下 ...
- tensorboardX使用中 AttributeError: 'function' object has no attribute 'graph'
最近在使用tensorboardX可视化网络结构,因为tensorboardX并非pytorch原生的可视化工具,所以版本之间并不兼容 在使用的过程中会遇到,AttributeError: 'func ...
- plist文件的归档,解档
plist文件 plist的根Type只能是字典(NSDictionary)或者是数组(NSArray)所以归档时我们只能将数组或字典保存到plist文件中,但是NSString也能通过归档保存到pl ...
- mysql 添加远程管理用户
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; 这一条是添加全权限的用户,用户名和密码 ...