文档章节

spring.xml的一些配置技巧总结

刘付kin
 刘付kin
发布于 2016/12/08 21:15
字数 450
阅读 54
收藏 0
点赞 0
评论 0

#1:配置bean的时候,有两种方式

  • 1.)包扫描:(包中的每个类都需要加上@注解。可以是自定义的注解!)

      @RpcService(value = "AnotactionA.class")
      @Component
      <context:component-scan base-package="org.liufu.prc"/>
      优点是:可以批量实例化类对象, 不需要一个个的写<Bean></Bean>
      缺点是:只能够调用默认的无参构造方法来创建对象。不够灵活!
    
  • 2.)bean的形式一个个的注解

      <bean id="servicereg" class="org.liufu.prc.ServiceReg"/>
    
      <bean id="anotactionA" class="org.liufu.prc.AnotactionA">
      	<constructor-arg name="name" value="liufu"/>
      	<constructor-arg name="age" value="12"/>
      	<constructor-arg name="serviceRegister" ref="servicereg"/>
      </bean>
    
      构造方法的参数名字(不是类型)一定要对上,上面调用了一个三参数的构造方法
      优点是:可以灵活指定构造方法,把一些变量传进去,比如properties文件的一些参数。
    

#2:当启动spring框架实例化类的时候,如果想要这个类能够处理更多的逻辑

比如:这个类本来就是一个rpc服务器端,实例化的时候需要启动,这个时候就可以让这个类实现两个接口来自动执行多两个方法。 (当然也可以在构造方法里面直接写完或调用其他方法,只是会是的其他类调用它的时候不通用。)

/* 
 * 这个方法很有意思,他能够获得spring框架中已经实例化好的对象。
 * 最主要的是:可以根据自定义的注解来获得相应的类。
 */

public class StrartContext implements ApplicationContextAware, InitializingBean{

	public void setApplicationContext(ApplicationContext cxt) throws BeansException {
		//这句话很屌,可以获取某个注解所生成的对象。
		Map<String, Object> mapBean = cxt.getBeansWithAnnotation(RpcService.class);
			Iterator<Object> ite = mapBean.values().iterator();
	}
	
	public void afterPropertiesSet() throws Exception {}

	/* 
	 * 启动netty服务器,同时向zookeeper注册ip地址和services的接口
	 */
	public void afterPropertiesSet() throws Exception {
	
	}
}

© 著作权归作者所有

共有 人打赏支持
刘付kin
粉丝 6
博文 100
码字总数 72832
作品 0
深圳
【spring boot logback】日志使用自定义的logback-spring.xml文件后,application.properties中关于日志的相关配置还会起作用么

本篇 将针对【日志使用自定义的logback-spring.xml文件后,application.properties中关于日志的相关配置还会起作用么】这一个主题进行探索。 这个测试项目是根据【spring boot】8.spring bo...

angel挤一挤 ⋅ 2017/11/23 ⋅ 0

SpringBoot之日志文件找不到

一、前言 做新应用就是这样,会遇到各种问题,昨天刚解决了加载某一个类时候抛出了的问题,今天就有遇到了日志文件找不到的问题,还是和二方库有关的,下面就一一道来。 二、问题产生 正常情...

今天你不奋斗明天你就落后 ⋅ 2017/12/29 ⋅ 0

自定义注解、Java启动spring

1:自定义注解类 import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target; impo......

刘付kin ⋅ 2016/12/07 ⋅ 0

SpringBoot之logback-spring.xml不生效

一、前言 做新应用就是这样,会遇到各种问题,昨天刚解决了加载某一个类时候抛出了的问题,今天就有遇到了日志文件找不到的问题,还是和二方库有关的,下面就一一道来。 二、问题产生 正常情...

加多 ⋅ 01/10 ⋅ 0

spring读取配置文件初始化容器操作总结

Spring初始化容器.三种经常用到的实现: 一、ClassPathXmlApplicationContext:从类路径中加载。 二、FileSystemXmlApplicationContext:从文件系统加载。 三、XmlWebApplicationContext:从web...

seajelly ⋅ 2013/04/24 ⋅ 0

SpringMVC整合Freemaker

首先需要导入相关jar包 其中: spring-context-support 包一定要导入 如果没有导入将出现以下错误 严重: Exception sending context initialized event to listener instance of class org.s...

阿丢丢 ⋅ 2014/04/30 ⋅ 2

SpringBoot笔记(六)日志

SpringBoot默认使用作为日志记录。 同时也对包的和做了默认配置 默认配置 Spring Boot默认使用Logback来记录日志,并用INFO级别输出到控制台 默认输出元素: 时间日期:精确到毫秒 日志级别:...

世外大帝 ⋅ 04/25 ⋅ 0

Spring依赖注入:注解注入总结

注解注入顾名思义就是通过注解来实现注入,Spring和注入相关的常见注解有Autowired、Resource、Qualifier、Service、Controller、Repository、Component。 Autowired是自动注入,自动从sprin...

袁梓皓 ⋅ 2016/03/09 ⋅ 0

Spring Boot项目的Logback配置文件使用yaml格式

1、普通的Spring项目使用logback默认用properties文件做为配置变量。 2、如果非要用yaml文件,那么可以转成Spring Boot项目,天生无缝结合 3、没办法,如果项目配置文件用了yaml,那么你的l...

easonjim ⋅ 06/09 ⋅ 0

使用JavaMelody监控Java EE应用

本文主要完成如下一个任务: 对一个已有的Web应用工程,添加JavaMelody工具,从而去监控和查看Web应用的运行情况,比如:Http请求的执行时间、SQL语句的执行时间、PDF报表的生成。 JavaMelo...

王孟君 ⋅ 2016/11/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Mahout推荐算法API详解

前言 用Mahout来构建推荐系统,是一件既简单又困难的事情。简单是因为Mahout完整地封装了“协同过滤”算法,并实现了并行化,提供非常简单的API接口;困难是因为我们不了解算法细节,很难去根...

xiaomin0322 ⋅ 16分钟前 ⋅ 0

WampServer默认web服务器根目录位置

安装WampServer之后的web服务器根目录默认位置在WampServer安装目录下的www:

临江仙卜算子 ⋅ 18分钟前 ⋅ 0

Redux的一些手法记录

Redux Redux的基本概念见另一篇文。 这里记录一下Redux在项目中的实际操作的手法。 actions 首先定义action.js,actions的type,可以另起一个action-type.js文件。 action-type.js用来存...

LinearLaw ⋅ 19分钟前 ⋅ 0

android 手势检测(左右滑动、上下滑动)

GestureDetector类可以让我们快速的处理手势事件,如点击,滑动等。 使用GestureDetector分三步: 1. 定义GestureDetector类 2. 初始化手势类,同时设置手势监听 3. 将touch事件交给gesture...

王先森oO ⋅ 33分钟前 ⋅ 0

java 方法的执行时间监控 设置超时(Future 接口)

java 方法的执行时间监控 设置超时(Future 接口) import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor......

青峰Jun19er ⋅ 38分钟前 ⋅ 0

一名开源小白的Apache成长自述

今天收到了来自Apache Vote我成为Serviceomb项目Committer的邮件,代表自己的贡献得到了充分的肯定;除了感谢团队的给力支持,我更希望将自己的成长经历——如何践行Apache Way的心得介绍给大...

微服务框架 ⋅ 40分钟前 ⋅ 0

vim介绍、颜色显示和移动光标、一般模式下复制、剪切和粘贴

1.vim 是 vi 的升级版 vim 是带有颜色显示的 mini安装的系统,一般都不带有vim [root@aminglinux-128 ~]# yum install -y vim-enhanced已加载插件:fastestmirror, langpacksLoading mir...

oschina130111 ⋅ 40分钟前 ⋅ 0

Deepin 操作系统四面楚歌

作为国内做的最好的 Linux 发行版,源自 Debian sid 的 Deepin 目前正面临重重困境,新版本不断延期,开发人员离职,bug 长期得不到修复,和 Debian/Ubuntu 的兼容性问题也面临越来越严重的挑...

六库科技 ⋅ 40分钟前 ⋅ 0

MyBatis之动态sql

我们需要知道的是,使用mybatis重点是对sql的灵活解析和处理。在原先的UserMappser.xml中,我们这样查询表中满足条件的记录 : 123 <select id="findUserList" parameterType="userQuery...

瑟青豆 ⋅ 41分钟前 ⋅ 0

这届俄罗斯世界杯的冷门那么多怎么办?

最纯粹的世界杯,最神奇的大冷门。 德国0比1被墨西哥摩擦了。 日本历史性的赢了哥伦比亚。 C罗也挑平了西班牙。 梅西被冰岛狮吼吼愣神了。 就连11次进世界杯4强的巴西也被瑞士逼平了。 天台已...

开源中国众包平台 ⋅ 41分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部