@Configuration的使用

1.创建Maven项目,项目名称springdemo22,如图所示

@Configuration的使用


2.配置Maven,修改项目中的pom.xml文件,修改内容如下
<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 ">
  <modelVersion>1.0.0</modelVersion>
  <groupId>shequ</groupId>
  <artifactId>springdemo13</artifactId>
  <version>0.0.1-SNAPSHOT</version>
 
  <properties>
   <Java.version>1.7</java.version>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  </properties>
 
  <repositories>
   <repository>
    <id>codelds</id>
    <url>https://code.lds.org/nexus/content/groups/main-repo</url>
   </repository>
  </repositories>
 
  <dependencies>
   <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.10</version>
   </dependency>
   
   <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.1.4.RELEASE</version>
   </dependency>
   
   <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.1.4.RELEASE</version>
    </dependency>
   
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>4.1.4.RELEASE</version>
    </dependency>
   
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.34</version>
    </dependency>
     
  </dependencies>
  <build/>
</project>

3.在src/main/java下创建实体Bean Forum,包名(com.mycompany.shequ.bean)如图所示

@Configuration的使用


4.实体Bean Forum的内容如下
package com.mycompany.shequ.bean;

public class Forum {
 private int fid;
 private String name;
 public int getFid() {
  return fid;
 }
 public void setFid(int fid) {
  this.fid = fid;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}

5.在src/main/java下创建接口IForumDao,包名(com.mycompany.shequ.service)如图所示

@Configuration的使用


6.接口IForumDao的内容如下
package com.mycompany.shequ.service;

import com.mycompany.shequ.bean.Forum;

public interface IForumDao {
 public Forum getForumById(int fid);
}

7.在src/main/java下创建接口IForumDao的实现类ForumDaoImpl,包名(com.mycompany.shequ.service.impl)如图所示

@Configuration的使用


8.实现类ForumDaoImpl的内容如下
package com.mycompany.shequ.service.impl;

import com.mycompany.shequ.bean.Forum;
import com.mycompany.shequ.service.IForumDao;

public class ForumDaoImpl implements IForumDao {

public Forum getForumById(int fid) {
  Forum forum = new Forum();
  forum.setFid(fid);
  forum.setName("@Configuration");
  return forum;
 }

}

9.在src/main/java下创建配置类AppConfig,包名(com.mycompany.shequ.config)如图所示

@Configuration的使用

10.配置类AppConfig的内容如下
package com.mycompany.shequ.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.mycompany.shequ.service.IForumDao;
import com.mycompany.shequ.service.impl.ForumDaoImpl;

@Configuration
public class AppConfig {
 
 @Bean(name="forumdao")
 public IForumDao forumDao(){
  return new ForumDaoImpl();
 }
}

11.在src/test/java下创建测试类ForumDaoTest,包名(com.mycompany.shequ.service),如图所示

@Configuration的使用

12.测试类ForumDaoTest的内容如下
package com.mycompany.shequ.service;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import com.mycompany.shequ.bean.Forum;
import com.mycompany.shequ.config.AppConfig;
import com.mycompany.shequ.service.IForumDao;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7ce2e846e90b408e4f4d4217b5e03260.html