java中封装JDBC工具类的实例分析

2025-05-29 0 40

对于能够重复使用的代码,我们最好的方法是对它们进行封装,然后在下次使用的使用就可以直接调用了。本篇所要提到的是JDBC工具类,相信大家在学习java时都接触过。那么对于封装它的方法,本篇先对工具类进行简单的说明,列出有关的封装步骤,然后带来相关的实例。

1、说明

在java开发过程中,代码中时常用到一些Scanner、Random一样的类,他们是键盘录入,生成随机数的类,像一个工具一样,在java中被称为工具类

2、步骤

封装JDBC工具类

加入获取数据库连接对象的方法

加入释放连接的方法

3、实例

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67
package com.qianfeng.util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

/**

* JDBC工具类

* 有获取连接的方法

* @author dushine

*/

public class JDBCUtil {

/**

* 获取数据库连接的方法

* @return Connection conn

* @throws SQLException

*/

public static Connection getConnection() throws SQLException {

String url = "jdbc:mysql://localhost:3306/class?useSSL=false";

String user = "root";

String password = "root";

Connection conn = DriverManager.getConnection(url,user,password);

return conn;

}

/**

* 释放连接的方法

* @param conn

* @throws SQLException

*/

public static void releaseSourse(Connection conn) throws SQLException {

if (conn != null) {

conn.close();

}

}

/**

* 释放连接的方法

* @param conn 数据库连接对象

* @param stmt 执行SQL语句的对象

* @throws SQLException

*/

public static void releaseSourse(Connection conn,Statement stmt) throws SQLException {

if (stmt != null) {

stmt.close();

}

if (conn != null) {

conn.close();

}

}

/**

* 释放连接的方法

* @param conn 数据库连接对象

* @param stmt 执行SQL语句的对象

* @param resultSet 执行SQL语句的返回的结果集

* @throws SQLException

*/

public static void releaseSourse(Connection conn,Statement stmt,ResultSet resultSet) throws SQLException {

if (resultSet != null) {

resultSet.close();

}

if (stmt != null) {

stmt.close();

}

if (conn != null) {

conn.close();

}

}

}

实例扩展:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80
public class JDBCUtil {

//连接对象

private Connection connection = null;

//数据库操作对象

private PreparedStatement ps = null;

//数据库连接地址

private static String url = "jdbc:mysql://localhost:3306/";

//用户名

private static String user = "root";

//密码

private static String password = "123456";

//静态代码块 注册驱动

//类加载的时候,只执行一次

static{

try {

Class.forName("com.mysql.jdbc.Driver");

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

//获取连接对象

public Connection getConnection(){

//Connection conn = null;

try {

connection = DriverManager.getConnection(url,user,password);

} catch (SQLException e) {

e.printStackTrace();

System.out.println("数据库连接失败....");

}

System.out.println("数据库连接成功...");

return connection;

}

//获取数据库操作对象

public PreparedStatement createPreparedStatement(String sql){

connection = getConnection();

try {

ps = connection.prepareStatement(sql);

} catch (SQLException e) {

e.printStackTrace();

}

return ps;

}

//释放资源

public void close(){

//释放连接对象

if (connection != null) {

try {

connection.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

//释放数据库操作对象

if (ps != null) {

try {

ps.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

System.out.println("释放资源成功...");

}

//方法的重载

public void close(ResultSet reuslt){

// 调用释放资源的方法

close();

// 释放查询结果集对象

if (reuslt != null) {

try {

reuslt.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

到此这篇关于java中封装JDBC工具类的实例分析的文章就介绍到这了,更多相关java中如何封装JDBC工具类内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://www.py.cn/java/jiaocheng/27146.html

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java中封装JDBC工具类的实例分析 https://www.kuaiidc.com/108597.html

相关文章

发表评论
暂无评论