ctower-core 发布历史
core 包升级 1.2.32 -〉1.2.33 [2016-10-02]
1、BaseModel添加setIndex方法
core 包升级 1.2.31 -〉1.2.32 [2016-09-29]
1、SolrService添加批量保存方法
void save(String collection, List<BaseModel> modelList);
void save(String collection, BaseModel model);
core 包升级 1.2.30 -〉1.2.31 [2016-09-18]
1、增加 SerializeUtil jdk原生序列换方案工具类
2、实现 缓存处理 Redis service 类
ctower-core-1.2.22-dubbox [2016-06-27]
1、升级Struts2至2.3.29
ctower-core-1.2.21-dubbox [2016-03-17]
1、升级Struts2至新版
ctower-core-1.2.20-dubbox [2016-01-21]
1、JSONUtils.toJSONString 默认启用 SerializerFeature.DisableCircularReferenceDetect
ctower-core-1.2.19-dubbox [2016-01-18]
1、修改 BaseDao 的 updateXxx 方法定义,返回影响记录数
2、JSON转换统一采用fastjson
ctower-core-1.2.18-dubbox [2016-01-14]
1、去除非java api的类 ,图片处理采用ImageIO类
2、升级 mysql-connector-java 至 5.1.38 版本,以支持MySQL 5.6.x
3、优化 pom 配置,发布 dubbox 版本
ctower-quartz-1.2.18-dubbox [2016-01-14]
1、升级第三方库 quartz 至 2.2.2 版本
2、优化 applicationContext-quartz.xml 配置
ctower-core-1.2.18 [2015-12-27]
1、为方便缩略图片访问地址的修改,将缩略图保存到以下目录:
缩略图(200) 统一保存在 thumb目录中
如原地址:
http://www.xinxinsn.com/ctower-upload/upload/image/20151215/1450162603498037847.jpg
缩略图地址:
http://www.xinxinsn.com/ctower-upload/thumb/upload/image/20151215/1450162603498037847.jpg
应用缩略图时,JSP页面作如下改动:
原代码: <img src="<s:text name="WebSite"/><s:property value="#request.dataObj.respath"/>" 引用缩略图代码: <img src="<s:text name="WebSite"/>thumb/<s:property value="#request.dataObj.respath"/>"
中等大小(500) 规格图片保存在middel的目录中 ,将以上代码中的 thumb 改为 middel 即可。
ctower-core-1.2.17 [2015-12-20]
1、图片上传后生成不同规格大小的图片,按不同的目录保存不同规格图片
缩略图(200) 保存在原文件目录中的thumb目录中
如原地址:
http://www.xinxinsn.com/ctower-upload/upload/image/20151220/1450585761432072282.jpg
缩略图地址:
http://www.xinxinsn.com/ctower-upload/upload/image/20151220/thumb/1450585761432072282.jpg
中等大小(500) 规格图片保存在原文件目录中的middel的目录中
如原地址:
http://www.xinxinsn.com/ctower-upload/upload/image/20151220/1450585761432072282.jpg
中等规格图片地址:
http://www.xinxinsn.com/ctower-upload/upload/image/20151220/middel/1450585761432072282.jpg
ctower-core-1.2.16 [2015-12-20]
1、图片上传后生成不同规格大小的图片
缩略图(200) 在原文件URL后增加.thumb后缀
中等大小(500) 规格图片URL后增加.middel后缀
ctower-core-1.2.15 [2015-12-18]
1、优化通用sequence策略,修复相关bug。
ctower-core-1.2.12 [2015-12-16]
1、优化通用sequence策略,修复相关bug,使用的新的sys_sequence表,支持缓存(cachesize)、步长(step)等功能。默认缓存20个,步长1。
ctower-quartz-1.2.11 [2015-12-11]
1、优化applicationContext-quartz.xml配置: 延迟启动10秒,去除ApplicationContext依赖
配置示例: ctower-quartz-1.2.11-config-demo.tar.gz
ctower-core-1.2.11 [2015-12-11]
1、JdbcRoutingDataSource添加dialectSupport属性,缺省true
ctower-quartz-1.2.10 [2015-12-07]
1、集成quartz-1.8.6框架。
- maven 依赖配置
<dependency>
<groupId>com.ec.ctower</groupId>
<artifactId>ctower-quartz</artifactId>
<version>${ctower.framework.version}</version>
</dependency>
- 应用程序提供3个配置文件
配置文件示例 ctower-quartz-1.2.0-config-demo.tar.gz
jdbc.properties :配置数据源
quartz.properties : quartz框架的配置
quartz-extend.properties : 配置定时任务,也可以配置数据源
- quartz 建表语句
点击下载 quartz-1.8.6-dbTables.tar.gz
也可在ctower-quartz-1.2.10.jar!/META-INF下找到
- Spring集成
参考 spring-ctower-quartz-test.xml
ctower-core-1.2.10 [2015-12-07]
1、优化应用配置:ApplicationsConfig会自动加载 classpath*:appconfig*.properties。
core里面只提供默认的配置,允许应用层覆盖(例如数据库类型,每个项目的情况不一样);
应用层的配置文件由"APP_PROPERTIES" key指定,默认情况下:
APP_PROPERTIES=classpath*:appconfig*.properties
2、升级第三方库fastjson至1.2.5
ctower-core-1.2.8-dubbox [2015-12-04]
1、使用dubbox (dubbo-2.8.4)
ctower-core-1.2.8 [2015-12-03]
1、将BaseServiceImpl里的queryForPage方法移至IBatisDao
ctower-core-1.2.7 [2015-11-30]
1、对于已逻辑删除的数据,执行IBatisDao.findByPK时,抛出异常
ctower-core-1.2.4 [2015-11-22]
1、修复DefaultSolrService关于分页查询的bug
2、添加ESAPI的简单处理
ctower-core-1.2.1 [2015-11-13]
1、修复DefaultSolrService关于BigDecimal字段处理的bug
2、修复其他一些Findbugs发现的bug
ctower-core-1.2.0 [2015-11-12]
1、新增SolrService (全文搜索服务)接口,提供DefaultSolrService实现、 SolrServiceFactory工厂类。
- 缺省配置文件: solr.properties
- @DocumentedField: 用于标识JavaBean的属性是否写入文档库,也用于搜索
对于JavaBean需要写入文档库的字段,或需要用该字段来查询,需要使用该注解标记。
2、BaseModel 类
- 新增接口方法 supportsInFilter() : 是否支持in、not in属性过滤(为了向前兼容,缺省否)
如果返回true, Xxx_SqlMap.xml 的 Where_Clause语句请写为:
...... (省略一大段)
<isNotEmptyproperty="criteria">
<iterateproperty="criteria"conjunction="and"prepend="and"open="("close=")">
$criteria[].paramName$ $criteria[].arithmeticType$
<iterateproperty="criteria[].paramValue" conjunction="," open="("close=")">
#criteria[].paramValue[]#
</iterate>
</iterate>
</isNotEmpty>
- 新增 collectDatasForIndex() :收集所有需要写入搜索文档库的数据
如果 isIndex() (是否写入搜索文档库)为true, DAO层会调用该方法。
- 添加 ignoreDataStatusWhenQuery 属性,缺省值否
3、IBatisDao:
- 支持in、not in属性过滤
- 自动处理datastatus(逻辑删除标识)
- 全文搜索相关处理 (依赖BaseModel部分方法)
4、其他改进/bug修复,以及对一些过时的方法做了标记
ctower-core-1.1.8 [2015-10-14]
1、修复_eq等条件查询bug
2、BaseInterceptor,添加doIntercept方法,自动处理异常
3、去掉ActionUtills.initCriteria方法(属于DAO层的功能)
ctower-core-1.1.7 [2015-10-13]
1、添加Ticket.java号票工具类
ctower-core-1.1.6 [2015-10-13]
1、ActionUtils添加getUserFromCookie方法,返回JSONObject对象
2、修复cache配置错误
ctower-core-1.1.5 [2015-10-08]
1、修复<e:Code2Name/>标签bug
ctower-core-1.1.4 [2015-10-07]
1、xxxService.queryForList 等 queryXxx方法 支持查询条件的问题,已经解决了。
附:
model对象的查询属性(字段),以下面的操作符打头
操作符说明:
_gt_ 或 _gr_ : 大于
_lt_ : 小于
_ne_ : 不等于
_eq_ : 等于
_ge_ : 大于等于
_le_ : 小于等于
_notin_ : 不在...中
_in_ : 在...中
_lk_ : 全like操作
_leftk_ : 左like操作
_rightk_ : 右like操作
2、dubbo模式下,DataUtils 使用的bug
3、支持自定义SQL。 通过 model.sqlMapMeta().setQuerySQLId("myquerysqlid1") 调用 XXX_SqlMap.xml中定义的SQL。
建议:
- 自定义SQL 单独写在一个文件里(不写在 自动生成的_SqlMap文件),统一管理
- 经常需要进行join的表, 创建一个视图,基于视图查询。