JSP连接数据库的通用写法

在web项目的src目录下建立属性文件db.properties。在这里面配置连接数据库的基本信息:

 

DRIVERS=com.mysql.jdbc.Driver
URL=jdbc:mysql://localhost:3306/数据库名
USER=root
PASSWORD=密码

 

 再新建一个工具类,用于获取Connection对象,在这个工具类中,我们需要从db.properties属性文件读取连接数据库的基本信息,代码如下:

 

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;

public class DBUtils {
	private static final String OPTION_FILE_NAME = "db"; //属性文件名称

	private static String drivers;

	private static String url;

	private static String user;

	private static String password;
	
	static {
		ResourceBundle res = ResourceBundle.getBundle(OPTION_FILE_NAME);
		drivers = res.getString("DRIVERS").trim();
		url = res.getString("URL").trim();
		user = res.getString("USER").trim();
		password = res.getString("PASSWORD").trim();
	}

	public static Connection getConnection() throws SQLException {
		Connection conn = null;
		try {
			Class.forName(drivers).newInstance();
			conn = DriverManager.getConnection(url, user, password);
		} catch (Exception e) {
			e.printStackTrace();
		}
		if (conn == null) {
			throw new SQLException("DBUtils: Cannot get connection.");
		}
		return conn;
	}

	public static void close(Connection conn) {
		if (conn == null)
			return;
		try {
			conn.close();
		} catch (SQLException e) {
			System.out.println("DBUtils: Cannot close connection.");
		}
	}

	public static void close(Statement stmt) {
		try {
			if (stmt != null) {
				stmt.close();
			}
		} catch (SQLException e) {
			System.out.println("DBUtils: Cannot close statement.");
		}

	}

	public static void close(ResultSet rs) {
		try {
			if (rs != null) {
				rs.close();
			}
		} catch (SQLException e) {
			System.out.println("DBUtils: Cannot close resultset.");
		}
	}

}

 

 最后,我们只需在JSP页面中引入这个类,并调用getConnection() 方法就可以获得Connection对象了,如果我们要将项目移植,在更换了数据库的情况下,只需简单地

修改配置文件就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值