Java通过JDBC连接Sql Server

前言

  公司项目和第三方项目之间采用中间数据对接,需要通过配置文件配置数据库相关参数,然后操作Sql Server数据库。之前一直用Oracel数据库,针对这个需求,做了一个小的尝试和demo。----这是这篇博客的来源。

一、sql server 设置

具体Sql Server数据库的安装,网上有好多教程可以参考。
我本地安装的是Sql Server r2版本的数据库。
1、sql server 配置管理中,选择sql server网络配置 ----》 启用TCP/IP。

        2、TCP/IP 右键----》属性:设置IP1的IP地址为127.0.0.1 ,IP10的IP地址为127.0.0.1 设置IPAll中IP端口为1433


3、重启sql server 服务,在sql server management studio中选择对象资源,右键,重新启动

二、下载驱动包sqljdbc41.jar

1、 官方下载路径 https://www.microsoft.com/zh-cn/download/details.aspx?id=11774
点击下载,选择压缩包,进行下载。

2、 解压后,找sqljdbc41.jar包,在项目添加sqljdbc41.jar

3、下载的压缩包中也有调用示例。

三、代码调用示例

1、配置文件:config.properties
ZY_DB_URL=jdbc\:sqlserver\://localhost\:1433;databaseName=NetMeterDB
ZY_DB_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
ZY_DB_USERNAME=sa
ZY_DB_PASSWORD=123456
2、代码调用示例:
package com;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Properties;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//配置文件中获取相关参数
		Properties pro = new Properties();
		InputStream ips = Test.class.getResourceAsStream("/config.properties");
        try {
        	pro.load(ips);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	    //路径url
		String url = pro.getProperty("ZY_DB_URL");
		//驱动
		String driver = pro.getProperty("ZY_DB_DRIVER");
		//用户名
		String userName = pro.getProperty("ZY_DB_USERNAME");
		//密码
		String passWord = pro.getProperty("ZY_DB_PASSWORD");
	    //获取连接
		Connection con = getConection(url,driver,userName,passWord);
		if(con == null){	//获取连接失败
			System.out.println("数据库连接失败");
			return;
		}
		//插入SQL
		String sql = "insert into CmdInfo(CmdId,CmdName) "
						+ " values(1,'测试')";
		//查询SQL语句
		String sql1 = "select * from CmdInfo";
	
	   try {
		   //执行insert sql
		   Statement stmt = con.createStatement();
		   int row = stmt.executeUpdate(sql);
		   System.out.println("insert 语句影响行数:"+row);
		   
		   //执行select sql
		   ResultSet rs = stmt.executeQuery(sql1);
		   System.out.println("select 语句结果:");
		   while(rs.next()){
	            //有数据
	            int id = rs.getInt(1);//获得第一列的值
	            String name = rs.getString(2);//获得第二列的值
	            System.out.println(id+","+name);
	
	        }
		   //关闭
		   stmt.close();
		   con.close();
			
	   } catch (SQLException e) {
		// TODO Auto-generated catch block
		   e.printStackTrace();
	   }
		
	}
	/**
	 * 数据库连接
	 * @param url 路径
	 * @param driver 驱动
	 * @param userName 用户名
	 * @param passWord 密码
	 * @return 数据库连接
	 * @author ly
	 */
	public static Connection getConection(String url,String driver,String userName,String passWord) 
	{
		
		Connection con = null;
		
		try {
			Class.forName(driver);
			con = DriverManager.getConnection(url,userName,passWord);
			System.out.println("连接数据库成功!");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
	
		}
		return con;
	}

}


3、执行结果
           后台输出:

           数据库:


四、注意事项

      1、sql server配置中一定要启用TCP/IP。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值