/**
*@ author StormMaybin
*@ date 2017-01-13
*@ describe practise spring4.x
*/
生命不息,奋斗不止!
今天刚考完试,先来一篇小文章压压惊!
使用idea构建maven web 项目
maven 目录结构
pom.xml
Project Object Model,项目对象模型。通过xml格式保存的pom.xml文件。作用类似ant的build.xml文件,功能更强大。该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。
<?xml version="1.0" encoding="UTF-8"?>
<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>
<properties>
<java.version>1.7</java.version>
</properties>
<groupId>com.stormma.demo</groupId>
<artifactId>spring4</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!--spring 4 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.1.6.RELEASE</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
如果还要添加其他的依赖包,直接在填写依赖包即可。
spring4示例
FunctionService.java
package com.stormma.service;
import org.springframework.stereotype.Service;
/**
* Created by lenovo on 2017/1/13.
*/
@Service//1
public class FunctionService {
public String sayHello (String word) {
return "Hello " + word + " !";
}
}
//1 Service注解,表明这是一个Service,并且交给Spring IOC容器进行管理
UseFunctionService.java
package com.stormma.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* Created by lenovo on 2017/1/13.
*/
@Service//1
public class UseFunctionService {
@Autowired//2
private FunctionService functionService;
public String sayHello (String word) {
return functionService.sayHello(word);
}
}
//1 同上1
//2 自动装配,IOC容器注入实例
Config.java
package com.stormma.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
/**
* Created by lenovo on 2017/1/13.
*/
@Configuration//1
@ComponentScan ("com.stormma")//2
public class Config {
}
//1 标记这是一个配置文件
//2 扫描com.stormma包下的所有@Service @Component @Repository 和@Controller 并注册成bean.
Main.java
package com.stormma.main;
import com.stormma.config.Config;
import com.stormma.service.UseFunctionService;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
/**
* Created by lenovo on 2017/1/13.
*/
public class Main {
public static void main(String [] args) {
AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext(Config.class);
UseFunctionService useFunctionService = context.getBean(UseFunctionService.class);
System.out.println(useFunctionService.sayHello("Sprig mvc"));
context.close();
}
}