`
chenguanwei2008
  • 浏览: 121777 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

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对象了,如果我们要将项目移植,在更换了数据库的情况下,只需简单地

修改配置文件就可以了。

分享到:
评论

相关推荐

    Jsp笔记

    1 jdbc的任务 1用一个数据库建立连接 2向数据库发送SQL语句 3处理数据库返回的结果集 2 在jsp中使用数据库: jdbc使用数据库URL来给出数据库驱动程序,类似于通用URL 写法:连接SQL_servlet...

    中英文简历的写法,想写好简历就下吧。

    本资源提供的是"中英文简历的写法",意在帮助求职者打造专业且具有吸引力的简历。 首先,我们需要了解简历的基本构成。一份好的简历通常包含以下几个部分:个人信息、求职意向、教育背景、工作经验、项目经历、技能...

    2021-2022计算机二级等级考试试题及答案No.4230.docx

    - **知识点概述**:关系数据库管理系统能实现的专门关系运算包括选择、投影、连接等。 ### 15. 数据库中的数据联系 - **知识点概述**:在数据库中,不仅数据项之间存在联系,记录之间也存在联系。 ### 16. 表达式...

    JSTL下载很好的东西哦

    `<sql:query>`和`<sql:update>`等标签使得开发者可以在JSP页面中直接进行数据库操作,而无需编写复杂的Java数据库连接代码,大大简化了数据操作的复杂度。 #### XML标签库(XML Tag Library) 随着XML在Web服务和...

    dangdang和smartstruts2.rar

    <%@include file="../common/head1.jsp"%>相对路径的写法 ;" onclick="document.getElementById('img1').src='image.do?' + (new Date().getTime());">换一张试试看 type="submit" value="注 册" onclick=...

    2021-2022计算机二级等级考试试题及答案No.16859.docx

    1. 使用 `SHOW GRANTS` 命令显示用户权限时,结果为 `USAGE` 表示该用户没有特定的权限,即除了连接数据库外,对数据库对象没有操作权限,正确答案是 C. 无权限。 2. 变量命名规则中,`a2(2)` 不合法,因为变量名不...

    2021-2022计算机二级等级考试试题及答案No.11084.docx

    选项C的写法是错误的,因为字符串常量不能直接赋值给字符数组。 3. **因特网概念**:因特网是国际互联网(Internet)的简称,是一个全球性的广域网。 4. **数据库系统与文件系统对比**:文件系统的主要缺陷在于数据...

    IT java 面试题库

    - 建立数据库连接。 - 创建Statement或PreparedStatement对象。 - 执行SQL语句。 - 处理结果集。 - 关闭连接。 2. **简述Statement和PreparedStatement之间的区别** - `Statement`用于执行简单的SQL语句,不...

    Java开发技术大全 PDF

    - **JDBC**:Java Database Connectivity,用于连接和操作数据库。 9. **Java 8及以后的新特性** - **Lambda表达式**:简化匿名函数的写法,支持函数式编程。 - **Stream API**:处理集合的新方式,提供了一系列...

Global site tag (gtag.js) - Google Analytics