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容器。

@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配置文件。  至于结构请不清晰就是仁者见仁智者见智。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏技术墨客

Spring核心——纯Java运行与@Bean

在3.0之前的Spring核心框架中,我们启动一个Spring容器必须使用一个XML文件。而到了3.X之后的版本Spring为创建容器新增了一个入口类——Ann...

713
来自专栏文大师的新世界

5. spring-boot REST 全局异常处理

单页应用越来越多以及移动化之后,服务化已经是老生常谈了,在前文代码的基础上做些简单的通用模块的处理,后端返回结果的不一致性真的会给前端带来很大的麻烦,故此为止:

1914
来自专栏美团技术团队

这个Spring高危漏洞,你修补了吗?

前言 2009年9月Spring 3.0 RC1发布后,Spring就引入了SpEL(Spring Expression Language)。对于开发者而言,引...

93111
来自专栏JadePeng的技术博客

使用SpringBoot开发REST服务

本文介绍如何基于Spring Boot搭建一个简易的REST服务框架,以及如何通过自定义注解实现Rest服务鉴权 搭建框架 pom.xml 首先,引入相关依赖,...

4695
来自专栏Spring相关

第2章—装配Bean—自动化装配Bean

CD和CDPlayer,如果你不将CD放入(注入)到播放器中,那么CD播放器其实是没多大用处的,所以说,CD播放器是依赖于CD才能完成它的使命.

672
来自专栏cmazxiaoma的架构师之路

Java开发技术大杂烩(三)之电商项目优化、rabbitmq、Git、OSI、VIM、Intellj IDEA、HTTP、JS、Java

3857
来自专栏ImportSource

Spring Boot下的TDD(测试驱动开发)

首先来看下TDD三原则吧: You are not allowed to write any production code unless it is to m...

1.1K11
来自专栏一个会写诗的程序员的博客

《Spring Boot极简教程》第9章 Spring Boot集成Scala混合Java开发参考资料

本章我们使用Spring Boot集成Scala混合Java开发一个Web性能测试平台。

1422
来自专栏一个会写诗的程序员的博客

《Kotlin极简教程》第2章 快速开始:HelloWorld

我们在本章将介绍使用Kotlin程序设计语言,分别使用命令行、应用程序、Web RESTFul、Android、Kotlin JavaScript等方式向世界问...

843
来自专栏Java后端技术

slf4j介绍以及实现原理窥探

  slf4j(全称是Simple Loging Facade For Java)是一个为Java程序提供日志输出的统一接口,并不是一个具体的日志实现方案,就好...

722

扫码关注云+社区