简单案例初识spring框架

二、Sping快速入门

关于spring的一些好处,核心容器(Beans,Core,Context,Expression Language)的一些东西,我们先放在一边,今天我们学习关于spring的两大核心技术(IOC(控制反转/依赖注入),AOP(面向切面编程))中的IOC。

IOC可以从两个层面来看待,分别是控制反转和依赖注入,也可以说是一个过程,本人的理解是先控制反转,然后依赖注入,具体步骤如下:

  1. 创建新一个项目

在这里插入图片描述

  1. 创建一个Maven项目,

在这里插入图片描述

  1. 写入项目名,springTest即为项目名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tiu6qJwl-1600158854692)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915155110686.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hBnIDnhc-1600158854694)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915155212771.png)]

  1. 首先导入jar包,第一行为jar包的版本,需要放入在下,其他为spring的一些jar包,需要放在下
<spring.version>4.0.2.RELEASE</spring.version>

<!-- spring框架包 -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-oxm</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context-support</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-expression</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-orm</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>${spring.version}</version>
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.8</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${spring.version}</version>
    </dependency>
  1. 在main文件夹下创建java和resource文件,分别设置为类文件和资源文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BWPhgdUi-1600158854695)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915160235313.png)]

  1. 创建实体类HelloSpring

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D20oEhIo-1600158854696)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915160908470.png)]

  1. 在resource下创建spring.xml 文件 ,需要加入有关spring的头部
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd">
  <!-- 相当创建对象new
    class 类的完全限定名
    id   别名-->
    <bean id="helloSpring" class="com.test.pojo.HelloSpring"></bean>
</beans>
  1. 在main文件夹下创建test类,作为测试类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GMGnkNef-1600158854696)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915161514933.png)]

  1. 快捷键创建测试类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SRL6Lp8K-1600158854697)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915161603497.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NnwFF3Gh-1600158854698)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915161646542.png)]

  1. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AK81BpKP-1600158854698)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915162030812.png)]

完成测试类

//加载spring配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring.xml");
//获取bean  此时的bean与spring.xml 中bean的id要一致
HelloSpring helloSpring =(HelloSpring) applicationContext.getBean("helloSpring");
helloSpring.show();

11. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rDweq9FZ-1600158854699)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915162120998.png)]

显示就证明完成了基础的spring配置,证明了控制反转。

那依赖注入呢?

接下来在上个案例的基础上继续书写

  1. 回到HelloSpring实体类,这里要注意的是@Setter就相当于封装的setter方法
public class HelloSpring {
    @Setter
    private  String msg;
    public  void show(){
        System.out.println(msg);
    }
}
  1. 到spring.xml文件中
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd">
  <!-- 相当创建对象new
    class 类的完全限定名
    id   别名-->
  <!--这个过程相当于控制反转-->
    <bean id="helloSpring" class="com.test.pojo.HelloSpring">
       <property name="msg" value="这是spring相当于依赖注入"></property>
    </bean>
</beans>
  1. 回到test测试类中直接运行,结果截图如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aYBjKxZv-1600158854699)(C:\Users\C\AppData\Roaming\Typora\typora-user-images\image-20200915163207537.png)]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值