zoukankan      html  css  js  c++  java
  • Spring泛型依赖注入

    1、定义基础仓库

    package com.spring.generic.di;
    
    public class BaseRepository<T> {
    
    }

    2、定义基础服务层

    复制代码
    package com.spring.generic.di;
    
    import org.springframework.beans.factory.annotation.Autowired;
    
    public class BaseService<T> {
    
        @Autowired
        protected BaseRepository<T> repository;
        
        public void add(){
            System.out.println("add...");
            System.out.println(repository);
        }
    }
    复制代码

    3、定义User服务层

    复制代码
    package com.spring.generic.di;
    
    import org.springframework.stereotype.Service;
    
    @Service
    public class UserService extends BaseService<User>{
        
    }
    复制代码

    4、定义仓库服务层

    复制代码
    package com.spring.generic.di;
    
    import org.springframework.stereotype.Repository;
    
    @Repository
    public class UserRepository extends BaseRepository<User>{
        
    }
    复制代码

    5、测试类

    复制代码
    package com.spring.generic.di;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Main {
        public static void main(String[] args) {
            ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-generic.xml");
            
            UserService userService = (UserService)ctx.getBean("userService");
            userService.add();
        }
    }
    复制代码
  • 相关阅读:
    php提示undefined index的几种解决方法
    划分树(poj2104)
    ACM-ICPC 2018 南京赛区网络预赛B
    AC Challenge(状压dp)
    UVALive5966(bfs)
    UVALive
    STL next_permutation 算法原理和实现
    凸包算法
    poj1873(枚举+凸包)
    CodeForces
  • 原文地址:https://www.cnblogs.com/soundcode/p/6481611.html
Copyright © 2011-2022 走看看