1.package com.jdbc.conn.db;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;
public class DbConnInfo {
// 定义数据库驱动,地址,用户名,密码等连接变量
private static String
driver;
private static String
url;
private static String
user;
private static String
pwd;
// 获得数据库连接
public static Connection getConnection(){
return DbConnLoad.getConnection(driver, url, user, pwd);
}
//关闭连接
public static void close(Connection conn){
DbConnLoad.close(conn);
}
// 关闭语句
public static void close(Statement stmt){
DbConnLoad.close(stmt);
}
// 关闭结果集
public static void close(ResultSet rs){
DbConnLoad.close(rs);
}
// 用静态模块给连接变量赋值
static{
// 方法1,properties对象直接调用方法,取默认值
Properties prop = new Properties();
// 方法2,Properties对象通过流加载外部文件--------------------------
// 方法2.1 InputStream is = DbConnInfo.class.getResourceAsStream("
InfoConnection.properties"); //该properties文件在工程的classpath下
// 方法2.2
File f = new File("InfoConnection.properties");
try {
FileInputStream is = new FileInputStream(f);
prop.load(is);
driver = prop.getProperty("info.driver", "默认驱动");
url = prop.getProperty("info.url", "默认地址");
user = prop.getProperty("info.user", "默认用户名");
pwd = prop.getProperty("info.pwd", "默认密码");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
2.0
package com.jdbc.conn.db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DbConnLoad {
/**
* 获取数据库链接
* @param driver 驱动类名
* @param url 数据库链接URL
* @param user 用户名
* @param pwd 密码
* @return 如果成功 返回数据库链接,否则返回null.
*/
public static Connection getConnection(String driver, String url, String user, String pwd){
Connection conn = null;
try {
Class.forName(driver);
DriverManager.setLoginTimeout(40); //40秒连不上数据库则放弃
conn = DriverManager.getConnection(url, user, pwd);
conn.setAutoCommit(false);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
conn = null;
}
return conn;
}
/**
* 关闭数据库连接
*/
public static void close(Connection conn){
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 关闭语句
* @param st
*/
public static void close(Statement st){
if(st != null){
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 关闭结果集
* @param rs
*/
public static void close(ResultSet rs){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
3.0
package com.jdbc.conn.db;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DbConnTest {
public static void main(String args[])
{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
String sql = "SELECT * FROM DIM_USER";
conn = DbConnInfo.getConnection();
try {
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
while(rs.next())
{
System.out.println(rs.getString(2));
}
// 在这加上显得更安全,当然不关也可以,因为finally里面也关了
// System.out.println(conn.isClosed());
rs.close();
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
try {
conn.rollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
finally{
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(stmt != null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
// 也可以直接调用方法关,和直接关 效果上是一样的
DbConnInfo.close(conn);
try {
System.out.println(conn.isClosed());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
分享到:
相关推荐
jdbc连接数据库 jdbc连接数据库 jdbc连接数据库 jdbc连接数据库 jdbc连接数据库
JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试JDBC连接数据库测试...
JAVA-JDBC连接数据库(查询_添加_修改_删除)
jdbc连接数据库方法大全,提供了各种jdbc连接数据库的方法,让你明了哪种方法更高效
JDBC连接数据库步骤及代码,不适合初学者
jdbc连接数据库的步骤,适合初学者,网上都有,但是可以下载去看看
JDBC连接数据库代码大全,有各种连接数据库的方法。
各种数据库的连接文档JDBC连接数据库经验总结
jdbc java 数据库 连接数据库 步骤
Jdbc连接数据库的方法 附上一个简单例子 详细说明
里面详细记录了JDBC连接数据库方法的文档,并附有示例
选课序号:36 选课序号:36 大连海事大学 数据库原理课程实验报告 (2010-2011学年第二学期) 实验八 JDBC连接数据库 班 级: 智能一班 学 号: ********** 姓 名: 徐维坚 指导教师: *** 成 绩: 2012年 6月 13日 ...
java实例jdbc连接数据库大全.doc
这是我总结的jdbc连接数据库事务工厂模式的例子在项目中经常用,很不错的。
使用java,jdbc连接数据库和Java swing图形化界面完成一个商品管理系统.zip 大学生课程设计 基于Java的课程设计 自己大二写的课程设计
JDBC连接数据库工具类 JDBC 连接数据库 ORACLE SQLSERVER MYSQL ORACLE 已测 OK 欢迎大家反馈 我的微博是: http://weibo.com/namenode
JDBC连接数据库及增删查改基本步骤,仅供Java新手参考
常用的jdbc连接数据库架包jar,包括oracle DB2 SqlServer mysql等
JDBC连接数据库JDBC连接数据库