jdbc连接数据库

使用的是使用jdbc连接数据库,然后实现数据库之间的来回自由切换,不多说直接上代码请看下面

当然首先要添加对应的maven依赖

<dependency>
            <groupId>com.microsoft.sqlserver</groupId>
            <artifactId>sqljdbc4</artifactId>
            <version>4.0</version>
        </dependency>
<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

我是springboot项目我的数据源配置在yum文件中,你们根据自己的情况来配置自己的数据源,我这边只贴出我关于数据源的配置信息

这是mysql的配置信息:

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      driver-class-name: com.mysql.jdbc.Driver
      url: jdbc:mysql://ip:端口号:/数据库名称?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=true
      username: root
      password: toot

这是sqlserver的配置信息

dynamic:
  datasource:
    slave1:
#      driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
      url: jdbc:sqlserver://id;databasename=TopDB
      username: *****
      password: *****

因为每次调用很麻烦所以我把数据库连接的方式封装进了工具类里面,便于直接调用

新建一个DEHelp的工具类(导包的话你们直接把sql里面的包全部导入就OK)

public class DBHelp {
    //驱动
    private final static String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    //连接名
    private final static String url = "你的数据库连接地址";
    //用户名
    private final static String user = "你的数据库连接名";
    //密码
    private final static String password = "你的数据库连接密码";
    /**
     * 得到连接
     */
    public static Connection connection() throws ClassNotFoundException, SQLException {
        Connection connection = null;
        //注册数据驱动
        try {
            Class.forName(driver);
            connection = DriverManager.getConnection(url,user,password);
        }catch (ClassNotFoundException e){
            e.printStackTrace();
        }catch (SQLException e){
            e.printStackTrace();
        }
      return connection;
    }
    /**
     * 关闭数据连接
     */
    public static void closeAll(Connection connection , Statement statement, ResultSet resultSet){
        try {
            if (null !=connection){
                connection.close();
            }
            if (null !=statement){
                statement.close();
            }
            if (null !=resultSet){
                resultSet.close();
            }
        }catch (SQLException e){
            e.printStackTrace();
        }
    }
}

下面是jdbc的使用方法:

//我把自己的结果集全部封装在一个集合里面,集合里面使用的泛型是实体,这个实体你们根据自己的情况来确定,你们要是不用集合封装可以不用
				 List<User> list=new ArrayList<User>();
                //sql 我这是sqlserver的写法,sqlserver不能有''出现,所以大家注意一下,后面是你要传的条件
                String sql ="SELECT * from user cc WHERE cc.TScustomer ="+tscustomer;
                //得到连接
                Connection connection = null;
                Statement statement = null;
                ResultSet resultSet = null;
                try {
                    connection = DBHelp.connection();
                    statement =connection.createStatement();
                    resultSet = statement.executeQuery(sql);
                    if (resultSet.next()){
                        User user= new User();
                        //将数据存入实体里面(如果不是集合这边要更改相应的操作哦)
                        user.setTeamname(resultSet.getString("teamname"));
                        //将实体add进集合里面去
                        list.add(user);
                    }
                }catch (SQLException e){
                    e.printStackTrace();
                }finally {
                    //关闭连接
                    DBHelp.closeAll(connection,statement,resultSet);
                }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值