访问SQLServer(2)-springboot导入jdbc的jar包自定义DBUtil连接SQLServer

该博客介绍了如何在Java项目中使用SQL Server数据库,并结合Spring框架进行操作。首先,讲解了下载并引入sqljdbc4.jar到工程中的步骤。接着,展示了创建静态类SpringContextUtil以获取Spring上下文,以及创建DBUtil类,利用@Autowired注解注入Environment来读取数据库配置。DBUtil类提供了获取数据库连接、执行SQL查询和更新的方法。最后,给出了控制类调用和测试的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 先在网上下载sqljdbc4.jar

2. 将sqljdbc4.jar复制到自己的工程中;鼠标右键--Add as Library...

 

3. 配置SQL数据库的连接: 

 4. 创建静态类访问spring上下文

package com.cx.common;

import org.springframework.context.ApplicationContext;

public class SpringContextUtil {
    private static ApplicationContext applicationContext;

    public static void setApplicationContext(ApplicationContext context) {
        applicationContext = context;
    }

    public static Object getBean(String beanId) {
        return applicationContext.getBean(beanId);
    }
}

5. 创建自定义访问类DBUtil.java

package com.cx.common;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;

import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

@Component
public class DBUtil {
    @Autowired
    private Environment environment;

    private Connection conn=null;
    private Statement stmt = null;

    public DBUtil(){
        //构造函数
    }

    //对外提供一个方法来获取数据库连接
    public  Connection getConnection(){
        if (conn == null) {
            try {
                String url = environment.getProperty("spring.datasource.url");
                String user = environment.getProperty("spring.datasource.username");
                String pwd = environment.getProperty("spring.datasource.password");
                //1.加载驱动程序
                Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                //2.获得数据库的连接
                conn = (Connection) DriverManager.getConnection(url, user, pwd);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

        return conn;
    }

    public String executeScalar(String p_sql){
        String result="";
        try {
            conn = getConnection();
            stmt = conn.createStatement();
            ResultSet set = stmt.executeQuery(p_sql);
            if (set.next()){
                result = set.getString(1);
            }
            stmt.close();
            return result;
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return "";
    }

    public boolean executeSQL(String sql){
        try {
            conn = getConnection();
            stmt = conn.createStatement();
            stmt.execute(sql);
            stmt.close();
            return true;
        }
        catch (Exception e){
            return  false;
        }
    }
}

6. 控制类调用:

7. 运行测试:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值