Fuguo-core

来自ling
跳转至: 导航搜索

功能

常用utils,spring mvc 使用规范 系统属性定义模块

依赖

所有模块都依赖fuguo-core,但fuguo-core不能依赖其他模块

配置文件说明

src/main/resources
  1. 规范了配置文件存放的位置classpath*:META-INF/config/*.properties
  2. 规定了所有注入spring bean的范围com.ling2.* 自定义范围请参考META-INF/spring/springbeanscan/component-scan.xml
  3. 规定了所有注入dubbo bean的范围com.ling2.* 自定义范围请参考META-INF/spring/springbeanscan/dubbo-scan.xml
  4. 提供SpringUtilPropertiesUtils
META-INF/spring/context/applicationContext-config.xml 规范了配置文件存放的位置classpath*:META-INF/config/*.properties 并且注入了utils com.ling2.core.commons.utils.PropertiesUtils继承PropertyPlaceholderConfigurer
META-INF/spring/context/applicationContext-utils.xml 注入了com.ling2.core.commons.utils.SpringUtil,供所有bean快速访问
META-INF/spring/springbeanscan/component-scan-base.xml com.ling2.*为默认扫描路径
META-INF/spring/springbeanscan/dubbo-scan-base.xml com.ling2.*为默认扫描路径
src/test/resources
  1. 规定了单元测试zookeeper的地址 dubbo.registry.address=zookeeper://127.0.0.1:2181
  2. 规定了单元测试使用的spring 配置文件规范 dubbo.spring.config=classpath*:META-INF/spring/**/*.xml
dubbo.properties
log4j.xml

单元测试

CoreProvider

package com.ling2.core.test;

public class CoreProvider {

	public static void main(String[] args) {
        com.alibaba.dubbo.container.Main.main(args);
	}

}

关键类说明

  • PropertiesUtils 获取注册在spring下的配置,继承PropertyPlaceholderConfigurer,可以参考这个代码实现自己的属性配置,比如读取数据库中属性配置
  • XssFilter 防止Xss攻击,适用于基于web容器的服务,wl-web-core项目和wl-web-rest都必须使用这一功能来应对安全风险
  • SpringConfig
  1. 定义spring bean Scan范围
  2. 提供对老配置的兼容 对xml类型spring 定义的文件位置进行规范
  3. 负责注册除Controller等web层以外的所有bean,包括aop代理,service层,dao层,缓存,等等
  • PropertiesConfig 定义spring 读取的properties文件规范:classpath*:config/*.properties 并初始化PropertiesUtils中可提供属性值
  • CompanyUtils