- 浏览: 695686 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (364)
- quick start (57)
- bboss aop (43)
- bboss mvc (48)
- bboss persistent (96)
- bboss taglib (30)
- bboss event (10)
- bbossgroups (52)
- bboss (32)
- bboss会话共享 (17)
- bboss rpc (7)
- bboss 国际化 (5)
- bboss 序列化 (9)
- bboss cxf webservice (8)
- bboss hessian (3)
- bboss 安全认证SSO (15)
- bboss 工作流 (6)
- 平台 (18)
- bboss quartz (3)
- 杂谈 (5)
- 大数据 (1)
- bboss elastic (24)
- bboss http (1)
- bboss kafka (1)
- Elasticsearch Scroll和Slice Scroll查询API使用案例 (1)
最新评论
-
qianhao123:
...
采用gradle构建和发布bboss方法介绍 -
qianhao123:
[img][/img]
采用gradle构建和发布bboss方法介绍 -
yin_bp:
欢迎大家参与working
高性能elasticsearch ORM开发库使用介绍 -
qq641879434:
万分感谢
bboss 持久层sql xml配置文件编写和加载方法介绍 -
yin_bp:
qq641879434 写道怎么设置配置文件 可以查看执行的S ...
bboss 持久层sql xml配置文件编写和加载方法介绍
下载地址:
https://sourceforge.net/project/showfiles.php?group_id=238653&package_id=290092
通过数据加载器获取数据的分页/列表标签的使用分3步
1. 定义数据加载器
2. 将数据加载器配置到listdata.properties文件中(2007-11-7 之前的版本一定要采用配置文件,
后续版本可直接在listdata标签的dataInfo属性中指定数据加载器的全路径,而无需在配置文件中进行配置
比如com.chinacreator.tag.DataList)
3. 编写页面jsp页面引用标签,实现分页/列表展示
A数据加载器定义
所有的数据加载器必须从抽象类
com.frameworkset.common.tag.pager.DataInfoImpl继承并实现DataInfoImpl中的两个抽象方法。
DataInfoImpl还有以下下特点:
提供获取分页数据和列表数据的两个抽象方法。
提供对内存中的大数据集分页的方法;
提供访问控制对象accessControl,方便获取当前登录的用户帐号信息
提供了request,session两个jsp页面对象,方便获取当前页面请求参数和会话信息
下面分别说明一下两个抽象方法和对大数据集的分页方法
l protected ListInfo getDataList(String sortKey,//未使用
boolean desc, //未使用
long offset,//从数据源中或记录的起点
int maxPagesize //页面
)
DataInfoImpl提供的抽象方法,由具体的数据加载器实现。实现分页数据加载,返回的对象中包含当前总记录数,当前页面结果列表(列表中封装值对象),另外结果集还可以是一个对象数组
返回值说明:
ListInfo<List<ValueObject> datas,int totalsize>,包含两个信息
List datas获取到当前页面的结果集,封装值对象,对象的每个属性提供get/set方法
int totalsize 总记录数
ListInfo<Object[] datas,int totalsize>
Object[] datas从数据源中获取到对象数组,数组中对象的类型可以为一
般的值对象,也可以是Map类型的对象
int totalsize 总记录数
pager标签的isList值为false时调用本方法
l protected ListInfo getDataList(String sortkey, boolean desc)
DataInfoImpl提供的抽象方法,由具体的数据加载器实现。获取列表数据接口,当pager标签的isList属性为true时调用本方法
l public static ListInfo pagerList(List datas,int offset,int pageItems)
DataInfoImpl提供的实用方法,实现对内存中的一个大的数据集分页。
参数datas对应于大的数据集,offset对应于分页的起点,pageItems对应于每页最大的记录条数,方法根据offset和pageItems对大数据集datas进行分页得到ListInfo对象。本方法可在方法
protected ListInfo getDataList(String sortKey,//未使用
boolean desc, //未使用
long offset,//从数据源中或记录的起点
int maxPagesize //页面
)
中调用。
1,结果集为列表的情况
public class DocumentList extends DataInfoImpl
{
/**
* 分页数据获取接口,如果pager标签的isList属性指定为false时必须实现此方法
*/
protected ListInfo getDataList(String sortKey, boolean desc, long
offset,int maxPagesize) {
//从request中获取查询条件
String status = request.getParameter("status");
String user = request.getParameter("userid");
String doctype = request.getParameter("doctype");
String docLevel = request.getParameter("docLevel");
String userid = accessControl.getUserID();//从accessControl
//中获取登录用户id
。。。。。。
ListInfo listInfo = new ListInfo();
try {
//定义查询sql
StringBuffer sql = new StringBuffer();
DBUtil dbUtil = new DBUtil();
。。。。。
//调用dbutil的分页查询方法
//将结果集封装到值对象列表,将总记录数和值对象列表设置到listinfo
//对象中。
dbUtil.executeSelect(sql,offset,maxPagesize);
List datas = new ArrayList();
for(int I = 0; I < dbUtil.size();I ++)
{
Document doc = new Document();
doc.setAttribute(dbUtil.getString(I,”attribute”));
...
datas.add(doc);
}
//调用listInfo.setDatas(datas)存放当前页面的数据集
listInfo.setDatas(datas);
//调用listInfo.setTotalsize(dbUtil.getTotalsize())设置总//记录条数
listInfo.setTotalsize(dbUtil.getTotalsize());
//也可以将上述逻辑封装到业务方法中,调用业务方法获取listinfo对象
//listInfo= docManager.getDocList(sql.toString(),
// (int)offset,maxPagesize);
}catch(Exception e){
e.printStackTrace();
}
//返回查询结果
return listInfo;
}
/**
* 列表数据获取接口,如果pager标签的isList属性指定为true时必须实现此方
* 法
*/
protected ListInfo getDataList(String arg0, boolean arg1) {
//从request中获取查询条件
String status = request.getParameter("status");
String user = request.getParameter("userid");
String doctype = request.getParameter("doctype");
String docLevel = request.getParameter("docLevel");
String userid = accessControl.getUserID();//从accessControl
//中获取登录用户id
。。。。。。
ListInfo listInfo = new ListInfo();
try {
//定义查询sql
StringBuffer sql = new StringBuffer();
DBUtil dbUtil = new DBUtil();
。。。。。
//调用dbutil的分页查询方法
//将结果集封装到值对象列表,将总记录数和值对象列表设置到listinfo
//对象中。
dbUtil.executeSelect(sql);
List datas = new ArrayList();
for(int I = 0; I < dbUtil.size();I ++)
{
Document doc = new Document();
doc.setAttribute(dbUtil.getString(I,”attribute”));
...
datas.add(doc);
}
//调用listInfo.setDatas(datas)存放当前页面的数据集
listInfo.setDatas(datas);
//也可以将上述逻辑封装到业务方法中,调用业务方法获取listinfo对象
//listInfo= docManager.getDocList(sql.toString(),
// );
}catch(Exception e){
e.printStackTrace();
}
//返回查询结果
return listInfo;
}
2,结果集为对象数组的情况
public class DocumentList extends DataInfoImpl
{
/**
* 分页数据获取接口,如果pager标签的isList属性指定为false时必须实现此方法
*/
protected ListInfo getDataList(String sortKey, boolean desc, long
offset,int maxPagesize) {
//从request中获取查询条件
String status = request.getParameter("status");
String user = request.getParameter("userid");
String doctype = request.getParameter("doctype");
String docLevel = request.getParameter("docLevel");
String userid = accessControl.getUserID();//从accessControl
//中获取登录用户id
。。。。。。
ListInfo listInfo = new ListInfo();
try {
//定义查询sql
StringBuffer sql = new StringBuffer();
DBUtil dbUtil = new DBUtil();
。。。。。
//调用dbutil的分页查询方法
//将结果集封装到值对象列表,将总记录数和值对象列表设置到listinfo
//对象中。
dbUtil.executeSelect(sql,offset,maxPagesize);
//调用listInfo.setArrayDatas(datas)存放当前页面的数据集
Map[] datas = dbUtil.getAllResults();
listInfo.setArrayDatas(datas);
//调用listInfo.setTotalsize(dbUtil.getTotalsize())设置总//记录条数
listInfo.setTotalsize(dbUtil.getTotalsize());
//也可以将上述逻辑封装到业务方法中,调用业务方法获取listinfo对象
//listInfo= docManager.getDocList(sql.toString(),
// (int)offset,maxPagesize);
}catch(Exception e){
e.printStackTrace();
}
//返回查询结果
return listInfo;
}
/**
* 列表数据获取接口,如果pager标签的isList属性指定为true时必须实现此方
* 法
*/
protected ListInfo getDataList(String arg0, boolean arg1) {
//从request中获取查询条件
String status = request.getParameter("status");
String user = request.getParameter("userid");
String doctype = request.getParameter("doctype");
String docLevel = request.getParameter("docLevel");
String userid = accessControl.getUserID();//从accessControl
//中获取登录用户id
。。。。。。
ListInfo listInfo = new ListInfo();
try {
//定义查询sql
StringBuffer sql = new StringBuffer();
DBUtil dbUtil = new DBUtil();
。。。。。
//调用dbutil的分页查询方法
//将结果集封装到值对象列表,将总记录数和值对象列表设置到listinfo
//对象中。
dbUtil.executeSelect(sql);
Map[] datas = dbUtil.getAllResults();
//调用listInfo.setArrayDatas(datas)存放页面的数据集,该方法的参数类型为Object[]
listInfo.setArrayDatas(datas);
//也可以将上述逻辑封装到业务方法中,调用业务方法获取listinfo对象
//listInfo= docManager.getDocList(sql.toString(),
// );
}catch(Exception e){
e.printStackTrace();
}
//返回查询结果
return listInfo;
}
发表评论
-
bboss标签库cell标签格式化数字实例
2016-11-24 10:38 924bboss标签库cell标签格式化数字实例 带double类 ... -
bboss标签库cell标签展示嵌套对象属性方法实例
2016-11-16 21:47 962bboss标签库cell标签展示 ... -
bboss标签库list/map标签循环变量var属性使用说明
2015-12-24 09:17 1377bboss标签库list/map标签循环变量var属性使用说明 ... -
bboss逻辑标签实现if-else以及if-else if-else条件判断功能介绍
2014-11-25 23:43 1787采用bboss逻辑标签可以非常容易地实现if-else以及if ... -
bboss标签实现列表中的动态列数据展示方法
2014-10-26 12:46 1311借助bboss标签库提供的list标签,我们可以非常方便地实现 ... -
bboss逻辑标签判断对象类型是否为给定的Class类型方法
2014-10-12 11:35 884在java代码中可以非常方 ... -
bboss数据库标签系列一 分页列表详细信息标签预编译sql查询数据
2014-10-09 12:54 1125本系列文章详细介绍bboss标签库的数据库标签具体使用方法,涉 ... -
扩展bboss标签库编写自己的标签
2014-09-25 22:17 1022扩展bboss标签库编写自己的标签。 实际使用bboss标签库 ... -
bbossgroups标签库使用大全(续三)-新增功能特性详解
2014-03-23 10:58 1002bbossgroups标签库使用大全(续三)-bboss最近新 ... -
bbossgroups标签库使用大全(续二)-表达式使用
2014-02-25 22:28 1102本文详细介绍bboss标签库特有表达式的使用方法。可以在分页/ ... -
bboss分页组件翻页js前置处理函数和js后置处理函数使用方法
2014-01-16 10:30 1215bboss 3.7.7版本及后续版本为分页组件增加翻页js前置 ... -
bboss持久层More分页查询API使用介绍
2013-10-18 16:17 1476为了更好地提高数据库分页查询的效率,bboss持久层在Conf ... -
bboss标签库与jstl标签库功能对比
2013-09-15 22:53 1154本文就bboss标签库与jstl标签库中的几个常用标签做个简单 ... -
bbossgroups标签使用大全(续一)-安全篇
2013-09-01 15:08 1148本文是bboss 标签库系列 ... -
bboss中的map标签结合list标签/cell标签展示复杂数据结构案例
2012-08-31 12:12 1793bboss中的map标签结合list ... -
bboss标签库使用大全-逻辑标签使用介绍
2011-08-01 21:58 2706bbossgroups标签库使用大全(续),接上篇《bboss ... -
bboss标签使用大全-数据展示标签
2011-07-31 23:28 4325bboss标签库使用大全 本文介绍bboss中所有数据展示标 ... -
bboss特色介绍
2011-06-12 15:43 18929bboss是一个j2ee开 ... -
采用jquery来分页,排序,查询
2010-04-13 21:19 1448页面标签全面采用jquery来分页,排序,查询 又花了 ... -
树标签的脚本从prototype迁移到jquery实战
2010-04-12 19:31 1009花了一天的时间将树标签的脚本全部从prototype迁移到jq ...
相关推荐
**bboss-datatran** 是一个由 **bboss** 社区开源的高效数据处理工具,专注于数据采集、数据清洗转换以及数据入库等任务。它实现了流批一体化的数据处理能力,使得用户能够灵活地应对实时和批量的数据处理场景。在...
bboss-datatran 由 bboss 开源的数据采集&流批一体化工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能。 同时也是一个高性能Elasticsearch orm 客户端,100%兼容es各个版本 ...
视图与控制器通过请求参数进行交互,展示由控制器处理后传递的数据。 3. **控制器(Controller)**:控制器接收用户的请求,处理业务逻辑,并将处理结果转发给视图。BBoss MVCDemo提供了灵活的控制器机制,可以方便地...
本bboss-datatran项目基于Java开发,包含591个文件,包括Java源代码、...系统实现了数据采集、数据清洗转换处理、数据入库以及数据指标统计计算的流批一体化处理功能,界面友好,功能完善,适合用于数据采集与处理。
最后,bboss会话共享的逻辑架构要求遵循Servlet 2/3规范API,通过HttpSession接口获取会话数据。通过这样的实现,bboss会话共享不仅在技术层面解决了会话管理的难题,还确保了与业界主流技术的兼容性,提高了系统的...
springboot集成ElasticsearchBboss调用Elasticsearch的案例分享
标题 "bboss mvc 通过jsonp实现跨站跨域远程访问" 涉及到的主要知识点是关于Web开发中的跨域通信技术,特别是利用JSONP(JSON with Padding)来解决AJAX请求时遇到的同源策略限制。在互联网应用中,浏览器的安全策略...
2. **bboss elasticsearch开发入门教程.wmv**: 通过实例演示,讲解如何使用BBoss进行索引操作、数据插入、查询和更新,帮助初学者快速上手。 **六、资料阅读** "说明.txt" 文件可能包含了关于这些教程的详细步骤和...
BBoss安全认证过滤器是Java Web开发中一种用于实现用户身份验证和权限控制的重要组件。在Web应用程序中,过滤器(Filter)是Servlet规范的一部分,它允许开发者在请求到达目标Servlet或JSP之前进行预处理,以及在...
4. **源码分析**:标签中提到的“源码”意味着我们可以通过查看BBoss Persistent的源代码来了解其内部处理大字段的具体实现。通过这种方式,开发者可以更好地理解其工作原理,进行定制化开发或优化。 5. **工具支持...
8. **任务调度**:内置定时任务调度器,支持周期性任务的执行,可用于大数据处理、报表生成等场景。 9. **国际化与多语言**:BBoss支持多语言环境,方便跨国企业构建全球化应用。 10. **日志管理**:提供统一的...
然后可以通过bboss提供的API进行索引创建、数据插入、查询、更新、删除等操作。 4. **DSL操作** Domain Specific Language是bboss支持的一种面向领域的特定语言,允许开发者使用JSON格式定义查询和更新语句。DSL...
通过这些库的组合,BBoss Elasticsearch提供了一种高效且灵活的方式来批量和定时将数据库数据导入Elasticsearch,减轻了开发者手动处理大量数据的负担。开发者可以通过配置和编写少量代码,实现复杂的数据迁移任务,...
弹性Tran老板数据交换模块使用文档: : Bboss是一个很好的Elasticsearch Java Rest客户端。 它运行并访问像mybatis这样的elasticsearch来关联数据库。环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5...
在Java中,传统的JDBC编程方式往往需要编写大量重复的SQL代码,而ORM框架如BBoss-DB-Elasticsearch-Tool则通过元数据(如注解或XML配置)将Java对象与数据库表映射起来,实现了数据的透明访问。这极大地提高了开发...