实例:spring的用法原理和代码(理解spring)

背景是:
手动创建c3p0数据源,运用spring技术,将代码块中的set方法,通过spring简化代码,实现解耦。

下图展示不使用Spring的代码

 @Test
    //手动创建 c3p0 数据源(加载配置文件jdbc.properties)
    public void test() throws Exception {
       ResourceBundle rb = ResourceBundle.getBundle("jdbc");
       String driver = rb.getString("jdbc.driver");
       String url = rb.getString("jdbc.url");
       String username= rb.getString("jdbc.username");
       String password = rb.getString("jdbc.password");

       //创建数据源对象
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        dataSource.setDriverClass(driver);
        dataSource.setJdbcUrl(url);
        dataSource.setUser(username);
        dataSource.setPassword(password);
        //连接好数据库后获取资源
        Connection connection = dataSource.getConnection();
        System.out.println(connection);
        connection.close();

    }

开始步骤:
导入spring坐标,即在pom.xml文件中写入spring-context依赖包
在这里插入图片描述
然后在resources文件夹中创建applicationContext.xml文件,命名是任意的,方便辨认,采用这个名字。在bean中
1.ID是自己命名,这里是datasource ,class指的是上面ComboPooledDataSource的全限定名地址,右键点击copy reference。
附上图片
在这里插入图片描述
2.填写属性
如图
这里很重要的是property其中的name,指的是set方法后面的字符串,复制过来之后,首字母是大写的改为小写。(我自己改为小写,测试也不会报错)
Name后面的参数可以选择value和ref 这里是普通参数注入选择value,引用注入选择ref

    <!--创建bean-->
    <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource" >
        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
        <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test"></property>
        <property name="user" value="root"></property>
        <property name="password" value="123456"></property>
        
    </bean>
    <!--注入参数-->

到此,applicationContext文件就已经配置好了。
进入测试页面

  @Test
    //手动spring 容器产生 c3p0 数据源(加载配置文件jdbc.properties)
    public void test3() throws Exception {
        ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
        DataSource data = app.getBean(DataSource.class);
        Connection connection = data.getConnection();
        System.out.println(connection);
        connection.close();
    }

第一行的代码作用:获取配置文件
第二行的代码作用:获取bean
第三行:获取连接
测试结果:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你在狗叫什么、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值