Spring程序开发的步骤
1.导入Spring开发的基本坐标
2.编写Dao接口和实现类
3.创建Spring核心配置文件
4.在Spring配置文件中配置UserDaoImpl
5.使用Spring的API获得Bean实例
Spring相关API
1)ClassPathXmlApplicationContext
它是从类的根据路径下加载配置文件推荐使用这种
2)FileSystemXmlApplicationContext
它是从磁盘路径上加载配置文件,配置文件可以在磁盘的任意位置
3)AnnotationConfigApplicationContext
当使用注解配置容器对象时,需要使用此类来创建spring容器。它用来读取注解
Spring配置数据源
数据源的开发步骤
1.导入数据源的坐标和数据库驱动坐标
2.创建数据源对象
3.设置数据源的基本连接数据
Spring注解开发
Spring原始注解
@Component:使用在类上用于实例化Bean
@Controller:使用在web层类上用于实例化Bean
@Service:使用在service层类上用于实例化Bean
@Repository:使用在dao层类上用于实例化Bean
@Autowired:使用在字段上用于根据类型依赖注入
@Qualifier:结合@Autowired一起使用用于根据名称进行依赖注入
@Resource:相当于@Autowired+@Qualifier,按照名称进行注入
@Value:注入普通属性
@Scope:标注Bean的作用范围
@PostConstruct:使用在方法上标注该方法是Bean的初始方法
@PreDestrot:使用在方法标注该方法是Bean的销毁方法
Spring新注解
@Configuration:用于指定类是一个Spring配置类,当创建容器时会从该类上加载注解
@ComponentScan:
用于指定Spring在初始化容器时要扫描的包
作用和在Spring的xml配置文件中
<context:component-scan base-package=“com.zcst”/>一样
@Bean:使用在方法上,标注将该方法的返回值存储到Spring容器中
@PropertyScource:用于加载.properties文件中配置
@Import:用于导入其他配置类
Spring集成Junit
Spring集成Junit问题解决思路
1.让SpringJunit负责创建Spring容器,但是需要将配置文件的名称告诉它
2.将需要进行测试的Bean直接在测试类中进行注入
Spring集成Junit步骤
1.导入spring集成Junit的坐标
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.1.2.RELEASE</version>
</dependency>
</dependencies>
2.使用@RunWith注解替换原来的运行期
@RunWith(SpringJUnit4ClassRunner.class)
3.使用@ContextConfiguration指定配置文件或配置类
@ContextConfiguration("classpath:applicationContext.xml")
4.使用@Autowired注入需要测试的对象
@Autowired
private UserService userService;
5.创建测试方法进行测试
@Test
public void test1(){
userService.save();
}
完整代码展示(运用配置文件)
package test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import service.UserService;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class SpringJunitTest {
@Autowired
private UserService userService;
@Test
public void test1(){
userService.save();
}
}
完整代码展示(运用全注解方式)
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes={SpringConfiguration.class})
//@ContextConfiguration("classpath:applicationContext.xml")
public class SpringJunitTest {
@Autowired
private UserService userService;
@Test
public void test1(){
userService.save();
}
}