fast-family 框架中 fast-family-mvc模塊使用介紹

fast-family-mvc

介紹:

fast-family-mvc是fast-family框架其中的一個模塊,此模塊主要是對傳統的springmvc進行增強,讓其開發人員更加輕鬆便捷的寫代碼,達到開箱即用的效果。而且可以通過fast-family-generator配套的代碼生成器快速生成。

主要功能

  1. ​ 傳統controller,service,mapper,entity,dto等基類
  2. ​ 分佈式主鍵ID生成器
  3. ​ swagger2增強(基於簡單yml配置即可)
  4. ​ tomcat優雅停機
  5. ​ 全局異常處理器
  6. ​ 請求響應日誌打印

使用示例:

  • controller等基類示例

    controller:

@RestController
@RequestMapping("/user")
@Slf4j
@Api(tags = "用戶信息接口")
public class SysUserController extends GenericController<SysUser,Long>{

  @Autowired
  private SysUserService sysUserService;


  @Override
  public GenericService<SysUser, Long> getService() {
      return this.sysUserService;
  }

}

service:

/**

  • <p>
  • 描述: 用戶信息業務接口
  • <p>

*

  • @created 2018-10-06 14:17:30

*/
public interface SysUserService extends GenericService<SysUser,Long>{

}

@Service
@Slf4j
public class SysUserServiceImpl extends GenericServiceImpl<SysUser,Long> implements SysUserService{

  @Autowired
  private SysUserMapper sysuserMapper;


  @Override
  public GenericMapper<SysUser, Long> getMapper() {
      return sysuserMapper;
  }

}

mapper:

/**

  • <p>
  • 描述: 用戶信息Mapper接口
  • <p>

*

  • @created 2018-10-06 14:17:30

*/
public interface SysUserMapper extends GenericMapper<SysUser,Long> {

}

entity:

/**

  • <p>
  • 描述: 用戶信息實體
  • <p>
  • @created 2018-10-06 14:17:30

*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "sys_user")
@ApiModel(value = "用戶信息實體")
public class SysUser extends GenericEntity<Long> {

  
  @Column(name = "user_name")
  @ApiModelProperty(required = true, dataType = "String", name = "用戶名")
  private String userName;


  @Column(name = "password")
  @ApiModelProperty(required = true, dataType = "String", name = "密碼")
  private String password;
  

}

dto:

/**

  • <p>
  • 描述: 用戶信息Dto實體
  • <p>

*

  • @created 2018-10-06 14:17:30

*/
public class SysUserDTO extends AbstractPersistableBusinessObjectAdapter<SysUser>{

  public SysUserDTO(Class<SysUser> persistableEntityClass) {
      super(persistableEntityClass);
  }

  @Override
  protected void customizeConvert(SysUser sysuser) {

  }

  @Override
  protected void customizeFill(SysUser sysuser) {

  }

}

  • swagger2示例

fast:

family:
  swagger2:
    restapi:
      back-package: com.fast.family.mvc.example
    apiinfo:
      version: 1.0
      title: fast-family-swagger構建restful api
      description: 歡迎關注fast-family快速開發框架
      terms-of-service-url: https://github.com/fast-family/fast-family-master
      contact-email: [email protected]
      contact-name: 張順

  • 請求響應日誌示例
  @Bean
  public Filter logFilter(){
      return new AccessLogFilter();
  }

使用效果:

​ 繼承controller基類效果圖

圖片描述

​ swagger效果圖

圖片描述

​ 請求響應日誌效果圖

圖片描述

clipboard.png

最後:
如果您對此框架感興趣或者想獲取最新進度信息可以加qq羣:390295286
github地址:https://github.com/fast-famil... 歡迎star fork
github example地址: https://github.com/fast-famil...

下篇將介紹 fast-family-security模塊

[

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章