初识 Spring


Spring 教程-睿站-狂神说

Spring 优点

  • Spring 是一个开源的免费的框架(容器)
  • Spring时一个轻量级的,非入侵式的框架
  • 控制反转(IOC (Inversion of Control)),面向切面编程(AOP(Aspect Oriented Programming))
  • 支持事务的处理,对框架整合的支持

从配置创建对象

如果我们自己想在 Java 中创建多个对象,只能笨拙地 O o1 = new O(), O o2 = new O()

但是在 Spring 中,只需要填写配置文件*.xml,就能根据文件中的属性自动为我们创建对象,

然后我们可以从 XmlContext 中去获取我们创建的对象,相当于我们的对象被 Spring 托管了。







注入方式

  • set注入-睿站-狂神说
  • 命名空间注入-睿站-狂神说: 就是 p(property)和 c (constructor)

模式

  • 单例模式:bean 中一个对象就是一个对象,context中只有一个
  • 原型模式:每次 get 都能得到一个新对象

autowired

自动装配

  • ByName: 在 xml 中指定
  • ByType: 在 xml 中指定
  • 注解 @Autowired: 通过注解实现了 ByName,可以不用写 set 方法,因为底层通过反射实现了
  • 注解 @Resource: 默认通过byName的方式实现,如果找不到名字,则通过byType实现!

使用注解开发

Spring 能够解析注解,本来我们需要在 xml 中进行繁琐的配置,可以用注解来简化。

常用的注解有:

component

  • dao: @Repository
  • service: @Service
  • controller: @Controller

专业地说,将我们的类托管到 Spring 的容器中。

小结

转自狂神说

xml 与注解:

  • xml 更加万能,适用于任何场合!维护简单方便。注解不是自己类使用不了,维护相对复杂!
    xml与注解最佳实践:
  • xml 用来管理bean;
    • 注解只负责完成属性的注入;
    • 我们在使用的过程中,只需要注意一个问题:必须让注解生效,就需要开启注解的支持