Spring自动装配小白专用

什么是自动装配

自动装配式bean的依赖方式,它会在spring的上下文自动寻找,并且自动给当前的bean装配其关联的bean属性

在Spring中提供自动装配的常用的设置

1.no  

表示使用自动装配,它bean的依赖关系必须通过property元素来定义

2.byType

它式可以根据属性的类型来进行一个自动装配

3.byName 

根据属性名来进行一个自动装配

4.constructor

constructor它与bytype的方式类似,唯一不同之处就是它应用于构造器参数

自动装配的原理

拿学生表来举例

首先我们会在我们的Studentservice的实现类中引入我们的StudentMapper(dao接口),如果没有的话我们就会去ApplicationContext.xml中写一个bean表前把相关属性依赖注入进去,如果有的话我们可以直接使用注解@Autowired注入依赖注入,使用注解大大的减少了我们的代码量,这就是我们自动装配的原理

 Spring中Bean的作用域

 如何通过属性文件配置数据源?

1.把数据源中的相关配置信息放到properties文件中维护

  <!-- 1.引入properties文件-->
    <context:property-placeholder location="classpath:jdbc.properties"></context:property-placeholder>

2.采用propertySourcesPlaceholderConfigure类来加载properties文件

3.在Spring配置文件采用${xxx}的方法引用properties文件中的键值对数据

==========jdbc.properties配置文件===============
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/数据库名?serverTimezone=GMT-8&useUnicode=true&character=utf-8
jdbc.username=root    ---->数据库登录的用户名
jdbc.password=root    ---->数据库登录的用户名密码
==========================================================================================
<!-- 2.配置数据源(使用的druid的数据连接池)-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${jdbc.driver}"></property>
        <property name="url" value="${jdbc.url}"></property>
        <property name="username" value="${jdbc.username}"></property>
        <property name="password" value="${jdbc.password}"></property>
    </bean>

为什么要拆分Spring配置文件?

1.项目规模变大,配置文件可读性和维护性都会降低

2.多人修改同一配置文件时也容易发生冲突,影响开发效率

拆分方案

1.公用配置(包含数据源、事务等)+每个系统模块一个单独配置文件(包含Dao、Service以及Web控制器)

 

2.公用配置(包含数据源、事务等)+DAO Bean配置+业务逻辑Bean配置+Web控制器配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值