zoukankan      html  css  js  c++  java
  • 基于annotation的spring注入

    1. 配置文件beans.xml
      <?xml version="1.0" encoding="UTF-8"?>
      <beans xmlns="http://www.springframework.org/schema/beans"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:context="http://www.springframework.org/schema/context"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
                                  http://www.springframework.org/schema/beans/spring-beans.xsd
                                  http://www.springframework.org/schema/context
                                  http://www.springframework.org/schema/context/spring-context.xsd">
          <!-- 打开annotation功能 -->
          <context:annotation-config/>
          <!-- 设定读取annotation的范围 -->
          <context:component-scan base-package="com.gcflowers.spring"/>
             
      </beans>
    2. 在类上使用component("xx")来代替<bean id="xx" class="xxx.xx"></bean>,依次为每个类添加@Component("xx")如:
      @Component("userDao")
      public class UserDao implements IUserDao {

          public void add(User user) {
              System.out.println("add");
          }

          public void delete(int id) {
              System.out.println("delete");

          }

          public User load(int id) {
              return new User(1,"zc");
          }

      }
    3. 在类的set方法上使用@Resource来注入,如:
      @Component("userAction")
      @Scope("prototype")
      public class UserAction {

          private IUserService userService;
          private User user;
          private int id;
          
          public void add(User user){
              userService.add(user);
          }
          
          public void delete(){
              userService.delete(id);
          }
          
          public void load(){
              userService.load(id);
          }

          public IUserService getUserService() {
              return userService;
          }
          
          //默认按名称
          @Resource
          public void setUserService(IUserService userService) {
              this.userService = userService;
          }

          public User getUser() {
              return user;
          }

          public void setUser(User user) {
              this.user = user;
          }

          public int getId() {
              return id;
          }

          public void setId(int id) {
              this.id = id;
          }
          
      }
    4. 一般使用@Controller("xxAction"),@Repository("xxDao"),@Service("xxService")来代替@component("xx"),
  • 相关阅读:
    【JavaScript】7-27 冒泡法排序 (20分)
    【JavaScript】7-26 单词长度 (15分)
    【JavaScript】7-25 念数字 (15分)
    【JavaScript】7-24 约分最简分式 (15分)
    自适应单本小说网站源码,基于bootstrap+dedecms。
    草根站长建站需要掌握或者了解的5种技术
    5个国内优秀网站设计案例分享
    (转)常用RGB色值表
    小波变换和motion信号处理(三)(转)
    小波变换和motion信号处理(二)(转)
  • 原文地址:https://www.cnblogs.com/charleszhang1988/p/3045967.html
Copyright © 2011-2022 走看看