JSP之JDBC操作Sql Server数据库



Sql Server数据库是一个常用的数据库软件,它是微软产品,但是也对JDBC操作提供了支持。

操作:

<1>首先要从微软的官方网站下载JDBC的驱动jar包文件,本人已经下好:点击打开链接

把它的驱动jar包放在应用程序的CLASSPATH下,在这是web开发,所以可以放在WebRoot/WEB-INF/lib下。

把jar包添加在应用程序CLASSPATH下:

对sqljdbc.jar右键点击

按照如下图片的方法进行:

这样配置算是完成成了。

注意:Sql Server不同版本的驱动文件是不一样的。

Sql server的连接URL的格式如下:

 

  1. jdbc:sqlserver://<server_name>:<1433>;DatabaseName=<db>


在<server_name>初填写数据库的IP地址,端口号默认为1433,最后以数据库的名称结尾。

 

下面是一个连接URL的实例:

 

  1. jdbc:sqlserver://localhost:<1433>;DatabaseName=student

它的含义是连接本地端口号为1433的Sql Server数据库,使用数据库是”student”。

 

<2>数据库部分

以下是连接数据库的

 

之后创建一个数据库,再数据库下创建一个table。

 

具体事例:

 

  1. package Utils;
  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7. public class DB {
  8.     private static Connection con = null;
  9.     private static Statement statement = null;
  10.     private static ResultSet set = null;
  11.     private String sql = ”";
  12.     // 加载SqlServer JDBC驱动
  13.     private static String driverNameOfSqlServer = ”com.microsoft.sqlserver.jdbc.SQLServerDriver”;
  14.     // IP地址(改为自己的IP地址)
  15.     private static String DatabaseIP = ”localhost”;
  16.     // 数据库用户名
  17.     private static String DatabaseUser = ”sjf”;
  18.     // 数据库密码
  19.     private static String DatabasePassword = ”123456″;
  20.     // 数据库名称
  21.     private static String DatabaseName = ”pubs”;
  22.     // URL
  23.     private static String DatabaseUrl = ”jdbc:sqlserver://” + DatabaseIP + ”:1433;DatabaseName = ” + DatabaseName;
  24.     //获取一个数据库的连接
  25.     public Connection getConnection() {
  26.         try {
  27.             //注册驱动程序
  28.             Class.forName(driverNameOfSqlServer);
  29.             // 获取连接
  30.             con = DriverManager.getConnection(DatabaseUrl, DatabaseUser,DatabasePassword);
  31.         } catch (Exception e) {
  32.             System.out.println(“getConnection出现错误”);
  33.             e.printStackTrace();
  34.         }
  35.         return con;
  36.     }
  37.     //创建会话
  38.     public Statement getStatement(Connection con){
  39.         if(con != null){
  40.             try {
  41.                 statement = con.createStatement();
  42.                 return statement;
  43.             } catch (SQLException e) {
  44.                 System.out.println(“getStatement出现错误”);
  45.                 e.printStackTrace();
  46.             }
  47.         }
  48.         return null;
  49.     }
  50.     //查询
  51.     public ResultSet getResultSetQuery(Statement statement,String sql) {
  52.         if(statement != null){
  53.             try {
  54.                 set = statement.executeQuery(sql);
  55.                 return set;
  56.             } catch (SQLException e) {
  57.                 System.out.println(“getResultSetQuery出现错误”);
  58.                 e.printStackTrace();
  59.             }
  60.         }
  61.         return null;
  62.     }
  63.     //增加,修改,删除记录
  64.     public void getResultSetUpdate(Statement statement,String sql) {
  65.         if(statement != null){
  66.             try {
  67.                 statement.executeUpdate(sql);
  68.             } catch (SQLException e) {
  69.                 System.out.println(“getResultSetUpdate出现错误”);
  70.                 e.printStackTrace();
  71.             }
  72.         }
  73.     }
  74.     //关闭连接
  75.     public static void colse(Connection con){
  76.         if(con != null){
  77.             try {
  78.                 con.close();
  79.             } catch (SQLException e) {
  80.                 e.printStackTrace();
  81.             }
  82.         }
  83.     }
  84.     //关闭会话
  85.     public static void close(Statement  statement){
  86.         if(statement != null){
  87.             try {
  88.                 statement.close();
  89.             } catch (SQLException e) {
  90.                 e.printStackTrace();
  91.             }
  92.         }
  93.     }
  94.     //关闭查询集
  95.     public static void close(ResultSet set){
  96.         if(set != null){
  97.             try {
  98.                 set.close();
  99.             } catch (SQLException e) {
  100.                 e.printStackTrace();
  101.             }
  102.         }
  103.     }
  104. }

测试:

  1. DB db = new DB();
  2.             Connection con = db.getConnection();
  3.             Statement statement = db.getStatement(con);
  4.             String sql = ”select * from dbo.jobs”;
  5.             ResultSet rs = db.getResultSetQuery(statement, sql);
  6.             try {
  7.                 if(rs.next()){
  8.                     System.out.println(“fdfsdfsdff”+rs.getString(“job_desc”));
  9.                 }
  10.             } catch (SQLException e) {
  11.                 e.printStackTrace();
  12.             }

http://blog.csdn.net/sjf0115/article/details/8641067