How to use sql server jdbc in java application (for win 10)

  •  download  “Microsoft JDBC Driver 6.0 for SQL Server”  from this site :

https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774

 

  • 解压后,到这个目录          sqljdbc_6.0.8112.200_enu.tar\sqljdbc_6.0.8112.200_enu\sqljdbc_6.0\enu\jre8

用 command line 执行 :


这是因为maven没有sqljdbc的repository , 必须手动把 sqljdbc42.jar 加到本地的maven repository

此方法来源于 :

https://stackoverflow.com/questions/19537396/missing-artifact-com-microsoft-sqlserversqljdbc4jar4-0

执行成功的标志是: 可以在本地maven repository 看到 sqljdbc

 

  • 然后 ,在 maven 的pom.xml 文件加入dependency

 

  • 需要用到 sql server 时 ,加这句即可

 

  • 各种调用的例子, 包括直接执行sql语句,调用store procedure (带输入和输出参数) , 见这个网址, 例子比较全

https://programmaticponderings.com/2012/08/24/calling-sql-server-stored-procedures-with-java-using-jdbc

 

 


如果要持续的调用sql sp , 就不能每一次都新建connection , 要使用 connection pool  ,  选用 apache 的 dbcp 库 

 

  • 如何引用:  在 pom.xml 加

 

  • 在 package 新建 DataSource.java 文件

 

  • try to call a sp with one input and output parameter

 

from running , you can find when the second trying ,  this code

is much more faster  than the first time .

  •  apache dbcp 的例子见

https://www.javatips.net/blog/dbcp-connection-pooling-example

 

  • basicDataSource 是否已包含pool的特性 ?  已有, 详细解释见:

https://stackoverflow.com/questions/14467480/connection-pooling-with-apache-dbcp