Java三十八篇:回顾Spring


大家好!我是小刘,Java程序员对spring家族在熟悉不过了,吃饭的家伙呀!

可以说是spring把Java推上了又一波Java高峰。

一、Spring介绍

在日常开发过程中经常会提到三大框架(SSM)指的是Spring、SpringMVC、Mybatis。其中一个非常重要的框架就是Spring。Spring目前隶属于皮沃托公司,Spring在刚刚出来的时候只有Spring Framework一款产品。我们习惯性的简称它为Spring,但是发展到现在Spring旗下已经有非常非常多的框架了,例如:SpringBoot、SpringCloud、SpringData、SpringSecurity等等。但是我们还是习惯性成将Spring Framework成为Spring。

Java三十八篇:回顾Spring
二、Spring到底是什么框架

Spring它并不想Mybatis专门去解决某一个层面的问题,它在项目成扮演的是一个管理者的角色,负责对我们的项目中的对象进行管理,包括创建、注入、代理等等。实现了一个解耦的目的。Spring在管理对象时会将对象存储起来,所以Spring我们也可以将它看成一个容器。

Spring的能力Java三十八篇:回顾Spring

https://spring.io/projects/spring-boot  官网

Spring的生态

覆盖了:

web开发

数据访问

安全控制

分布式

消息服务

移动开发

批处理

三、Spring的两大核心能力
IOC (控制反转)

IoC inversion of control 控制反转,对于依赖的管理由调用方转移到Spring的容器中。

DI  dependency injection 依赖注入,强调属性的注入。

IoC与DI是同一件事情的两种描述方式

UserController   ->  UserService

Before userService是由UserController创建并管理

<bean id="dao" class="com.woniuxy.dao.Dao">
<property name="properties">//对应了类中Properties对象
<props>
<prop key="url">jdbc:mysql://localhost/woniudb</prop>
<prop key="driver">com.mysql.jdbc.Driver</prop>
</props>
</property>
</bean>

注解版的IOC

注解版的IOC所使用的容器为:AnnotationConifgApplicationContext

使用注解创建对象:

使用注解创建对象可选的注解共4个:@Component、@Controller、@Service、@Repository

@Component:通用注解,可以添加在任意类的上面用于创建该类的对象。

@Controller:专用于创建控制层的对象

@Service:专用于创建业务层的对象

@Repository:专用于创建数据层的对象

使用注解完成对象创建的基本步骤

使用注解完成依赖注入共两个注解@Resource和@Autowired

@Resource:(java 提供的注解)在注入对象时优先从容器中注入一个和属性名称相同的对象。如果和这个属性名称相同的对象和属性类型不匹配将会报错。如果在容器中没有找到和这个属性名称相同的对象,再通过类型进行注入。ByName->ByType

@Autowired:(spring提供的注解)注入对象时优先通过类型去查找,如果同一个类型的对象在容器中有多个,它会在通过属性名称完成查找,如果在这个多个对象中有和它的属性名称相同的对象,就将该对象注入过去。如果这些对象和属性名称都不匹配,就抛出异常。

下一章回顾 Spring  AOP

留言

本篇文章来源于微信公众号: 小刘Java之路

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/11046.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!