1.下载 server2008R2驱动jar包

下载jar包

http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=21599

2.代码实现

1)实体:

  1. package entity;
  2.  
  3. import java.io.Serializable;
  4. import java.util.Date;
  5.  
  6. public class User implements Serializable{
  7. private int id;
  8. private String username;
  9. private String password;
  10. private Date createtime;
  11. public int getId() {
  12. return id;
  13. }
  14. public void setId(int id) {
  15. this.id = id;
  16. }
  17. public String getUsername() {
  18. return username;
  19. }
  20. public void setUsername(String username) {
  21. this.username = username;
  22. }
  23. public String getPassword() {
  24. return password;
  25. }
  26. public void setPassword(String password) {
  27. this.password = password;
  28. }
  29. public Date getCreatetime() {
  30. return createtime;
  31. }
  32. public void setCreatetime(Date createtime) {
  33. this.createtime = createtime;
  34. }
  35. public User(int id, String username, String password, Date createtime) {
  36. super();
  37. this.id = id;
  38. this.username = username;
  39. this.password = password;
  40. this.createtime = createtime;
  41. }
  42.  
  43. public User(String username, String password, Date createtime) {
  44. super();
  45. this.username = username;
  46. this.password = password;
  47. this.createtime = createtime;
  48. }
  49. public User() {
  50. super();
  51.  
  52. }
  53. @Override
  54. public String toString() {
  55. return "User [id=" + id + ", username=" + username + ", password="
  56. + password + ", createtime=" + createtime + "]";
  57. }
  58.  
  59. }

2.dao

  1. package dao;
  2.  
  3. import java.util.List;
  4.  
  5. import entity.User;
  6.  
  7. public interface UserDao {
  8. public void add(User u);
  9.  
  10. public User getByUsername(String username);
  11.  
  12. public void update(User u);
  13.  
  14. public void delete(String username);
  15.  
  16. public List<User> findAll();
  17. }

3.ImplDao

  1. package daoImpl;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.PreparedStatement;
  5. import java.sql.ResultSet;
  6. import java.util.ArrayList;
  7. import java.util.Date;
  8.  
  9. import java.util.List;
  10.  
  11. import jdbcutil.JdbcUtil;
  12. import dao.UserDao;
  13. import entity.User;
  14.  
  15. public class UserDaoImpl implements UserDao {
  16.  
  17. @Override
  18. public void add(User u) {
  19.  
  20. Connection con = null;
  21. PreparedStatement stmt = null;
  22. ResultSet rs = null;
  23.  
  24. try {
  25. con = JdbcUtil.getConnection();
  26. String sql = "insert into [user](username,password,createtime) values(?,?,?)";
  27. stmt= con.prepareStatement(sql);
  28. stmt.setString(1, "test");
  29. stmt.setString(2,"123456");
  30. stmt.setDate(3, new java.sql.Date(u.getCreatetime().getTime()));
  31. stmt.executeUpdate();
  32.  
  33. } catch (Exception e) {
  34.  
  35. e.printStackTrace();
  36. }finally
  37. {
  38. JdbcUtil.close(rs, stmt, con);
  39. }
  40.  
  41. }
  42.  
  43. @Override
  44. public User getByUsername(String username) {
  45.  
  46. Connection con = null;
  47. PreparedStatement stmt = null;
  48. ResultSet rs = null;
  49.  
  50. try {
  51. con = JdbcUtil.getConnection();
  52. String sql = "select * from [user] where username=?";
  53. stmt = con.prepareStatement(sql);
  54. stmt.setString(1, username);
  55. rs = stmt.executeQuery();
  56. while(rs.next())
  57. {
  58. int id = rs.getInt("id");
  59. String name = rs.getString("username");
  60. String password = rs.getString("password");
  61. Date time = rs.getDate("createtime");
  62.  
  63. User u = new User(id,username,password,time);
  64.  
  65. return u;
  66.  
  67. }
  68. } catch (Exception e) {
  69.  
  70. e.printStackTrace();
  71. }
  72. finally
  73. {
  74.  
  75. JdbcUtil.close(rs, stmt, con);
  76. }
  77. return null;
  78. }
  79.  
  80. @Override
  81. public void update(User u) {
  82.  
  83. Connection con = null;
  84. PreparedStatement stmt = null;
  85. ResultSet rs = null;
  86.  
  87. try {
  88. con = JdbcUtil.getConnection();
  89.  
  90. String sql = "update [user] set password=? where username=?";
  91.  
  92. stmt = con.prepareStatement(sql);
  93.  
  94. stmt.setString(1, u.getPassword());
  95.  
  96. stmt.setString(2, u.getUsername());
  97.  
  98. stmt.executeUpdate();
  99.  
  100. } catch (Exception e) {
  101.  
  102. e.printStackTrace();
  103. }
  104. finally
  105. {
  106.  
  107. JdbcUtil.close(rs, stmt, con);
  108. }
  109. }
  110.  
  111. @Override
  112. public void delete(String username) {
  113.  
  114. Connection con = null;
  115. PreparedStatement stmt = null;
  116. ResultSet rs = null;
  117.  
  118. try {
  119. con = JdbcUtil.getConnection();
  120.  
  121. String sql = "delete from [user] where username=?";
  122.  
  123. stmt = con.prepareStatement(sql);
  124.  
  125. stmt.setString(1,username);
  126.  
  127. stmt.executeUpdate();
  128.  
  129. } catch (Exception e) {
  130.  
  131. e.printStackTrace();
  132. }
  133. finally
  134. {
  135.  
  136. JdbcUtil.close(rs, stmt, con);
  137. }
  138. }
  139.  
  140. @Override
  141. public List<User> findAll() {
  142. List<User> list = new ArrayList<User>();
  143.  
  144. Connection con = null;
  145. PreparedStatement stmt = null;
  146. ResultSet rs = null;
  147.  
  148. try {
  149. con = JdbcUtil.getConnection();
  150. String sql = "select * from [user]";
  151.  
  152. stmt = con.prepareStatement(sql);
  153.  
  154. rs = stmt.executeQuery();
  155.  
  156. while(rs.next())
  157. {
  158. User u = new User(rs.getInt("id"), rs.getString("username"),rs.getString("password"),rs.getDate("createtime"));
  159. list.add(u);
  160.  
  161. }
  162. return list;
  163.  
  164. } catch (Exception e) {
  165.  
  166. e.printStackTrace();
  167. }
  168. finally
  169. {
  170. JdbcUtil.close(rs, stmt, con);
  171.  
  172. }
  173.  
  174. return null;
  175. }
  176.  
  177. }

4.JDBC工具类

  1. package jdbcutil;
  2.  
  3. import java.io.InputStream;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9. import java.util.Properties;
  10.  
  11. public class JdbcUtil {
  12.  
  13. private static String className;
  14. private static String url;
  15. private static String user;
  16. private static String password;
  17.  
  18. static
  19. {
  20.  
  21. try {
  22. InputStream in = JdbcUtil.class.getClassLoader().getResourceAsStream("dbinfo.properties");
  23.  
  24. Properties props = new Properties();
  25. props.load(in);
  26.  
  27. className = props.getProperty("className");
  28.  
  29. url = props.getProperty("url");
  30.  
  31. user = props.getProperty("user");
  32.  
  33. password = props.getProperty("password");
  34.  
  35. //System.out.println(className);
  36.  
  37. //System.out.println(url);
  38.  
  39. //注册驱动
  40. Class.forName(className);
  41.  
  42. } catch (Exception e) {
  43.  
  44. e.printStackTrace();
  45. }
  46.  
  47. }
  48.  
  49. public static Connection getConnection() throws Exception
  50. {
  51. return DriverManager.getConnection(url, user, password);
  52.  
  53. }
  54.  
  55. public static void close(ResultSet rs, Statement stmt,Connection con)
  56. {
  57.  
  58. if(rs!=null)
  59. {
  60. try {
  61. rs.close();
  62. } catch (SQLException e) {
  63. // TODO Auto-generated catch block
  64. e.printStackTrace();
  65. }
  66.  
  67. rs= null;
  68. }
  69.  
  70. if(stmt!=null)
  71. {
  72. try {
  73. stmt.close();
  74. } catch (SQLException e) {
  75. // TODO Auto-generated catch block
  76. e.printStackTrace();
  77. }
  78.  
  79. stmt= null;
  80. }
  81.  
  82. if(con!=null)
  83. {
  84. try {
  85. con.close();
  86. } catch (SQLException e) {
  87. // TODO Auto-generated catch block
  88. e.printStackTrace();
  89. }
  90.  
  91. con= null;
  92. }
  93. }
  94. }

5.用于测试SQLServer驱动是否正确

  1. package test;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5.  
  6. public class JdbcTest {
  7. public static void test()
  8. {
  9. Connection conn = null;
  10. try {
  11. Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
  12.  
  13. //注意url中没有microsoft才能使用,网上增加了microsoft的会出现No suitable driver found for//jdbc:microsoft:sqlserver:……的错误
  14. //若安装多个实例时,要确认相应的port及实例名
  15. String url="jdbc:sqlserver://localhost:1433;DatabaseName=JavaTestDB";
  16. String user="sa";
  17. String password="123456";
  18. conn= DriverManager.getConnection(url,user,password);
  19.  
  20. System.out.println("链接成功");
  21.  
  22. } catch (Exception e) {
  23. // TODO Auto-generated catch block
  24. e.printStackTrace();
  25. }
  26. finally
  27. {
  28. if(conn!=null)
  29. {
  30. try {
  31. conn.close();
  32. } catch (Exception e) {
  33. // TODO Auto-generated catch block
  34. e.printStackTrace();
  35. }
  36.  
  37. conn = null;
  38.  
  39. }
  40.  
  41. }
  42.  
  43. }
  44. }

备注: dbinfo.properties文件:

6.添加SQLServer jar包

Java 连接 SqlServer工具类的更多相关文章

  1. python连接sqlserver工具类

    上代码: # -*- coding:utf-8 -*- import pymssql import pandas as pd class MSSQL(object): def __init__(sel ...

  2. HttpTool.java(在java tool util工具类中已存在) 暂保留

    HttpTool.java 该类为java源生态的http 请求工具,不依赖第三方jar包 ,即插即用. package kingtool; import java.io.BufferedReader ...

  3. Java基础-DButils工具类(QueryRunner)详解

    Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...

  4. java 邮件发送工具类【来源网络自己已经实际应用】

    最近在做一个Java发送邮件的工具类,现在分享一下完整的代码 首先需要java邮件的包javax.mail-1.5.4.jar 之前因为链接给错了,很不好意思,现在重新发一次. 包在这里可以下载htt ...

  5. Java操作Redis工具类

    依赖 jar 包 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis< ...

  6. Druid连接池工具类

    package cn.zmh.PingCe; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSo ...

  7. Android OkHttp网络连接封装工具类

    package com.lidong.demo.utils; import android.os.Handler; import android.os.Looper; import com.googl ...

  8. 基于SqlClient开发SQLServer工具类 伸手党的福音

    注意:代码直接Copy调用即可,SQLServer工具类跟我上一个Oracle工具类有所不同,区别在于调用存储过程中时参数的使用,无需输入对应的存储游标名称 特点:根据用户传入的参数类型来识别存储中对 ...

  9. java文件处理工具类

    import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedRead ...

随机推荐

  1. ACM数论之旅12---康托展开((*゚▽゚*)装甲展开,主推进器启动,倒计时3,2,1......)

    在我们做题中,搜索也好,动态规划也好,我们往往有时候需要用一个数字表示一种状态 比如有8个灯泡排成一排,如果你用0和1表示灯泡的发光情况 那么一排灯泡就可以转换为一个二进制数字了 比如 0110011 ...

  2. hive存储、数据模型、内部表

    创建内部表 加一列元素 删除表

  3. Pandas三个数据结构

    系列(Series) 数据帧(DataFrame) 面板(Panel) 这些数据结构构建在Numpy数组之上,这意味着它们很快. 考虑这些数据结构的最好方法是,较高维数据结构是其较低维数据结构的容器. ...

  4. mysql 性能指标

    qps 每秒处理的查询数tps 每秒处理的事务数IOPS 每秒磁盘进行的I/O操作次数 一.TPS:Transactions Per Second(每秒传输的事物处理个数),即服务器每秒处理的事务数. ...

  5. BZOJ3862Little Devil I——树链剖分+线段树

    题目大意: 给一棵树,每条边可能是黑色或白色(起始都是白色),有三种操作: 1.将u到v路径上所有边颜色翻转(黑->白,白->黑) 2.将只有一个点在u到v路径上的边颜色翻转 3.查询u到 ...

  6. java项目http变更https

    1. 创建 keystore 文件 执行keytool -genkey -v -alias tomcat -keyalg RSA   -validity 3650  -keystore c:\tomc ...

  7. ubuntu 18.04 使用 nvm 安装 nodejs

    20190315 使用 nvm 安装 nodejs 1. 找到 nvm 官网帮助 https://github.com/creationix/nvm 我习惯于 terminal 操作,所以选择 git ...

  8. 对 spi 的认知

    在使用 SPI 外设场景下,只需将数据送至 SPI->DR,外设将数据自动发走 在使用 DMA 外设场景下,只需指定数据缓存区地址及 SPI->DR 地址,这样就无需劳驾 CPU 而开始数 ...

  9. Python进制表示及转换

    进制表示: 二进制:>>> abin = 0b1000>>> abin8 八进制:>>> aoct = 0o123 (数字0,字母o)>&g ...

  10. 拆分string 用空格 逗号

    string that have both comma and space struct tokens: std::ctype<char>{ tokens(): std::ctype< ...