前言

Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

理解什么是Spring?

  • Spring是一个框架
  • Spring是一个容器框架
  • 用于管理bean,并维护bean之间的关系

Spring的核心机制

  • Bean:可以是java中任何对象,可以使Javabean/service/servlet/dao,Spring就是通过管理每一层的bean,来实现管理整个项目
    • 管理bean的实例化,对象的诞生
    • 管理对象的关系(类中的对象属性)
  • IOC/DI
    • IOC(inverse of control):控制反转:service的控制权移交给Spring来管理
      • 以前所有的对象都是new出来的,现在用了Spring之后所有的对象都是有Spring来管理的
    • DI(dependency injection):依赖注入
      • Service依赖于对象属性dao,由Spring将dao对象注入到service中,体现了管理service和dao的关系(通过Spring的注入来实现的)
    • AOP(aspect oriented programming):面向切面编程(面向所有对象编程)

Spring入门案例

第一步:引入jar包

第二步:编写测试bean

helloService
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class UserService {
private String name;

//UserService与ByService就建立了对象间的关系
private ByeService byeService;

public ByeService getByeService() {
return byeService;
}

public void setByeService(ByeService byeService) {
this.byeService = byeService;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
public void sayHello() {
System.out.println("hello:"+this.name);
}
}
ByeService
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class ByeService {
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public void sayBye() {
System.out.println("bye:"+this.name);
}
}

第三步:配置applicationContext.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd">

<!-- 下面这个配置就相当于UserService service = new UserService()
Spring框架一加载,就会读取该配置文件,读取到bean的配置,去实例化bean
-->
<bean id="helloService" class="bean.UserService">
<!-- 属性注入,相当于setName方法 -->
<!-- 基本属性 -->
<property name="name">
<value>重庆</value>
</property>

<!-- 对象类型属性 -->
<property name="byeService" ref="byeService"></property>
</bean>

<bean id="byeService" class="bean.ByeService">
<property name="name">
<value>成都</value>
</property>

</bean>

</beans>
注意:因为helloService里面有一个byeService对象,所以在使用的时候对于pojo对象属性需要用到ref=”该pojo对象的bean id”

第四步:编写好测试类使用Spring

SSM整合所需的所有jar包下载

👉 百度云下载 密码:6yy3

ps:因作者能力有限,有错误的地方请见谅

  • 喜欢这篇文章的话可以用快捷键 Ctrl + D 来收藏本页
× 请我吃糖~
打赏二维码