Chinaunix首页 | 论坛 | 博客
  • 博客访问: 232699
  • 博文数量: 39
  • 博客积分: 420
  • 博客等级: 下士
  • 技术积分: 457
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-01 10:22
文章分类

全部博文(39)

文章存档

2015年(15)

2014年(11)

2013年(1)

2012年(2)

2011年(1)

2010年(9)

我的朋友

分类: Web开发

2014-12-25 23:19:38

1、首先需要JDBC3个包文件,该文件为java连接sqlserver2000的3个包文件.rar
2、上边的压缩包里包含msbase.jar、mssqlserver.jar、msutil.jar文件,将这3个文件导入到项目中的WebContent->WEB-INF->lib目录中

3、编写java代码
(1)SqlServer2000.java文件

点击(此处)折叠或打开

  1. package com.SqlServer2000;

  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;

  6. public class SqlServer2000 {
  7.     static String JDBCDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";//驱动程序字符串
  8.     String JDBCConnection="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sxjlinux";//连接数据库字符串
  9.     String userName="sa";//连接数据库用户名
  10.     String userPwd="";//连接数据库密码
  11.     public Connection conn=null;//数据库连接对象
  12.     ResultSet rs=null;//数据库结果集对象
  13.     public SqlServer2000()
  14.     {
  15.         try
  16.         {
  17.             Class.forName(JDBCDriver);//加载驱动程序
  18.         }
  19.         catch(ClassNotFoundException e)
  20.         {
  21.             System.err.println("Dbconnection():"+e.getMessage());
  22.         }
  23.     }
  24.     public Connection connect()
  25.     {
  26.         try
  27.         {
  28.             conn=DriverManager.getConnection(JDBCConnection,userName,userPwd);//开始连接数据库
  29.             System.out.println("connect successful");
  30.         }
  31.         catch(SQLException ex)
  32.         {
  33.             System.err.println("connection():"+ex.getMessage());
  34.         }
  35.         return conn;
  36.     }
  37.     public void close()
  38.     {
  39.         try
  40.         {
  41.             if(!this.conn.isClosed())
  42.             {
  43.                 this.conn.close();//关闭数据库连接
  44.                 System.out.println("close successful");
  45.             }
  46.         }
  47.         catch(SQLException e)
  48.         {
  49.             e.printStackTrace();
  50.         }
  51.     }
  52. }
(2)User.java文件

点击(此处)折叠或打开

  1. package com.userInfo;

  2. public class User {
  3.     private String name;
  4.     private String email;
  5.     private int age;
  6.     public User(String name,String email,int age){
  7.         setName(name);
  8.         setEmail(email);
  9.         setAge(age);
  10.     }
  11.     public void setName(String name){
  12.         this.name=name;
  13.     }
  14.     public void setEmail(String email){
  15.         this.email=email;
  16.     }
  17.     public void setAge(int age){
  18.         this.age=age;
  19.     }
  20.     public String getName(){
  21.         return name;
  22.     }
  23.     public String getEmail(){
  24.         return email;
  25.     }
  26.     public int getAge(){
  27.         return age;
  28.     }
  29. }
(3)UserInfo.java文件

点击(此处)折叠或打开

  1. package com.UserTable;
  2. import java.sql.ResultSet;
  3. import java.sql.SQLException;
  4. import java.sql.Statement;
  5. import java.util.*;

  6. import com.userInfo.*;
  7. import com.SqlServer2000.*;
  8. import com.opensymphony.xwork2.ActionSupport;
  9. public class UserInfo extends ActionSupport {
  10.     private Set<User> Info;
  11.     public Set<User> gettotal() {
  12.         return Info;
  13.     }
  14.     public void settotal(Set<User> Info) {
  15.         this.Info = Info;
  16.     }

  17.     public String returntotal(){
  18.         Info=new HashSet();
  19.         SqlServer2000 db=new SqlServer2000();
  20.         db.connect();
  21.         Statement stmt;
  22.         ResultSet rs;
  23.         try
  24.         {
  25.             stmt=db.conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);//创建Statement对象
  26.             //第一个参数含义:
  27.             //TYPE_FORWORD_ONLY表示结果集的游标只能向下移动,TYPE_SCROLL_INSENSITIVE表示结果集的游标可上下移动,当数据库变化时,结果集不变
  28.             //TYPE_SCROLL_SENSITIVE表示结果集游标可上下移动,当数据库变化时,当前结果集同步改变
  29.             //第二个参数含义:
  30.             //CONCUR_READ_ONLY表示不能用结果集更新数据库中的表,CONCUR_UPDATETABLE表示结果集可以更新数据库中的表
  31.             rs=stmt.executeQuery("select * from sxj");//执行sql语句,并返回一个结果集
  32.             while(rs.next())
  33.             {
  34.                 String s1=rs.getString(1);
  35.                 String s2=rs.getString(2);
  36.                 int s3=rs.getInt(3);
  37.                 User user1=new User(s1,s2,s3);
  38.                 Info.add(user1);
  39.             }
  40.         }
  41.         catch(SQLException e)
  42.         {
  43.             e.printStackTrace();
  44.         }
  45.         db.close();
  46.         return "success";
  47.     }

  48. }
查看运行结果:

注意:以上的工程我是根据我的另一个博客其中的项目修改的:http://blog.chinaunix.net/blog/preView.html



阅读(2838) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~