JThink:发布JThink-Framework-1.0-M6版本
2008-10-28 17:27
197 查看
JThink就是为了解决JAVA应用系统在开发过程中的一系列问题所发起的一个框架。她的主要目的是用于解决JAVA/J2EE应用系统中业务逻辑层面中反复遇到的问题。JThink包括以下几部分内容:资源管理,请求处理,事务处理,连接数据源,数据访问,EJB组件开发,EJB组件访问,日志处理,及一些常String,Data,Number处理的Helper工具类等。
本次发布修改内容:
本次变更加入的主要新特性是对数据对象(DataObject)的支持, SQLExecutor返回的查询结果集,以对象方式
返回,具体对象须要扩展DataObject抽象类,写set/get方法, 以下是set/get的基本写法:
public class Customer extends DataObject {
public Customer(){
setTableName("customers");
setPrimaryKey("ID");
}
public void setId(String id){
values.put("ID", id);
}
public String getId(){
return (String)values.get("ID");
}
... ...
}
注意:还需要在fto-jthink.xml配置DataObjectResultMakerFactory工厂,才能够正常返回DataObject类型的结果集
1) 增加RandomHelper, 用于生成指定范围的随机数, 批量生成随机数等
2) 解决StringHelper的contains方法功能问题
3) 日志接口修改,在LogFactory中增加public Logger create(Class clazz);接口方法
4) 增加数据对象DataObject功能, 增加DataObjectResultMaker和DataObjectResultMakerFactory
5) 加入事务隔离级别, 可以在数据源配置中的连接工厂(connection-factory)节点中配置隔离级别
(isolation-level),以下是当前支持的级别
JDBCTransaction. TRANSACTION_NONE,
JDBCTransaction. TRANSACTION_READ_UNCOMMITTED,
JDBCTransaction. TRANSACTION_READ_COMMITTED,
JDBCTransaction. TRANSACTION_REPEATABLE_READ,
JDBCTransaction. TRANSACTION_SERIALIZABLE
6) 针对JTATransaction事务,增加设置超时功能,在JTATransaction中增加设置事务超时方法,
以及在fto-jthink.xml中的事务工厂配置中增加对JTATransaction事务可配置事务超时功能
7) 增加在SQLExecutor中执行SQL时的超时设置(timeout),最大允许结果集行数设置(max-rows)等,可在fto-jthink.xml中配置
8) 增加SystemHelper助手类,与运行环境相关的信息检查,比如检查当前java版本等
9) 在SQLExecutor中增加批量执行SQL语句功能
10) JDBCTransaction中增加以下方法:
public void setAutoCommit(String connId, boolean autoCommit);
public boolean getAutoCommit(String connId);
public void setTransactionLevel(String connId, int level);
public int getTransactionLevel(String connId);
11) 增加对HSQL数据库的内部支持,实现与HSQL相关的SQLBuilder和SQLExecutor
---------------------------------------------------------------------------------------------------------------------------
5.上一版本[M5]变更
1) 解决ConnectionPool相关问题,
在关闭连接池时,IdleTimeoutProcessor线程结束方式有问题,需要修改,通过设置线程活动标记来结束,
去掉:idleTimeoutProcessor.destroy()方法;
超时线程中加上setDaemon(true);标记,使之在主线程退出时此子线程能自动结果。
加入系统退出时钩子事件,主要用于释放当前数据库连接, 就不必再在主客户程序中处理。
2) 将框加中的其它子线程的Daemon标记设置true
3) 将以HashMap为输入参数的方法改为以Map为输入参数
4) 增加ResultMaker的MapResultMaker实现,用于构建Map格式的结果集, 结果集的每一行将以Map数据类型返回
5) 增加可以在配置文件jthink.xml中指定ResultMaker的功能, 加入ResultMakerFactory工厂接口, 客户程序可以
自行编写数据结果构建程序,以按照自己的要求构建数据库表数据结果集,须要实现ResultMakerFactory工厂和
ResultMaker接口
当前系统实现了构建XML结果集的ElementResultMaker实现和构建Map结果集的MapResultMaker实现以及工厂类
6) StringHelper功能扩展
串数组的包含检查,检查一个串是否包含在指定数组中, 方法:contains()
增加join()方法,增加String additive参数,使之可连接出'a','b','c','d','e'格式的串。
增加取子串方法:
substring(int beginIndex, int len)
substring(int beginIndex, String endStr)
substring(String beginStr, int len)
substring(String beginStr, String endStr)
遇到串结束时,将不会抛异常,而是将到结束为止的串返回。其它功能描述见apidocs
7) 增加FileHelper助手类,方便读写文件,处理编码格式等
8) 增加ResponseHelper助手类, 向HTTP Response发送文件,发送图像文件,发送流数据等
9) 其它,解决了一些隐式问题。
项目下载:http://code.google.com/p/jthink-framework/downloads/list(最新版本)和http://cosoft.org.cn/projects/jthink/(1.0-M4及以前版本和例子)
本次发布修改内容:
本次变更加入的主要新特性是对数据对象(DataObject)的支持, SQLExecutor返回的查询结果集,以对象方式
返回,具体对象须要扩展DataObject抽象类,写set/get方法, 以下是set/get的基本写法:
public class Customer extends DataObject {
public Customer(){
setTableName("customers");
setPrimaryKey("ID");
}
public void setId(String id){
values.put("ID", id);
}
public String getId(){
return (String)values.get("ID");
}
... ...
}
注意:还需要在fto-jthink.xml配置DataObjectResultMakerFactory工厂,才能够正常返回DataObject类型的结果集
1) 增加RandomHelper, 用于生成指定范围的随机数, 批量生成随机数等
2) 解决StringHelper的contains方法功能问题
3) 日志接口修改,在LogFactory中增加public Logger create(Class clazz);接口方法
4) 增加数据对象DataObject功能, 增加DataObjectResultMaker和DataObjectResultMakerFactory
5) 加入事务隔离级别, 可以在数据源配置中的连接工厂(connection-factory)节点中配置隔离级别
(isolation-level),以下是当前支持的级别
JDBCTransaction. TRANSACTION_NONE,
JDBCTransaction. TRANSACTION_READ_UNCOMMITTED,
JDBCTransaction. TRANSACTION_READ_COMMITTED,
JDBCTransaction. TRANSACTION_REPEATABLE_READ,
JDBCTransaction. TRANSACTION_SERIALIZABLE
6) 针对JTATransaction事务,增加设置超时功能,在JTATransaction中增加设置事务超时方法,
以及在fto-jthink.xml中的事务工厂配置中增加对JTATransaction事务可配置事务超时功能
7) 增加在SQLExecutor中执行SQL时的超时设置(timeout),最大允许结果集行数设置(max-rows)等,可在fto-jthink.xml中配置
8) 增加SystemHelper助手类,与运行环境相关的信息检查,比如检查当前java版本等
9) 在SQLExecutor中增加批量执行SQL语句功能
10) JDBCTransaction中增加以下方法:
public void setAutoCommit(String connId, boolean autoCommit);
public boolean getAutoCommit(String connId);
public void setTransactionLevel(String connId, int level);
public int getTransactionLevel(String connId);
11) 增加对HSQL数据库的内部支持,实现与HSQL相关的SQLBuilder和SQLExecutor
---------------------------------------------------------------------------------------------------------------------------
5.上一版本[M5]变更
1) 解决ConnectionPool相关问题,
在关闭连接池时,IdleTimeoutProcessor线程结束方式有问题,需要修改,通过设置线程活动标记来结束,
去掉:idleTimeoutProcessor.destroy()方法;
超时线程中加上setDaemon(true);标记,使之在主线程退出时此子线程能自动结果。
加入系统退出时钩子事件,主要用于释放当前数据库连接, 就不必再在主客户程序中处理。
2) 将框加中的其它子线程的Daemon标记设置true
3) 将以HashMap为输入参数的方法改为以Map为输入参数
4) 增加ResultMaker的MapResultMaker实现,用于构建Map格式的结果集, 结果集的每一行将以Map数据类型返回
5) 增加可以在配置文件jthink.xml中指定ResultMaker的功能, 加入ResultMakerFactory工厂接口, 客户程序可以
自行编写数据结果构建程序,以按照自己的要求构建数据库表数据结果集,须要实现ResultMakerFactory工厂和
ResultMaker接口
当前系统实现了构建XML结果集的ElementResultMaker实现和构建Map结果集的MapResultMaker实现以及工厂类
6) StringHelper功能扩展
串数组的包含检查,检查一个串是否包含在指定数组中, 方法:contains()
增加join()方法,增加String additive参数,使之可连接出'a','b','c','d','e'格式的串。
增加取子串方法:
substring(int beginIndex, int len)
substring(int beginIndex, String endStr)
substring(String beginStr, int len)
substring(String beginStr, String endStr)
遇到串结束时,将不会抛异常,而是将到结束为止的串返回。其它功能描述见apidocs
7) 增加FileHelper助手类,方便读写文件,处理编码格式等
8) 增加ResponseHelper助手类, 向HTTP Response发送文件,发送图像文件,发送流数据等
9) 其它,解决了一些隐式问题。
项目下载:http://code.google.com/p/jthink-framework/downloads/list(最新版本)和http://cosoft.org.cn/projects/jthink/(1.0-M4及以前版本和例子)
相关文章推荐
- JThink:发布JThink-Framework-1.0-M5版本
- handy web framework 是我自己开发的一个web应用开发框架,源码已经发布,现在版本1.0。
- JThink-Framework 1.0 测试版发布
- Tachyon更名为 Alluxio,并发布1.0版本
- Spring.Net.FrameworkV3.0 版本发布了,感谢大家的支持
- joa-framework 工作流快速开发框架(jeecg官方工作流版本) 发布
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2版本正式发布
- 最新发布:Windows Azure Toolkit for Social Games 1.0版本
- Eclipse Visual Editor 1.0版本发布。
- RDIFramework.NET平台代码生成器V3.1版本全新发布-更新于2016-10-29(提供下载)
- 不和版本帝争,16 年后 SciPy 1.0 版终发布
- NHibernate 1.0 Released 版本发布了
- 第一个IDE稳定版本:Google发布Android Studio 1.0
- 数据库文档生成工具1.0版本终于发布
- Winson.Framework 1.0发布!
- JEEWX微信企业号管家,开源免费,1.0版本发布
- My Message 1.0 版本发布
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.7 版本发布
- Naive Container 发布1.0版本
- JAVA版本微信公众账号开源项目版本发布-jeewx1.0(捷微)