zoukankan      html  css  js  c++  java
  • 1.0-springboot的java配置方式

    1.创建User实体类。

    @Data
    public class User {
        private String username;
        private String password;
        private Integer age;
    }

    2.创建UserDao用于模拟数据库交互。

    public class UserDao{
        public List<User> queryUserList() {
            List<User> result = new ArrayList<User>();
            //模拟数据库查询
            for(int i = 1;i < 10; i++) {
                    User user = new User();
                    user.setUsername("username_" + i);
                    user.setPassword("password" + i);
                    user.setAge(i);
                    result.add(user);
            }
            return result;
        }
    }

    3.编写UserService用于实现User数据操作业务逻辑。

    @service
    public class UserService{
        @Autowired//注入Spring容器中的bean对象
        private UserDao userDao;
        public List<User> queryUserList() {
            //调用userDao中的方法进行查询。
            return this.userDao.queryUserList();
        } 
    }

    4.编写SpringConfig用于实例化Spring容器。

      2017/12/26修改

      注:这种以@Bean方式显示注入bean的方式,建议方法名与要注入的类名保持一致(这样创建的bean的id值就为方法名)。这样在调用SPEL表达式时就可以直接ID值调用了。

    @Configuration//通过该注解来表明该类是一个spring的配置,相当于一个xml文件。
    //配置扫描包。
    @ComponentScan(basePackages = "cn.my.springboot.javaconfig")
    public class SpringConfig {
        @Bean//通过该注解来表明是一个Bean对象,相当于xml中的<bean>
        public UserDao getUserDao() {
            return new UserDao();//直接new对象作演示。
        }
    }

    5.编写测试方法用于启动Spring容器。

    public class Test {
        public static void main(String[] args) {
            //通过java配置来实例化Spring容器。
            AnnotationConfigApplicationContext context = new 
            AnnotationConfigApplicationContext(SpringConfig.class); 
    
            //在Spring容器中获取bean对象
            UserService userService = context.getBean(UserService.class);
    
            //调用对象中的方法
            List<User> list = userService.queryUserList();
            for(User user : list) {
                System.out.println(user.getUsername() + "|" user.getPassword() + "|" user.getAge());
            //销毁该容器
            context.destroy;
            }
        }
    }

    测试结果: 

    可以使用java代码完美的替代XML配置文件。 
    至于结构请不清晰就是仁者见仁智者见智。

  • 相关阅读:
    第一章 简介(待续)
    第十六章 漫话网站架构师(待续)
    第十五章 网站架构师职场攻略(待续)
    第十四章 架构师领导艺术(待续)
    第十三章 大型网站典型故障分析案例(待续)
    上帝造题的七分钟2/花神游历各国/GSS4 线段树维护区间开方 By cellur925
    LuoguP1606 [USACO07FEB]荷叶塘Lilypad Pond 【最短路】By cellur925
    NOIp2013 车站分级 【拓扑排序】By cellur925
    NOI题库--盒子和小球系列 By cellur925
    关于对动态规划的思考 【转】
  • 原文地址:https://www.cnblogs.com/lilinzhiyu/p/7921954.html
Copyright © 2011-2022 走看看