做个认真的人!
SqlBean基于jdbc+SQLServer2000
上一篇 /
下一篇 2008-06-13 08:32:33
/ 个人分类:java
//用于连接数据库用的javabean 自己写了感觉还不错,给大家共享下
//作者:杨经纬
package shopping.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class SqlBean{
///////////////----初始化数据库连接的相关变量-///////////////////////
private Connection conn = null;
private ResultSet rs = null;
private String DatabaseDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private String DatabaseUrl = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
String userName = "admin"; //默认用户名
String userPwd = "admin"; //密码
public void setDatabaseDriver(String Driver){
this.DatabaseDriver=Driver;
}
public String getDatabaseDriver(){
return (this.DatabaseDriver);
}
public void setDatabaseUrl(String DatabaseUrl){
this.DatabaseUrl = DatabaseUrl;
}
public String getDatabaseUrl(){
return (this.DatabaseUrl);
}
////////////-----构造函数,加载 驱动程序---////////////////////////
public SqlBean(){
try{
Class.forName(DatabaseDriver);
}
catch(java.lang.ClassNotFoundException e){
System.err.println("加载驱动器有错误:" + e.getMessage( ));
System.out.print("执行插入有错误:" + e.getMessage());//输出到客户端
}
}
/////////////执行插入语句的函数,以数据库事务的方式提交,保证安性/////////////
public int executeInsert(String sql)throws SQLException {
return executeInsert(new String[] { sql });
}
public int executeInsert(String []sql) throws SQLException
{
int num = 0;
conn = DriverManager.getConnection(DatabaseUrl,userName,userPwd);
if (conn == null) {
throw new SQLException("No connection available.");
}
boolean autoCommit = conn.getAutoCommit();
try {
conn.setAutoCommit(false);
Statement statement = conn.createStatement();
for(int i = 0; i < sql.length; i ++)
{
statement.executeUpdate(sql[i]);
}
statement.close();
}
catch(SQLException sqle) {
conn.rollback();
System.err.println("执行插入有错误:" + sqle.getMessage() );
System.out.print("执行插入有错误:" + sqle.getMessage()); //输出到客户端
throw sqle;
}
finally {
conn.commit();
conn.setAutoCommit(autoCommit);
}
CloseDataBase();
return (num);
}
/////////////////执行查询语句的函数///////////////////
public ResultSet executeQuery(String sql){
rs = null;
try{
conn = DriverManager.getConnection(DatabaseUrl,userName,userPwd);
Statement stmt = conn.createStatement( );
rs = stmt.executeQuery(sql);
}
catch(SQLException ex){
System.err.println("执行查询有错误:" + ex.getMessage() );
System.out.print("执行查询有错误:" + ex.getMessage()); //输出到客户端
}
return rs;
}
////////////执行删除语句的函数,同样以数据库事务的方式提交,保证安全性//
public int executeDelete(String sql)throws SQLException {
return executeDelete(new String[] { sql });
}
public int executeDelete(String []sql) throws SQLException
{
int num = 0;
conn = DriverManager.getConnection(DatabaseUrl,userName,userPwd);
if (conn == null){
throw new SQLException("No connection available.");
}
boolean autoCommit = conn.getAutoCommit();
try {
conn.setAutoCommit(false);
Statement statement = conn.createStatement();
for(int i = 0; i < sql.length; i ++)
{
statement.executeUpdate(sql[i]);
}
statement.close();
}
catch(SQLException sqle) {
conn.rollback();
throw sqle;
}
finally {
conn.commit();
conn.setAutoCommit(autoCommit);
}
CloseDataBase();
return (num);
}
////////////关闭数据库连接的函数/////////////
public void CloseDataBase(){
try{
conn.close();
}
catch(Exception end){
System.err.println("执行关闭Connection对象有错误:" + end.getMessage( ) );
System.out.print("执行执行关闭Connection对象有错误:有错误:" + end.getMessage()); //输出到客户端
}
}
}
相关阅读:
- Java Database Programming Example Code (nuodi9988, 2008-5-17)
- The Quintessential Applet (nuodi9988, 2008-5-17)
- [转]深入剖析Java编程中的中文问题及建议最优解决方法 (一免, 2008-5-17)
- jsp和servlet中out.println()不能换行 (一免, 2008-5-19)
- 专家分析:未来五年Ruby开发者将会翻两番 (joejoe0332, 2008-5-27)
- 61条面向对象设计的经验原则 (ligonghaozi, 2008-5-31)
- j2me+eclipse开发时,模拟器一闪而过 (一免, 2008-6-03)
- 如何挽救Java?改革JCP已成必须 (joejoe0332, 2008-6-04)
- 专家预言:PHP将比Java更受欢迎 (phpparty123, 2008-6-11)
- Android支持Java语法编程未承诺遵守规范 (joejoe0332, 2008-6-12)
导入论坛
收藏
分享给好友
管理
举报
TAG:
java