java对数据库的封装

 import java.sql.*;
public class Conn {       //连接的封装
 
private Conn(){}
public static Connection getInstance(){
 Connection ct=null;
  try{
   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
   ct=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=heros","sa","123456");
  }catch(Exception e){
   e.printStackTrace();
  }
 
 return ct;
}
}

import java.sql.*;
public class DBclose {       //关闭数据库的封装
public static void close(Connection ct,PreparedStatement ps,ResultSet rs){
 if(rs!=null){
  try {
   rs.close();
  } catch (SQLException e) {
    e.printStackTrace();
  }
 }if(ps!=null){
  try {
   ps.close();
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }if(ct!=null){
  try {
   ct.close();
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }
 
}
public static void close(Connection ct,PreparedStatement ps){
 if(ps!=null){
  try {
   ps.close();
  } catch (SQLException e) {
    e.printStackTrace();
  }
 }if(ct!=null){
  try {
   ct.close();
  } catch (SQLException e) {
    e.printStackTrace();
  }
 }
 
}
}

}
package com.data;
import java.sql.*;
import java.util.Properties;
import java.io.*;
public class Conn {
	private String url;
	private String driver;
	private String user;
	private String password;
	private static Conn factory=null;
public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}
	public String getDriver() {
		return driver;
	}
	public void setDriver(String driver) {
		this.driver = driver;
	}
	public String getUser() {
		return user;
	}
	public void setUser(String user) {
		this.user = user;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
private Conn(){
	Properties p=new Properties();
	InputStream is=Thread.currentThread().getContextClassLoader().getResourceAsStream("jdbc");
	try {
		p.load(is);
	} catch (IOException e) {
		e.printStackTrace();
		System.out.println("加载配置文件出错");
	}
	this.driver=(String)p.getProperty("driver");
	this.url=(String)p.getProperty("url");
	this.user=(String)p.getProperty("user");
	this.password=(String)p.getProperty("password");
}
public static Connection getinstance(){
	Connection ct=null;
	if(factory==null){
		try{
			factory=new Conn();
		}catch(Exception e){
			System.out.println(e.getMessage());
			e.printStackTrace();
			return null;
		}
	}
	
		try {
			Class.forName(factory.getDriver());
			try {
				ct=DriverManager.getConnection(factory.getUrl(),factory.getUser(),factory.getPassword());
			} catch (SQLException e) {
			System.out.println("Failed to get connection :"+e.getMessage());
				e.printStackTrace();
			}
		} catch (ClassNotFoundException e) {
			System.out.println("No class"+factory.getDriver()+"found error");
			e.printStackTrace();
		}return ct;
		
	
}

}



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值