用Java实现数据库应用系统

王朝java/jsp·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

我们在做信息系统的时候,都要访问数据库,我最近接手一个项目,项目组决定使用Java编写,我负责数据层的设计和编码,为了提高代码的重用性和提高项目的开发效率。我们开发了一个通用的数据库连接和完成基本操作的类库,个人认为这个类在做MIS系统时还是有一定的价值,所以总结出来,介绍给大家。

连接工厂,实现了DataSource接口

package skydev.modules.data;

import java.sql.*;

import javax.sql.DataSource;

import java.io.PrintWriter;

public class ConnectionFactory implements DataSource {

private String userName;

private String passWord;

private String driverName;

private String url;

private java.sql.Connection connection;

/**

* 根据设置的连接参数创建一个新的连接实例

* @return

*/

private Connection getNewConnection() {

try {

this.connection.close(); //试图关闭连接

}

finally {

this.connection = null; //释放连接

try {

Class.forName(this.driverName); //加载驱动程序

//DriverManager.registerDriver(driver);

try {

this.connection = DriverManager.getConnection(this.url, this.userName,

this.password);

}

catch (SQLException e) {

throw e;

}

}

finally {

return this.connection; //返回新建立的连接

}

}

}

public String getUserName() {

return userName;

}

public void setUserName(String userName) {

this.userName = userName;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String getDriverName() {

return driverName;

}

public void setDriverName(String driverName) {

this.driverName = driverName;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

public java.sql.Connection getConnection() {

if (connection != null) {

try {

if (connection.isClosed()) {

connection = null;

getNewConnection();

}

}

catch (SQLException ex) {

}

}

if (connection == null) { //没有设置连接则创建一个连接

getNewConnection();

}

return connection;

}

public Connection getConnection(String userName, String password) throws

SQLException {

this.setUserName(userName);

this.setPassword(password);

return getConnection();

}

public PrintWriter getLogWriter() {

return null;

}

public void setLogWriter(PrintWriter printWriter) {

}

public void setLoginTimeout(int int0) {

}

public int getLoginTimeout() {

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航