Spring 使用javaconfig配置
除了使用xml,spring提供javaconfig配置,下面是简单的例子:
1.声明接口
/**
*
*/
package com.junge.demo.spring.service; /**
* 表演
* @author Administrator
*
*/
public interface IPerface { void play();
}
2.添加实现类
/**
*
*/
package com.junge.demo.spring.service.impl; import org.springframework.stereotype.Service; import com.junge.demo.spring.service.IPerface; /**
* 武术表演
* @author Administrator
*
*/
@Service
public class WushuPerface implements IPerface { /* (non-Javadoc)
* @see com.junge.demo.spring.service.IPerface#play()
*/
@Override
public void play() {
System.out.println("武术表演"); } }
3.添加javaconfig配置类,和服务接口在同一级
/**
*
*/
package com.junge.demo.spring.service; import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration; /**
* 自动装配配置类
* @author Administrator
*
*/
@Configuration
@ComponentScan
public class ServiceConfig { }
4.运行测试:
/**
*
*/
package com.junge.demo.spring; import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import com.junge.demo.spring.service.IPerface;
import com.junge.demo.spring.service.ServiceConfig; /**
* @author Administrator
*
*/
public class ServiceConfigApp { private static ApplicationContext applicationContext; /**
* @param args
*/
public static void main(String[] args) {
applicationContext = new AnnotationConfigApplicationContext(ServiceConfig.class);
System.out.println(applicationContext.getBeansOfType(IPerface.class)); } }
5.运行结果:

6.@Configuration注解说明:默认扫描的是当前包以及子包

如上所示:查看@ComponentScan的参数,有basePackages和basePackageClasses,在同一个java类中可以配置不同的扫描基本包:

在每一个要扫描的包中添加一个空标记接口,使用basePackageClasses可以把所有的扫描都配置上,使用basePackageClasses比basePackages更友好一点,因为在重构代码时,配置可以自动修改。
Spring 使用javaconfig配置的更多相关文章
- Spring 使用javaconfig配置aop
1.在xml中需要配置自动代理 /** * */ package com.junge.demo.spring.dao; import org.springframework.context.annot ...
- spring mvc:练习:javaConfig配置和注解
Spring4 MVC HelloWorld 注释/JavaConfig为示例,一步一步以简单的方式学习Spring4 MVC 的注解,项目设置,代码,部署和运行. 我们已经使用XML配置开发了一个H ...
- Spring MVC 笔记--配置基于JavaConfig
主要使用基于 JavaConfig 方式配置 配置 DispatcherServlet 通过继承抽象类AbstractAnnotationConfigDispatcherServletInitiali ...
- spring mvc:练习:表单验证(javaConfig配置和注解)
使用Spring表单标签, 表单验证使用 JSR303 的验证注解,hibernate-validators,提供了使用MessageSource和访问静态资源(如CSS,JavaScript,图片) ...
- Spring注解和配置方式
Spring提供了一个org.springframework.beans.factory.FactoryBean工厂类接口,用户可以通过实现该接口定制实例化Bean的逻辑. 从Spring3.0开始, ...
- spring的Java配置入门(Spring Boot学习笔记之一)
spring的Java配置 1.创建maven项目 使用idea创建maven项目,这里顺便提一下,idea真的比eclipse好用,早点熟悉吧.然后就是maven是java项目管理最主流的工具,自己 ...
- 使用Spring的JavaConfig 和 @Autowired注解与自动装配
1 JavaConfig 配置方法 之前我们都是在xml文件中定义bean的,比如: 1 2 3 4 5 6 7 8 <beans xmlns="http://www.springf ...
- SpringBoot学习(二)-->Spring的Java配置方式
二.Spring的Java配置方式 Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置. 1.@Configuration 和 @Bean Spring的Java配置方式是通过 @ ...
- Spring 的java 配置方式
Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置. 1.1@Configuration 和 @Bean Spring的Java配置方式是通过 @Configuration 和 @ ...
随机推荐
- 【UI测试】--易用性
- JUC知识点总结图
转载http://www.jsondream.com/2017/06/12/about-JUC.html
- Hadoop3集群搭建之——hive添加自定义函数UDTF
上篇: Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoo ...
- PHP array
一.数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值 array_keys($arr);获得数组的键名 array_flip($arr);数组中的值与键名互换(如 ...
- C++航空系统
/* * SHA-256 implementation, Mark 2 * * Copyright (c) 2010,2014 Ilya O. Levin, http://www.literateco ...
- identify.class.php<======>token加密方法
class Identify { static private $cert = "1111111"; static public function writeSecret($mob ...
- MarkDown总结
转载自:https://www.jianshu.com/p/q81RER:做了一些部分修改: 一:总纲 1.所有的格式均要空格,如#后面加个空格,-后面加空格,1.后面加空格等等: 2.双向包裹的不能 ...
- 安卓4.2用adb 获取屏幕分辨率等信息
在终端输入adb shell dumpsys: 终端会打印出一些service list 用adb shell dumpsys+service名即可查询相应的信息. 屏幕分辨率用adb shell d ...
- css3 box-sizing详解。
人们慢慢的意识到传统的盒子模型不直接,所以他们新增了一个叫做 box-sizing 的CSS属性. box-sizing: 盒大小,盒模型. 我们经常遇到左右模块宽度为50%,加个边框会掉下去,加一个 ...
- 诡异的 ERROR 1045 (28000): Access denied for user 错误
问题描述: 用户已建,权限已赋予.long long ago这个用户是可以正常访问的,但是今天它就不能访问了.报错如下: ERROR 1045 (28000): Access denied for u ...