|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你总不能说你写框架吧,那无疑会加大工作量,现在大多企业采取的是折中的办法,就是改别人写好的框架,可要改框架,前提是你对这个框架足够的了解,这就更难了。
我们在做信息体系的时分,都要会见数据库,我比来接办一个项目,项目组决意利用Java编写,我卖力数据层的计划和编码,为了进步代码的重用性和进步项目标开辟效力。我们开辟了一个通用的数据库毗连和完成基础操纵的类库,团体以为这个类在做MIS体系时仍是有必定的代价,以是总结出来,先容给人人。
毗连工场,完成了DataSource接口
packageskydev.modules.data;
importjava.sql.*;
importjavax.sql.DataSource;
importjava.io.PrintWriter;
publicclassConnectionFactoryimplementsDataSource{
privateStringuserName;
privateStringpassword;
privateStringdriverName;
privateStringurl;
privatejava.sql.Connectionconnection;
/**
*依据设置的毗连参数创立一个新的毗连实例
*@return
*/
privateConnectiongetNewConnection(){
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(SQLExceptione){
throwe;
}
}
finally{
returnthis.connection;//前往新创建的毗连
}
}
}
publicStringgetUserName(){
returnuserName;
}
publicvoidsetUserName(StringuserName){
this.userName=userName;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetPassword(Stringpassword){
this.password=password;
}
publicStringgetDriverName(){
returndriverName;
}
publicvoidsetDriverName(StringdriverName){
this.driverName=driverName;
}
publicStringgetUrl(){
returnurl;
}
publicvoidsetUrl(Stringurl){
this.url=url;
}
publicjava.sql.ConnectiongetConnection(){
if(connection!=null){
try{
if(connection.isClosed()){
connection=null;
getNewConnection();
}
}
catch(SQLExceptionex){
}
}
if(connection==null){//没有设置毗连则创立一个毗连
getNewConnection();
}
returnconnection;
}
publicConnectiongetConnection(StringuserName,Stringpassword)throws
SQLException{
this.setUserName(userName);
this.setPassword(password);
returngetConnection();
}
publicPrintWritergetLogWriter(){
returnnull;
}
publicvoidsetLogWriter(PrintWriterprintWriter){
}
publicvoidsetLoginTimeout(intint0){
}
publicintgetLoginTimeout(){
return0;
}
}
<p>
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。 |
|