转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> Sql Server >> 正文
jsp连接sql server调用数据源方法         

jsp连接sql server调用数据源方法

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1062 更新时间:2007/11/14 10:58:25

这人方法很简单,是jsp 调用sql server数据源的,并对查询及插入做了些处理,本方法适合于初学者

/*
 * Created on 2002-8-30
 * CopyRight by http://www.designac.org
 */
package org.DesignAC.database;

import java.sql.*;
import java.util.*;
import com.microsoft.jdbcx.sqlserver.SQLServerDataSource;
/**
 * @author Biggie
 *
 * Class Function:数据库连接bean,取sql server JDBC数据源,这个数据源也可以用
 * Tomcat,WebLogic,resin等提供
 * 支持各种容器及平台
 *  @version 1.0A
 * */
public class DBConnect {
 file://You Host IP
 private String strHostAddress="127.0.0.1";
 file://Host Port
 private int intHostPort=1433;
 file://UserName
 private String strUserName="sa";
 file://PassWord
 private String strPassWord="";
 file://DataBase Name
 private String strDataName="dac";
 file://Max Connection
 private int intMaxConnection=10;
 private Connection con=null;
 private Statement stmt=null;
 private ResultSet rs=null;
 file://JDBC source
 private SQLServerDataSource source=null;
 ArrayList ArrayRs=new ArrayList();
 /**
  * @param 构造函数注册JDBC驱动程序
  * */
 public DBConnect(){
  try{
   if(source==null){
    source=new SQLServerDataSource();
    source.setDatabaseName(strDataName);
    source.setServerName(strHostAddress);
    source.setPortNumber(intHostPort);
    source.setUser(strUserName);
    source.setPassword(strPassWord);
    file://source.setHostProcess(intMaxConnection);
    
   }
  }catch(Exception e){
   System.out.println("open database error:"+e.getMessage());
  }
 }
 /**
  * @param executeQuery查询数据库方法
  * @param 每条ArrayList记录存为String[] 数组
  * @return ArrayList
  * @exception SQLException
  */
 public ArrayList executeQuery(String strSql) throws SQLException {
  rs=null;
  try{
   con=source.getConnection();
   stmt=con.createStatement();
   rs=stmt.executeQuery(strSql);
   
   ResultSetMetaData rsmd=rs.getMetaData();
   int numberOfColumns = rsmd.getColumnCount();
   
   file://判断是否为空
   if(!ArrayRs.isEmpty()){
    ArrayRs.clear();
   }
   /*
    * 将每条记录写入数组
    * 将数组放在ArrayList里
    */
    while(rs.next()){
     String[] strArrayTemp=new String[numberOfColumns];
     for(int i=0;i<numberOfColumns;i++){
      if(rs.getObject(i+1)==null){
       strArrayTemp[i]= "";
      }else{
       strArrayTemp[i]=rs.getObject(i+1).toString();
      }
     }
     ArrayRs.add(strArrayTemp);
    }
    return (ArrayList)ArrayRs.clone();
  }catch(Exception e){
   System.out.println("query error:" + e.getMessage());
  }finally{
   if (stmt != null) {
    stmt.close();
   }
   if (con != null) {
    con.close();
   }
  }
  return ArrayRs;
 }
 /**
  * @param executeInsert插入数据方法
  * @return 插入条数是否成功(boolean)
  */
 public boolean executeInsert(String strSql) throws SQLException{
  rs=null;
  try{
   con=source.getConnection();
   stmt=con.createStatement();
   
   con.setAutoCommit(true);
   int i=stmt.executeUpdate(strSql);

   if(i==1){
    return (true);
   }
  }catch(Exception e){
   System.out.println("Insert error:"+e.getMessage());
  }finally{
   if (stmt != null) {
    stmt.close();
   }
   if (con != null) {
    con.close();
   }
  }
  return (false);
 }
 /**
  * @param executeUpdate修改数据方法
  * @return 修改数据数(int)
  */
 public int executeUpdate(String strSql) throws SQLException{
  rs=null;
  int j=0;
  try{
   con=source.getConnection();
   stmt=con.createStatement();
   con.setAutoCommit(false);
   
   j=stmt.executeUpdate(strSql);
   if(j>0){
    con.commit();
   }else{
    con.rollback();
   }
  }catch(Exception e){
   System.out.println("update error:"+e.getMessage());
  }finally{
   if (stmt != null) {
    stmt.close();
   }
   if (con != null) {
    con.close();
   }
  }
  return j;
 }
 /**
  * @param executeDelete删除数据方法
  * @return 删除数据数(int)
  */
 public int executeDelete(String strSql) throws SQLException{
  rs=null;
  int j=0;
  try{
   con=source.getConnection();
   stmt=con.createStatement();
   
   con.setAutoCommit(false);
   j=stmt.executeUpdate(strSql);
   
   if(j>0){
    con.commit();
   }else{
    con.rollback();
   }
  }catch(Exception e){
   System.out.println("Delete error:"+e.getMessage());
  }finally{
   if (stmt != null) {
    stmt.close();
   }
   if (con != null) {
    con.close();
   }
  }
  return j;
 }
}


[Access]sql随机抽取记录  [Access]ASP&SQL让select查询结果随机排序的实现方法
[聊天工具]企业邮件系统的利器----FoxMail Server  [系统软件]OPEN SERVER 5.0.5安装EXP300阵列柜
[系统软件]SQL语句性能优化--LECCO SQL Expert  [系统软件]关于Windows2000Server的灾难恢复
[常用软件][网络]下载服务革命性风暴Poco Server评测  [C语言系列]动态创建SQL Server数据库、表、存储过程等架构信…
[C语言系列]SQL Server到DB2连接服务器的实现  [C语言系列]SQL Server到SYBASE连接服务器的实现
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台