JAVA-框架分层

微服务
  • 接口类:分native接口和prof接口。native接口仅包含简单的数据库操作,一般由代码工具或插件自动生成,prof接口可以实现复杂逻辑、事务性、跨实体模块(integration)的操作。
  • 请求参数

(1) dto类:由代码工具自动生成,与表字段完全对应; (2) query类:由代码工具自动生成,在dto类字段基础上可增加相应的查询参数; (3) request类:手工创建,需要继承AbstractBaseRequestDto或AbstractBasePageRequestDto类,差别是后者多了分页属性。request类必须要实现validateParam()方法,进行自我参数校验。

  • 响应参数

(1) dto类:dto也可以直接做为响应参数,但不推荐,尽量转换为response和item,插件可以辅助生成; (2) response类:对应着前端请求的整体响应结果,该类不可为复数;

(3) item类:对应列表中的元素;

  • Feign-Cleint类:
  • 实现类
  • DAO接口类
  • mybatis xml文件
web服务
  • 控制器
  • spi
    由于框架中的拦截器,web服务必须要做spi实现,spi实现类需要进行注册,可参考相关项目。
public interface ISessionHandler {

    /**
     * 根据字段名获取结果
     *
     * @param request
     * @param fieldName
     * @return
     */
    Object getValue(HttpServletRequest request, String fieldName) throws PendingException;

    /**
     * 获取会话用户Id
     *
     * @param request
     * @return
     * @throws PendingException
     */
    String getSessionUserId(HttpServletRequest request) throws PendingException;

    /**
     * 当前用户否登录
     *
     * @param request
     * @return
     * @throws PendingException
     */
    Boolean isLogin(HttpServletRequest request);

}
上一篇:c# – 在DDD中如何通过DTO传递Value Objects?


下一篇:DTO代码自动生成器的入门 DTOHelper