spring

1 xml依赖注入的几种方式(也就是给对象注入数据或者其他类对象,比如@Autowired)

1)构造函数注入。相当于利用类的有参构造函数.

2)set方法注入。相当于利用类的set方法.

3)复杂类型/集合类型注入。类中成员变量array list set map property,以及对应的set方法。

2 注解类型

1)基本类型和string类型可以通过value注解来注入。可以使用spring的el表达式,比如${表达式}。要结合@PropertySource来配合使用,这个注解目的是指定读取value的配置文件的位置和名称。

2) 对象注入 Component  Controller Service Repository。 依赖注入 ,下面三种只用于bean注入,基本类型string类型无法通过这些注解实现注入,另外集合类型只能通过xml注入。

2.1)Autowired

2.1.1)默认自动按照类型注入。

当有多个接口的实现类时, 使用变量名称在ioc容器中再按照key来寻找。(蓝线所画内容,变量名字都不匹配时就会报错)

2.2)Qualifier,不能独立使用,必须跟Autowired一块使用,可以指定名字,这样就不需要更改变量名字了。

@Autowired
@Qualifier(value = "accountDao2")

2.3)Resource 直接按照bean的id注入,独立使用。

@Resource(name="accountDao2")

3 配置类Configuration(主要作用是将外部引入的发布jar包来交给spring ioc管理,而非自己写的类)

配置类中全是方法,那么方法中获取的对象怎样注入容器呢?答案就是Bean注解。

@Bean  用在方法上,用于把当前方法的返回值存入spring容器中。 Bean的属性name用于指定bean的id,如果没有写,id默认是当前方法的名称;value是返回的类。细节:如果注解方法有参数,spring框架会去容器中查有没有可用的对象,查找方法跟Autowired一样。

3.1)假设SpringConfiguration总配置类,JdbcConfig为其中一个子配置类。

@Import注解,value属性是需要引入的子配置类的字节码JdbcConfig.class。他的作用跟后两步加起来效果一样,第一步是直接在JdbcConfig类上面加上@Configuration注解,只有这样才会先识别JdbcConfig这个配置类,之后再读JdbcConfig这个类里面@Bean 注解提取返回的对象注入容器;第二步是在主配置类SpringConfiguration的@ComponentScan注解加上子配置类的路径信息,多个路径逗号分割,比如@Component("com.itheima","config")。

 

二 AOP

1 通配符含义

全名称
  public void com.tal.service.impl.AccountServiceImpl.saveAccount()
访问修饰符可以省略
  void com.tal.service.impl.AccountServiceImpl.saveAccount()
返回值可以使用通配符,表示任意返回值
  * com.tal.service.impl.AccountServiceImpl.saveAccount()
包名可以使用通配符,但是有几级包,就要使用几个 *.
  * *.*.*.*.AccountServiceImpl.saveAccount()
包名可以使用.. 表示当前包及其子包
  * *..AccountServiceImpl.saveAccount()
全通配写法,类名方法名都可以使用通配符,但是()不包含任何参数
  * *..*.*()
参数列表:
  可以直接使用数据类型
    基本类型直接写名称   int
    引用类型写包名.类名的方式   java.lang.String
  可以使用通配符表示任意类型,但是必须有参数。
  也可以用..表示有无参数均可以,如果有参数就是任意类型
全通配写法
  * *..*.*(..)
  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值