首页 技术 正文
技术 2022年11月8日
0 收藏 861 点赞 1,349 浏览 2211 个字

  为了更好的了解jdbc,最近查阅了前期学习的资料,整理归纳了一下,整理出来了一套jdbc常用的工具类。之所以在这里撰文,一来可以和大家共享技术的魅力,二来可以方便以后的查阅方便。以下是一个jdbc的优化过的工具类。

 1 package com.java.lish.utils;
2 import java.sql.Connection;
3 import java.sql.DriverManager;
4 import java.sql.ResultSet;
5 import java.sql.SQLException;
6 import java.sql.Statement;
7 import java.util.ResourceBundle;
8
9 /**
10 *
11 * 工具类 可以不依赖具体的数据库的jar 进一步优化 工具类 配置文件 txt xml properties key=value src 下添加配置文件
12 * jdbc.properties Properties p = new Properties(); p.load(inputstream)
13 *
14 * 一行代码读取properties 配置文件信息 ResourceBundle 快速读取 properties 文件信息
15 */
16 public class JDBCUtils {
17 static String url;
18 static String username;
19 static String password;
20 static {
21 // Class.forName("com.mysql.jdbc.Driver");// 实现类的全路径 包名.类名
22 try {
23 Class.forName(ResourceBundle.getBundle("jdbc").getString(
24 "driverClass"));
25 url = ResourceBundle.getBundle("jdbc").getString("url");
26 username = ResourceBundle.getBundle("jdbc").getString("username");
27 password = ResourceBundle.getBundle("jdbc").getString("password");
28 } catch (Exception e) {
29 e.printStackTrace();
30 }// 实现类的全路径
31 }
32
33 // 获取连接 Connection
34 public static Connection getConnection() {
35 try {
36 Connection con = DriverManager.getConnection(url, username,
37 password);
38 return con;
39 } catch (Exception e) {
40 e.printStackTrace();
41 throw new RuntimeException("获取连接失败");
42 }
43 }
44
45 // 关闭资源 st con
46 public static void close(Connection con) {
47 if (con != null) {
48 try {
49 con.close();
50 } catch (SQLException e) {
51 e.printStackTrace();
52 }
53 }
54 }
55
56 // 关闭2个资源
57 public static void close(Connection con, Statement st) {
58 if (st != null) {
59 try {
60 st.close();
61 } catch (SQLException e) {
62 e.printStackTrace();
63 }
64 }
65 close(con);
66
67 }
68
69 // ResultSet 存放数据库查询结果集
70 public static void close(Connection con, Statement st, ResultSet rs) {
71 if (rs != null) {
72 try {
73 rs.close();
74 } catch (SQLException e) {
75 e.printStackTrace();
76 }
77 }
78 close(con, st);
79 }
80
81 }

  首先说明的是以上代码是一个完整的工具包资源,需要配合配置文件(使用myEclipse,放在src文件下)一起使用,当然也要把驱动包放到lib目录下,然后就可以很爽的使用该工具类获取数据连接了。配置文件如下:

  jdbc.properties 这个名字不要写错,是和上面工具类对应的,因为工具类要在配置文件读取数据。这里简单配置了mysql和oracle两个,也可以配置更多。

username=root
password=root
url=jdbc\:mysql\://localhost\:3306/usermanage
driverClass=com.mysql.jdbc.Driver#connection oracle
#username=system
#password=orcl
#url=jdbc:oracle:thin:@localhost:1521:xe
#driverClass=oracle.jdbc.driver.OracleDriver#db2

当然这只是简单的一种方式,并没有借助于任何第三方jar包和框架,非常简练,也适合初学习者使用。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,494
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,295