使用Java方法配置Spring代码解析
作者:CodeHuba 发布时间:2023-07-15 09:20:59
标签:Java,配置,Spring
使用Java的方式配置Spring
我们现在要完全不使用Spring的xml配置,全权使用Java来配置Spring!
JavaConfig是Spring的一个子项目,在Spring4之后,他成为了一个核心功能。
实体类:
public class User {
private String name;
public String getName() {
return name;
}
@Value("huba") //属性注入值
public void setName(String name) {
this.name = name;
}
}
配置类:
package com.kuang.config;
import com.kuang.pojo.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
@Configuration //这个也会spring容器托管,注册到容器中,因为他本来就是一个@Component
//@Configuration:代表这个一个配置类,就等同于beans.xml
@ComponentScan("com.kuang.pojo")
@Import(MyConfig2.class)
public class MyConfig {
//注册一个bean,就相当于我们之前写的<bean>标签
//方法名就相当于bean标签中的id
//方法的返回值就相当于bean标签中的class属性
@Bean
public User user(){
return new User();//就是返回要注入bean的对象
}
}
测试类:
import com.kuang.config.MyConfig;
import com.kuang.pojo.User;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class myTest {
@Test
public void test(){
//如果完全使用配置类方式,只能通过AnnotationConfigApplicationContext获取容器,通过配置类的class对象加载!
ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class);
User user = context.getBean("user", User.class);
System.out.println(user.getName());
}
}
这种纯Java的配置方式,在SpringBoot中随处可见!
来源:https://www.cnblogs.com/CodeHuba/p/13559405.html


猜你喜欢
- 什么是Java NIO?同步非阻塞io模式,拿烧开水来说,NIO的做法是叫一个线程不断的轮询每个水壶的状态,看看是否有水壶的状态发生了改变,
- Java在控制台打印本月日历在学习《Java核心技术卷I·基础知识》第10版 的时候里面有一个小例子,就是在控制台上打印日历的一个例子,就想
- 基于比较的排序算法基本原理及Java实现1. 七大基于比较的排序-总览1.1常见基于比较的排序分类1.2时间复杂度,空间复杂度以及稳定性。稳
- 实践过程效果代码class BaseClass{ public class Win32
- 本文实例展示了DevExpress实现自定义TreeListNode的Tooltip的方法,具体方法如下所示:主要功能代码如下:/// &l
- 问题描述 在某一天打开电脑后,idea里的代码无缘无故地就爆红了,不但spring框架爆红,就
- 使用的是idea+restful风格第一:引入依赖为:<!--poi--> <dependenc
- 在nginx.conf文件的http模块新增以下内容gzip &nbs
- Command 常用属性CommText 要下达至数据源的命令CommanTimeout 出错等待时间Command 三种方法Execute
- 本文实例为大家分享了使用ContentProvider实现查看系统短信功能的具体代码,供大家参考,具体内容如下activity_main.x
- 三种方式 下面为大家一一对应过滤器的方式 * 的方式过滤器的方式这种方式简单点 但是可配置性不高注意:一定得扫描到spring容器中创建一个
- 苹果的iphone有语音识别用的是Google的技术,做为Google力推的Android 自然会将其核心技术往Android 系统里面植入
- 一、Arthas官方文档https://arthas.aliyun.com/doc/二、springBoot整合方式1、pom文件引入<
- 本文以案例形式分析了Android中TelephonyManager类的用法。分享给大家供大家参考。具体如下:目录结构:main.xml布局
- 本篇文章介绍selenium 操作浏览器阅读目录浏览器最大化 前进,后退, 刷新截图操作模拟鼠标操作杀掉Windows浏览器进程浏览器最大化
- 一、介绍这个类是继承自ImageView的,所以对于这个控件我们可以使用ImageView的所有属性android.support.desi
- activity_main.xml在res/layout文件中,放置一个TextView控件用于显示购物商城界面的标题,放置一个ListVi
- 本文详述了android抽奖程序的实现方法,程序为一个抽奖大转盘代码,里面定义了很多图形方法和动画。实现主要功能的SlyderView.ja
- Java 17 更新了,作为一个 10 年的 Java 程序员,还是有亿点点兴奋的,Kotlin 的群里面也是各种讨论 Java 的新特性。
- Java8 HashMap键与Comparable接口最容易使 HashMap 发生哈希冲突的方法是什么呢?我们可以创建一个类,让它的哈希函