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注解表明当前是一个配置类@Configurationpublic 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配置方式。