Skip to content

panmissl/cory-web-spring-boot-framework

Repository files navigation

Changelog
0.0.1
    初始化 - 但有问题:因为除了最外面的pom,里面pom的group不对
0.0.2
    修复pom不对的问题
0.0.3
    修复AccessTokenUtils里的过期时间,单位应该是秒
0.0.4
    修复getByCode及getByCodeList方法当参数为空时报错
0.0.5
    提供DataDictCacheUtil,提升性能
    增加集群和集群Job
    逻辑删除的实现从Delete注解迁移到Model上,更合理
0.0.6
    修复集群未注册:启动时注册和下线时更新
0.0.7
    修复sum时返回值写Integer报BigDecimal不能转成Integer的错误
0.0.8
    修复sum时返回值写int报NPE:对number类型的返回值,如果为空默认返回0处理,保证不会NPE
0.0.9
    放开BaseService里pageSize为10000的限制,需要控制的由业务自己控制
    修复AccessTokenUtils里,设置过期时间过大导致Integer溢出
0.0.10
    日志文件支持加端口,以应对多个tomcat放置在一台机器上的情况
0.0.11
    增加健康检查接口:/status,返回字符串OK
0.0.12
    验证码支持集群
    cluster更新时一起更新modifyTime
0.0.13
    Field注解去掉重复的editable,统一使用updateable
0.0.14
    BaseModel增加数据库处理时的特殊条件:Start(包含)、End(不包含)、In、Like、LikeLeft、LikeRight、NotIn,NotLike、NotLikeLeft、NotLikeRight、NotEq(不等)。这样让查询更加方便。参见BaseModel的filterFieldMap注释
0.0.15
    修复BaseModel增加数据库处理时的特殊条件:Start和End增加inclusive和exclusive的支持,且修复in和not in的bug
0.0.16
    BaseModel增加数据库处理时的特殊条件:isNull和notNull
0.0.17
    数据库默认编码为utf8mb4
0.0.18
    优化数据字典缓存:所有数据字典信息都从缓存里取(之前getByType还是从db取)
    数据字典缓存刷新时刷新SystemContext的modelMetaSet和modelMetaMap,之前没刷新存在的问题是数据字典改了不会生效,要重启系统才行
0.0.19
    优化BaseModel的renderFieldMap,不直接暴露map,用getRenderField方法
0.0.20
    fix优化BaseModel的renderFieldMap,不直接暴露map,用getRenderField方法和putRenderField方法
0.0.21
    增加异步导出机制:将导出的结果存储到文件或网络上,然后提供导出页面或模块,供下载
0.0.22
    fix异步导出机制model
0.0.23
    fix异步导出机制model
0.0.24
    fix异步导出机制model
0.0.25
    后台页面支持按ID进行过滤
0.0.26
    model查询增加自定义条件
0.0.27
    增加数据权限
0.0.28
    增加site(站点标识)的系统上下文并渲染到html页面上window对象里
0.0.29
    修复:增加site(站点标识)的系统上下文并渲染到html页面上window对象里
0.0.30
    GenericResult里增加traceId
    DataDictCacheUtil根据类型获取列表时过滤掉不显示的那些值
    自定义favicon
    session过期时间设置
0.0.31
    增加ZipUtil、XmlUtil、VelocityUtil
    增加静态资源的处理
    更新HttpClientUtil
    支持不启动数据库
    修复一些bug
0.0.32
    设置Filter顺序,让系统Filter有固定顺序,这样用户自定义Filter可以设置放置的顺序
0.0.33
    注册时支持选择角色

对spring boot的集成。集成了这些能力:
#、对缓存的封装,支持内存缓存,redis缓存,edcd缓存
#、对数据库的封装
#、对定时器的封装
#、对验证码的封装
#、对swagger文档的封装
#、对整个代码框架的封装:
    使用shiro作权限管理
    封装了基础模:用户、角色、权限、系统配置、数据字典、反馈、sql执行等基础模块
#、对代码生成的封装:只需要写Model类,其他代码都生成好(dao、service、controller、js等)

#、具体用法请参考demo工程:git@github.com:panmissl/cory-web-spring-boot-demo.git
#、有问题请联系微信:cory275165359

TODO
#、支持分包:目前只能放一个包里
#、支持 like查询
#、支持${}原样输出参数
#、登录需要验证码:打开,注册也需要 -- 暂时不,后面再说

-------------------------

DB:
    sql兼容mybatis,但是参数必须带Param注解。

    特殊语法:
    # 对IN的支持:直接写:IN #{list},会自动展开成:IN (?, ?, ?)的形式
    # 对空条件的支持:会自动判断如果为空则不加此条件。用#![ xxx ]包裹,则会判断里面的参数,如果参数没有值,则不输出。注意:1、AND等连接符也需要加在里面;2、不能嵌套,一个#![]里只能包含一个参数。如果参数是数组,会展开成(x, y, z)的形式(IN的语法)比如:#![ AND create_time >= #{createTimeStart}] #![and create_time <= #{createTimeEnd}]
    # 不支持mybatis的${},后续有需要再支持
    # Select不支持返回Map,请创建一个bean来返回
    # 一般情况应该够用了,如果还有特殊需求,可放弃使用DAO,直接在Service引入JdbcTemplate自己写sql实现

对日期类型的字段,已经做特殊处理:页面过滤时会自动增加xxStart和xxEnd字段。sql里也将条件加上了。规则为:start是inclusion,end是exclusion。最终会加成这样的效果:createTime >= #{createTimeStart} and createTime < #{createTimeEnd}

安装到本地:
mvn -DskipTests=true -Dmaven.skip.test=true source:jar install
mvn -DskipTests=true -Dmaven.skip.test=true install

安装到maven仓库
mvn -DskipTests=true -Dmaven.skip.test=true clean deploy
mvn -DskipTests=true -Dmaven.skip.test=true clean source:jar deploy

About

spring boot 框架集成

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages