由于公司研发用到spring boot,故开始学习spring boot。本系列主要参考spring boot实战,来完成。
1.1 spring 环境搭建,使用maven配置如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.antsoldier.chapter01</groupId> <artifactId>springBoot</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <org.springframework-version>4.1.5.RELEASE</org.springframework-version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${org.springframework-version}</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <span style="color:#ff0000;"><encoding>UTF-8</encoding> </span> </configuration> </plugin> </plugins> </build> </project>
1.2 spring 四大原则:
一:使用POJO进行轻量级和最小侵入式开发
二:通过依赖注入和基于接口编程实现松耦合
三:通过AOP和默认习惯进行声明式编程
四:使用AOP和模板减少模式化代码
1.3 声明Bean的注解:
@Component @Service @Repository @Controller
注入Bean的注解:
@Autowired @Inject @Resource 这三个注解可以放在属性上,也可以放在set方法之上
一个简单的依赖注入的例子:
(1)被注入对象,通过@service引入spring 容器
(2)使用注入spring容器对象的类 使用@Service将其引入到容器,@Autowired自动注入对象
(3)主配置类
@Configuration //表示这是一个主配置类
@ComponentScan("com.antsoldier.service") //表示要spring扫描的包
(4)运行程序
1.4 spring 4.x不推荐使用配置文件进行配置的方式,更推荐使用Java配置方式进行配置。
Java配置是通过@Configuration和@Bean来实现的:
@Configuration声明当前类是一个配置类,相当于一个Spring配置的XML
@Bean注解在方法上,声明当前方法的返回值是个bean
简单示例如下:
Java 配置类:
测试主类
1.5 spring AOP例子
@Aspect声明一个切面
@After @Before @Around 定义建言(advice),可直接将拦截规则(切点)作为参数
@After @Before @Around 参数的拦截规则为切点(point)
修改pom文件 添加新的依赖
编写使用方法规则被拦截的类
编写切面
编写主配置类
执行主方法
切面编程参考:http://www.cnblogs.com/xrq730/p/4919025.html