Spring基础

Spring基础部分

xml 配置文件

applicationContext.xml
	<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd 
       http://www.springframework.org/schema/aop 
       http://www.springframework.org/schema/aop/spring-aop.xsd
   ">
<bean id = "唯一标识"  class ="类的全限定名"/>
依赖注入(只介绍比较常用的方法)
构造方法注入(类中含有非空参的构造方法)
<constructor-arg name= "参数名"  ref = "对应的唯一标识"/>(参数类型为引用数据类型)
<constructor-arg name= "参数名"  value = "对应的唯一标识"/>(参数为基本数据类型或者String类型)
set方法注入(类中必须含有相应的set方法)
<property name ="参数名"  value = "属性值"/>
开启注解扫描
<context:component-scan  base-package="包的位置"/ >
让Spring容器管理 Druid连接池
<bean id="druidDataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/ssm_lx"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
</bean>
让Spring容器管理 QueryRunner对象
<bean id="queryRunner" class="org.apache.commons.dbutils.QueryRunner">
<!--通过构造函数方式 依赖注入-->
<constructor-arg name="ds" ref="druidDataSource"></constructor-arg>
</bean>
</beans>

注解

	@Component
		web层@Controller
		service层 @Service
		dao层 @Repository
	依赖注入
		@Autowired无法确定唯一类型  Spring框架提供
		@Qualifier("id")  按照id注入 Spring框架提供  !常用
		@Resource(name="id") jdk 提供的注解
	bean标签属性
		@Scope 
			value:
				singleton单例
				prototype多例
		@PostConstruct
			对应init-method
		@PreDestroy
			对应destroy-method

纯注解开发

	@Configuration标识当前类是Spring的一个配置类
	@ComponentScan替代xml中的`<context:component-scan/>`
	@Import引入其他配置类,被引入的配置类可以不加@Configuration注解
	@PropertySource:引入外部properties文件,注意加classpath:
	@Value对成员变量赋值
	@Bean将一个方法的返回值对象加入到Spring的容器当中管理
	@Qualifier可以使用在方法参数上,表明对应的形参引入/注入的对象类型
	注入properties配置文件中的键值对 例如:
    @Value("${jdbc.driverClassName}")
    (properties文件中的键为jdbc.driverClassName将值赋给下面的driverClassName)
    private String driverClassName;(这就完成了给driverClassName赋值 )

Spring对Junit的支持

介绍

junit运行的时候底层使用了Runner对象,有一个默认使用的Runner对象。
Spring对junit的支持,其实是自己实现了一个Runner对象(按照junit runner的要求实现)
Spring对junit的支持的体现
好处一:配置完之后,不需要我们手动的启动Spring
好处二:可以在junit测试类中使用@AutoWired等方式注入对象,直接对其进行调用测试

用法

Spring框架中的Runner对象, 替换Junit中的Runner对象
@RunWith(SpringJUnit4ClassRunner.class)
框架启动入口, 注解方式配置文件启动
@ContextConfiguration(classes = SpringConfig.class) java配置文件.class
框架启动入口, xml配置文件启动
@ContextConfiguration(locations = "classpath:beans.xml") xml配置文件
pom需要的依赖
	    <dependency>
           <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.0.2.RELEASE</version>
		</dependency>
		<dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
		</dependency>
		<dependency>
           <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.0.2.RELEASE</version>
	    </dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值