栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

jdbc 数据源加载配置文件连接 mybatis多数据源

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

jdbc 数据源加载配置文件连接 mybatis多数据源

jdbc加载配置文件xml 和 properties

hikri 和 druid

public class DButils {
    //使用properti配置文件
    @Test
    public void test1() throws Exception{
        //加载properties配置文件
        Properties properties=new Properties();
        properties.load(DButils.class.getClassLoader().getResourceAsStream("jdbc.properties"));

        //获取配置文件中的数据
        String username = properties.getProperty("mysql.username");
        String password = properties.getProperty("mysql.password");
        String url = properties.getProperty("mysql.url");
        String drivername = properties.getProperty("mysql.drivername");


        //2,3可以省略
        //2.实例化Driver,可以省略,java中存在spi功能,自动扫描jar包下meta-INF下的services,
        // 自动加载类
        Class clazz = Class.forName(drivername);
        Driver driver=(Driver) clazz.newInstance();

        //3.注册驱动,可以省略,sql.Driver中已经写了这句
        DriverManager.registerDriver(driver);

        //获取连接
        Connection connection = DriverManager.getConnection(url, username, password);
        System.out.println(connection);


    }

    //使用xml配置文件
    @Test
    public void test2() throws Exception{
        //使用dom4j加载xml文件
        //new 一个SAXReader对象,加载配置文件,生成document对象
        SAXReader saxReader=new SAXReader();
        InputStream inputStream = DButils.class.getClassLoader().getResourceAsStream("jdbc.xml");
        document document = saxReader.read(inputStream);

        Element root = document.getRootElement();//获取根节点

        //根据根节点获取子节点
        String username = root.element("username").getTextTrim();
        String password = root.element("password").getTextTrim();
        String url = root.element("url").getTextTrim();
        String drivername = root.element("drivername").getTextTrim();

        //2,3可以省略
        //2.实例化Driver,可以省略,java中存在spi功能,自动扫描jar包下meta-INF下的services,
        // 自动加载类
        Class clazz = Class.forName(drivername);
        Driver driver=(Driver) clazz.newInstance();

        //3.注册驱动,可以省略,sql.Driver中已经写了这句
        DriverManager.registerDriver(driver);

        //获取连接
        Connection connection = DriverManager.getConnection(url, username, password);
        System.out.println(connection);

    }

    //C3P0,DBCP数据库连接池已过时
    //德鲁伊数据库连接池
    @Test
    public void Test3() throws Exception {
        //初始化配置文件
        Properties properties=new Properties();
        properties.load(DButils.class.getClassLoader().getResourceAsStream("druidData.properties"));

        //初始化德鲁伊数据库连接池
        DruidDataSource druidDataSource = new DruidDataSource();
        druidDataSource.configFromPropety(properties);

        
        //利用数据库连接池工厂类获取数据库连接池

        DruidPooledConnection connection = druidDataSource.getConnection();
        System.out.println(connection);
    }

    //hikari数据库连接池
    @Test
    public void Test4() throws Exception{
        //初始化配置文件
        Properties properties = new Properties();
        properties.load(DButils.class.getClassLoader().getResourceAsStream("hikari.properties"));

        //初始化hikari数据库连接池,1.初始化hikari配置 2.加载配置
        HikariConfig hikariConfig = new HikariConfig(properties);
        HikariDataSource hikariDataSource = new HikariDataSource(hikariConfig);


        //获取连接
        Connection connection = hikariDataSource.getConnection();
        System.out.println(connection);

    }


}

jdbc.properties

mysql.username=root
mysql.password=root
mysql.url=jdbc:mysql://127.0.0.1:3306/stu
mysql.drivername=com.mysql.jdbc.Driver

jdbc.xml



    root
    root
    jdbc:mysql://127.0.0.1:3306/stu
    com.mysql.jdbc.Driver

配置mybatis框架的数据源
public class MyDruidDataSource implements DataSourceFactory {
    private Properties properties;
    @Override
    public void setProperties(Properties properties) {
        this.properties = properties;
    }

    @Override
    public DataSource getDataSource() {
        DruidDataSource druidDataSource = new DruidDataSource();
        druidDataSource.configFromPropety(properties);

        return druidDataSource;
    }
}

mybatis-config.xml




    

    
        

        
        
    


    
        
    

    
        
            
            
                
                
                
                
            
        
        
            
            
                
                
                
                
            
        
    
   



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/305251.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号