在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对象了,如果我们要将项目移植,在更换了数据库的情况下,只需简单地
修改配置文件就可以了。
分享到:
相关推荐
1 jdbc的任务 1用一个数据库建立连接 2向数据库发送SQL语句 3处理数据库返回的结果集 2 在jsp中使用数据库: jdbc使用数据库URL来给出数据库驱动程序,类似于通用URL 写法:连接SQL_servlet...
本资源提供的是"中英文简历的写法",意在帮助求职者打造专业且具有吸引力的简历。 首先,我们需要了解简历的基本构成。一份好的简历通常包含以下几个部分:个人信息、求职意向、教育背景、工作经验、项目经历、技能...
- **知识点概述**:关系数据库管理系统能实现的专门关系运算包括选择、投影、连接等。 ### 15. 数据库中的数据联系 - **知识点概述**:在数据库中,不仅数据项之间存在联系,记录之间也存在联系。 ### 16. 表达式...
`<sql:query>`和`<sql:update>`等标签使得开发者可以在JSP页面中直接进行数据库操作,而无需编写复杂的Java数据库连接代码,大大简化了数据操作的复杂度。 #### XML标签库(XML Tag Library) 随着XML在Web服务和...
<%@include file="../common/head1.jsp"%>相对路径的写法 ;" onclick="document.getElementById('img1').src='image.do?' + (new Date().getTime());">换一张试试看 type="submit" value="注 册" onclick=...
1. 使用 `SHOW GRANTS` 命令显示用户权限时,结果为 `USAGE` 表示该用户没有特定的权限,即除了连接数据库外,对数据库对象没有操作权限,正确答案是 C. 无权限。 2. 变量命名规则中,`a2(2)` 不合法,因为变量名不...
选项C的写法是错误的,因为字符串常量不能直接赋值给字符数组。 3. **因特网概念**:因特网是国际互联网(Internet)的简称,是一个全球性的广域网。 4. **数据库系统与文件系统对比**:文件系统的主要缺陷在于数据...
- 建立数据库连接。 - 创建Statement或PreparedStatement对象。 - 执行SQL语句。 - 处理结果集。 - 关闭连接。 2. **简述Statement和PreparedStatement之间的区别** - `Statement`用于执行简单的SQL语句,不...
- **JDBC**:Java Database Connectivity,用于连接和操作数据库。 9. **Java 8及以后的新特性** - **Lambda表达式**:简化匿名函数的写法,支持函数式编程。 - **Stream API**:处理集合的新方式,提供了一系列...