spring的Java配置
1、创建maven项目
使用idea创建maven项目,这里顺便提一下,idea真的比eclipse好用,早点熟悉吧。然后就是maven是java项目管理最主流的工具,自己先配置一个试试,很好上手。
2、导入依赖
编辑pom文件
1、首先配置一下jdk版本和编码,两种方式,按道理任意一种都可以,出问题的话两种都加上吧,如下
<build>
<finalName>spring-learn</finalName>
<!--指定jdk版本和项目编码-->
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.4.6.v20170531</version>
</plugin>
</plugins>
</build>
<!--指定jdk版本和项目编码-->
<properties>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
</properties>
2、导入依赖,这里只需要spring的核心依赖,如果是web项目的话需要加上日志的依赖
<!--spring核心依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>
3、创建Bean
1、先展示一下目录结构(提示,在创建完“java”目录的时候,需要右键,make dictionnary as -> Source root,这样才能建包)
说明:
FunctionService是功能Bean用来被调用的
UseFunctionService是调用FunctionService的Bean
JavaConfig是spring的java配置
Main是测试配置是否生效的运行入口
2、FunctionService代码如下:
/**
* 定义一个待被使用的bean
*/
public class FunctionService {
public String sayHello(String word){
return "hello"+word+"!";
}
}
UseFunctionService代码如下:
/**
* 定义一个使用功能类的bean
*/
public class UseFunctionService {
FunctionService functionService;
public void setFunctionService(FunctionService functionService){
this.functionService = functionService;
}
public String sayHello(String word){
return functionService.sayHello(word);
}
}
到此就创建完成了两个Bean,但是要让它们被spring管理起来,我们还需要进行下面的操作。
4、配置
JavaConfig代码如下
/**
* 配置文件
*/
//使用@Configuration注解表明当前是一个配置类
@Configuration
public class JavaConfig {
//@Bean注解表明当前方法返回值是一个Bean,Bean的名称是方法名
@Bean
public FunctionService functionService(){
return new FunctionService();
}
@Bean
//注入FunctionService的Bean的时候直接调用functionService()
public UseFunctionService useFunctionService(){
UseFunctionService useFunctionService = new UseFunctionService();
useFunctionService.setFunctionService(functionService());
return useFunctionService;
}
}
5、运行
Main代码如下:
/**
* 运行入口
*/
public class Main {
public static void main(String[] args){
AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext(JavaConfig.class);
UseFunctionService useFunctionService = context.getBean(UseFunctionService.class);
System.out.println(useFunctionService.sayHello("java config"));
context.close();
}
}
运行结果:
6、总结
最后我们进行一下小结,以上流程式最简单的java的spring配置,虽然对实际项目用处帮助不大,不过作为java的spring配置入门,可以帮助我们了解java配置方式的思路。通过后面进一步的学习,我们会逐步加深并掌握基于注解和java的spring配置方式。