摘要: wrapper简介 wrapper本身是一个java进程,它会根据wrapper.conf中的配置的main类启动一个新的子进程(业务进程),并对该进程进行管理。因此每次启动wrapper时会有两个进程。 wrapper.conf几个重要参数: 参数名 | 说明 | wrapper.app.para 阅读全文
posted @ 2018-07-17 15:07 无语还真 阅读(702) 评论(0) 推荐(0) 编辑
摘要: 使用SpringMvc做为web的核心框架,一般接口后缀为".do"。RequestBody类型的请求参数要求继承AbstarctBaseRequestDto,自带校验逻辑。响应结果要求使用ResDto类型。在方法中可以抛出异常。 框架的拦截器列表 拦截器 | 说明 | 通用拦截器 | 将接口请求的 阅读全文
posted @ 2018-07-17 15:07 无语还真 阅读(1032) 评论(0) 推荐(0) 编辑
摘要: Redis缓存 框架对Redis进行了基础的调用封装,接口类为:org.go.framework.cache.CacheService,提供了众多方法可供使用。Dubbo服务端及Web端都可以直接引用该服务实例。 另外,还提供了一个缓存模板抽象类org.go.framework.cache.Cach 阅读全文
posted @ 2018-07-09 17:52 无语还真 阅读(735) 评论(0) 推荐(0) 编辑
摘要: 框架中dubbo配置说明: Provider端配置如下: 重要属性说明 属性 | 说明 | dubbo.host | 可以控制dubbo访问的网络权限,设置为空则以内网地址发布服务 dubbo.port | dubbo服务的端口号 dubbo.group | dubbo组名,只有同组的服务才可相互调 阅读全文
posted @ 2018-07-09 16:26 无语还真 阅读(777) 评论(0) 推荐(0) 编辑
摘要: 框架的核心通信机制见下图: 上面略过Spring的Jackson转换器等过程。 通信中有四个重要的元素,说明如下 元素|说明 | Context(Web端) | 基于ThreadLocal,通过mvc拦截器将部分请求信息设置在Context中。可以在web端的任意地方取出使用,包括Dubbo过滤器。 阅读全文
posted @ 2018-07-09 16:17 无语还真 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 框架的核心日志组件是log4j2,定义了日志格式,日志文件、及日志滚动文件的路径。 配置文件如下: 其中ctx:MsgId的实现原理是使用MDC写入到线程Map中,再使用日志rewrite策略实现。 控制台输出会输出在wrapper.log中。在服务器环境应该尽量屏蔽控制台输出,而输出在trc文件上 阅读全文
posted @ 2018-07-09 10:41 无语还真 阅读(383) 评论(0) 推荐(0) 编辑
摘要: 框架通过对org.springframework.beans.factory.config.PropertyPlaceholderConfigurer的扩展,为server.properties配置文件的加载过程进行封装。通过特殊寻址方式,使配置文件与项目代码彻底分离,以方便项目在不同环境的部署。同 阅读全文
posted @ 2018-07-09 09:44 无语还真 阅读(687) 评论(0) 推荐(0) 编辑
摘要: 服务层规范 java文件分类 文件类型 | 说明 | 枚举 |目前枚举多由工具生成,如果需要进行数据库操作,则需要实现org.go.api.core.enums.BaseEnum接口 dto | 目前同时做为请求及响应参数,与数据模型关联密切 request | 对应渠道侧的页面级请求,当dto模型 阅读全文
posted @ 2018-05-28 09:46 无语还真 阅读(3249) 评论(0) 推荐(0) 编辑
摘要: 1、PendingException 不利的问题 在内部类的环境中经常需要额外处理,如事务模板,stream等。 思路: 修改为运行时异常 2、代码生成的Dto类拆分为请求与响应两个类型。 如: User 响应dto类 QUser 查询dto类,包含分页参数,keywords,ids等额外的查询条件 阅读全文
posted @ 2018-03-08 14:36 无语还真 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1、去SQL关联 原因: 多条件查询时会关联N张表,但往往这些条件用户都不会使用,或者不会同时使用。 思路: (1)如果查询条件有其它表的关系,可使用[not] exists来代替join。 (2)如果结果中有其它表的字段,可从缓存中获取。 2、运用Lambda表达式代为实现部分数据库功能 map 阅读全文
posted @ 2018-03-08 12:40 无语还真 阅读(394) 评论(0) 推荐(0) 编辑