Spring笔记(3)第一个Spring程序

环境搭建

一.Spring的jar包

前往maven仓库官网.,搜索Spring Context,选择对应得版本,放入项目的pom.xml。

<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.1.4.RELEASE</version>
</dependency>

二.Spring的配置文件

配置文件的放置位置:任意位置,没有硬性规定。

配置文件的命名:没有硬性要求,建议为applicationContext.xml。

思考:日后应用Spring框架时,需要进行配置文件路径的设置。
在这里插入图片描述

三.Spring的核心API

Struts:Action,ActionSupport,ServletActionContext

Mybatis:SqlSession,SqlSessionFactory

1.Spring:ApplicationContext

  • Spring提供的ApplicationContext工厂,用于对象的创建,可以解耦合。
  • ApplicationContext是个接口,主要由于要屏蔽掉应用不同场景的实现的差异

Spring主要提供ApplicationContext接口的两种实现

  • 非web环境:ClassPathXmlApplicationContext,主要应用于(main junit)
  • web环境:XmlWebApplicationContext

此时全局搜索ApplicationContext.Classes,如下图:
在这里插入图片描述
打开ApplicationContext的继承关系,如下图:
在这里插入图片描述
此时并没有看到XmlWebApplicationContext的继承,这是因为我们并没有导入Spring webmvc。因此我们导入以下;

<dependency>
	<groupId>org.springframework</groupId>
 	<artifactId>spring-webmvc</artifactId>
 	<version>5.1.4.RELEASE</version>
</dependency>

刷新ApplicationContext继承关系,如下图:
在这里插入图片描述

2.ApplicationContext—重量级资源

ApplicationContext工厂的对象会占用大量的内存。

不会频繁的创建对象:一个应用只创建一个工厂对象。

由此可以看出,重量级资源是会占用大量内存,不会频繁的创建,也就是共用的,也就是并发或者说是多线程的,即它是线程安全的。

Spring程序

  1. 创建类型
public class Person {
}
  1. 配置文件的配置,applicationContext.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">
    
    <!-- id是唯一的,class配置類的全限定名-->
    <bean id="person" class="com.zji.basic.Person" />
    
</beans>
  1. 通过工厂类,获得对象
@Test
public void test3(){
	//获得Spring的工厂
    ApplicationContext ctx = new ClassPathXmlApplicationContext("/applicationContext.xml");
    //通过工厂类获取对象
    Person person = (Person) ctx.getBean("person");
    System.out.println("person = "+person);
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

*『饶』*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值