美文网首页
springBoot学习01--利用java配置优于xml配置

springBoot学习01--利用java配置优于xml配置

作者: exmexm | 来源:发表于2017-10-06 12:01 被阅读0次

    先总结整个demo的作用:
    demo其实就是重点说明:
    1、@Configuration : 通过注解类,证明该类是Spring 的配置 相当于xml文件
    2、@Bean : 通过注解有@Configuration注解的类的方法,相当于一个bean对象,即xml中的<bean>

    直接上实例:
    1、编写User:

    public class User {
    
        private String username;
    
        private String password;
    
        private Integer age;
    //省略getter和setter
    }
    

    2、编写DAO

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

    3、编写service

    @Service
    public class UserService {
        @Autowired // 注入Spring容器中的bean对象
        private UserDao userDao;
    
        public List<User> queryUserList() {
            // 调用userDAO中的方法进行查询
            return this.userDao.queryUserList();
        }
    }
    
    4、利用java类编写配置(重点)
    @Configuration // 通过噶注解证明该类是Spring 的配置 相当于xml文件
    @ComponentScan(basePackages = "com.winney.springjavaxml") //自动扫描包,我这里的所有dao、pojo、service都是放在同一个包下 的
    public class SpringConfig {
        @Bean // 通过该注解注解方法 相当于一个bean对象,即xml中的<bean>
        public UserDao getUserDao() {
            return new UserDao(); // 直接new对象
        }
    }
    

    5、测试

    public class Mian {
        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.getPassword());
            }
            context.close();
            // 销毁该容器
            context.destroy();
        }
    }
    

    相关文章

      网友评论

          本文标题:springBoot学习01--利用java配置优于xml配置

          本文链接:https://www.haomeiwen.com/subject/tuelyxtx.html