bboss persistent持久层框架包含的组件分为3类
- 第一类 执行数据库所有操作的3个主要组件
com.frameworkset.common.poolman.DBUtil --提供一般的增、删、改、查/分页查、批处理操作的接口,以及数据库链接池监控和应用服务器内存使用情况监控接口。
com.frameworkset.common.poolman.PreparedDBUtil--提供预编译的增、删、改、查/分页
查、批处理操作的接口,PreparedDBUtil是DBUtil的子类,自动继承DBUtil的所有功能。
com.frameworkset.common.poolman.CallableDBUtil--提供存储过程、函数的预编译调用接口
CallableDBUtil是PreparedDBUtil的子类,自动继承PreparedDBUtil和DBUtil的所有功
能。
这3个组件提供的接口根据接口参数类型可以分为细分为3类:
1.在poolman.xml文件中默认数据库链接池上执行数据库操作的接口
2.在poolman.xml文件中指定数据库链接池上执行数据库操作的接口
3.从外部传入connection执行数据库操作的接口
4.带行处理器的查询接口
5.获取数据库连接接口
这3个组件中的查询接口根据返回值的类型可以分为两种:
1.无返回值,所以的结果集全部封装在DBUtil,PreparedDBUtil,CallableDBUtil中,
可以通过他们提供的size()方法判断查询的当前记录数;
如果是分页查询则通过getTotalSize()方法返回所有的记录集数;
通过getXXX(rowid,colname),getXXX(rowid,colid)方法获取每条记录中字段的值,xxx表示返回的字段值的类型;
如果是CallableDBUtil调用函数和存储过程,则通过getXXX(colname)和getXXX(colIndex)方法获取out参数和函 数返回值。
2.有返回值的接口
可以通过他们提供的size()方法判断查询的当前记录数,如果是分页查询则通过getTotalSize()方法返回所有的
记录集数,但是getXXX方法就无需使用了,因为所有的结果集已经按要求作为返回值返回给用户了。
返回值的类型有:
a.对象类型-针对于单条记录的查询,存储过程调用和函数调用,对象的类型由传入的Object.class决定。
b.Record[]-记录数组每个Record对象代表一条记录
c.List<Object>-对象列表,根据传入的Object.class类型将查询记录转化为对象列表
d.XML格式化串-将所有的的记录集转化为xml串返回,xml串包含标准的格式化串和用户自定义的格式化串(通过自
定义的行处理器生成)
- 第二类 执行数据库事务相关的组件
com.frameworkset.orm.transaction.TransactionManager--数据库事务管理组件,包括事务的开启(可以开启特定类型的事务),提交,回滚3个方法,bboss persistent的事务管理主要通过TransactionManager来实现。
一组封装事务的模板组件:
com.frameworkset.common.poolman.JDBCTemplate--执行数据库操作的无返回值模板接口,无返回值模板接口将在事
务环境中执行,本模板接口中执行后不返回值给调用程序。
com.frameworkset.common.poolman.TemplateDBUtil--调用无返回值模板接口,为无返回值模板接口提供执行的事务
环境
com.frameworkset.common.poolman.JDBCValueTemplate--执行数据库操作的有返回值模板接口,有返回值模板接口将 在事务环境中执行,在本模板接口中执行的数据库操作有返回值并且返回值最终都会被返提供执行
com.frameworkset.common.poolman.TemplateDBUtil--调用有返回值模板接口,为有返回值模板接口提供执行的事务
环境,并且将返回值传递给调用程序。
com.frameworkset.listener.BSServletRequestListener--BS系统事务泄露监听器,一旦监听到有事务泄露,将强制终止回滚事务,需要作为监听器配置在web.xml文件中,例如:
<?xml version="1.0" encoding="UTF-8" ?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
。。。。
<listener>
<listener-class>com.frameworkset.filter.BSServletRequestListener</listener-class>
</listener>
</web-app>
- 第三类组件与记录处理相关的组件
com.frameworkset.common.poolman.handle.RowHandler-行处理器,通过行处理器用户可以自行处理查询的记录。
com.frameworkset.common.poolman.Record--bboss 持久层框架的使用的查询记录的封装对象
bboss项目下载列表 在sourceforge访问地址为:
https://sourceforge.net/project/showfiles.php?group_id=238653