- 浏览: 695801 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (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配置文件编写和加载方法介绍
bbossgroups中提供的分页查询方法,非常简单,也非常的高效。
java值对象:
在bbossgroups持久层框架中,主要是通过数据库适配器来实现不同数据库产品的分页查询算法,用户可以扩展这些适配器来实现自己的分页算法,以oracle为列:
写好后将com.frameworkset.orm.adaptors.MyOracle配置到poolman.xml文件中既可:
最新版本bbossgroups-2.0-RC1下载地址:
http://sourceforge.net/projects/bboss/files/
PreparedDBUtil dbUtil = new PreparedDBUtil(); try { dbUtil.preparedSelect("select * from testnewface where object_id < ?",0,10);//分页查询方法 dbUtil.setInt(1, 100); List list = dbUtil.executePreparedForList(TestNewface.class,new RowHandler<TestNewface>() { public void handleRow(TestNewface t, Record record) { try { t.setCREATED(record.getDate("created")); t.setDATA_OBJECT_ID(record.getInt("DATA_OBJECT_ID")); //........设置其他的属性 } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("row handler:"+t); } }); int totalsize = dbUtil.getTotalSize();//获得总记录数 for(int i = 0; i < list.size()/*list.size()当页记录数*/; i ++)//遍历当页记录 { TestNewface testNewface = (TestNewface)list.get(i); ... ... } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
java值对象:
package com.frameworkset.common; import java.util.Date; /** * * <p>Title: TestNewface.java</p> * * <p>Description: </p> * * <p>Copyright: Copyright (c) 2007</p> * @Date Nov 4, 2008 2:51:17 PM * @author biaoping.yin * @version 1.0 */ public class TestNewface { String OWNER ; String OBJECT_NAME ; String SUBOBJECT_NAME ; int OBJECT_ID ; int DATA_OBJECT_ID ; String OBJECT_TYPE ; Date CREATED ; Date LAST_DDL_TIME ; String TIMESTAMP ; String STATUS ; String TEMPORARY ; String GENERATED ; String SECONDARY ; public String getOWNER() { return OWNER; } public void setOWNER(String owner) { OWNER = owner; } public String getOBJECT_NAME() { return OBJECT_NAME; } public void setOBJECT_NAME(String object_name) { OBJECT_NAME = object_name; } public String getSUBOBJECT_NAME() { return SUBOBJECT_NAME; } public void setSUBOBJECT_NAME(String subobject_name) { SUBOBJECT_NAME = subobject_name; } public int getOBJECT_ID() { return OBJECT_ID; } public void setOBJECT_ID(int object_id) { OBJECT_ID = object_id; } public int getDATA_OBJECT_ID() { return DATA_OBJECT_ID; } public void setDATA_OBJECT_ID(int data_object_id) { DATA_OBJECT_ID = data_object_id; } public String getOBJECT_TYPE() { return OBJECT_TYPE; } public void setOBJECT_TYPE(String object_type) { OBJECT_TYPE = object_type; } public Date getCREATED() { return CREATED; } public void setCREATED(Date created) { CREATED = created; } public Date getLAST_DDL_TIME() { return LAST_DDL_TIME; } public void setLAST_DDL_TIME(Date last_ddl_time) { LAST_DDL_TIME = last_ddl_time; } public String getTIMESTAMP() { return TIMESTAMP; } public void setTIMESTAMP(String timestamp) { TIMESTAMP = timestamp; } public String getSTATUS() { return STATUS; } public void setSTATUS(String status) { STATUS = status; } public String getTEMPORARY() { return TEMPORARY; } public void setTEMPORARY(String temporary) { TEMPORARY = temporary; } public String getGENERATED() { return GENERATED; } public void setGENERATED(String generated) { GENERATED = generated; } public String getSECONDARY() { return SECONDARY; } public void setSECONDARY(String secondary) { SECONDARY = secondary; } }
在bbossgroups持久层框架中,主要是通过数据库适配器来实现不同数据库产品的分页查询算法,用户可以扩展这些适配器来实现自己的分页算法,以oracle为列:
package com.frameworkset.orm.adaptors; import com.frameworkset.orm.adapter.DBOracle; public class MyOracle extends DBOracle { public String getDBPagineSql(String sql, long offset, int maxsize) { StringBuffer ret = new StringBuffer("select ss1.* from (select tt1.*,rownum rowno_ from (").append(sql).append( ") tt1 where rownum <= ").append((offset + maxsize)).append(") ss1 where ss1.rowno_ >= ").append( (offset + 1)); return ret.toString(); } }
写好后将com.frameworkset.orm.adaptors.MyOracle配置到poolman.xml文件中既可:
<?xml version="1.0" encoding="gb2312"?> <poolman> <adaptor dbtype="oracle">com.frameworkset.orm.adaptors.MyOracle</adaptor> <datasource> <dbname>bspf</dbname> <loadmetadata>false</loadmetadata> <jndiName>bspf_datasource_jndiname</jndiName> <autoprimarykey>false</autoprimarykey> <cachequerymetadata>false</cachequerymetadata> <driver>oracle.jdbc.driver.OracleDriver</driver> <url>jdbc:oracle:thin:@//172.16.17.219:1521/orcl</url> <username>baseline</username> <password>baseline</password> <txIsolationLevel>READ_COMMITTED</txIsolationLevel> <nativeResults>true</nativeResults> <poolPreparedStatements>false</poolPreparedStatements> <initialConnections>2</initialConnections> <minimumSize>0</minimumSize> <maximumSize>10</maximumSize> <!-- 控制connection达到maximumSize是否允许再创建新的connection true:允许,缺省值 false:不允许 --> <maximumSoft>false</maximumSoft> <!-- 是否检测超时链接(事务超时链接) true-检测,如果检测到有事务超时的链接,系统将强制回收(释放)该链接 false-不检测,默认值 --> <removeAbandoned>true</removeAbandoned> <!-- 链接使用超时时间(事务超时时间) 单位:秒 --> <userTimeout>50</userTimeout> <!-- 系统强制回收链接时,是否输出后台日志 true-输出,默认值 false-不输出 --> <logAbandoned>true</logAbandoned> <!-- 数据库会话是否是readonly,缺省为false --> <readOnly>true</readOnly> <!-- 对应属性:timeBetweenEvictionRunsMillis the amount of time (in milliseconds) to sleep between examining idle objects for eviction --> <skimmerFrequency>10</skimmerFrequency> <!-- 对应于minEvictableIdleTimeMillis 属性: minEvictableIdleTimeMillis the minimum number of milliseconds an object can sit idle in the pool before it is eligable for evcition 单位:秒 空闲链接回收时间,空闲时间超过指定的值时,将被回收 --> <connectionTimeout>10</connectionTimeout> <!-- numTestsPerEvictionRun the number of idle objects to examine per run within the idle object eviction thread (if any) 每次回收的链接个数 --> <shrinkBy>0</shrinkBy> <!-- /** * 检测空闲链接处理时,是否对空闲链接进行有效性检查控制开关 * true-检查,都检查到有无效链接时,直接销毁无效链接 * false-不检查,缺省值 */ --> <testWhileidle>true</testWhileidle> --> <maxWait>60</maxWait> <!-- 链接有效性检查sql语句 --> <validationQuery>select 1 from dual</validationQuery> </datasource> </poolman>
最新版本bbossgroups-2.0-RC1下载地址:
http://sourceforge.net/projects/bboss/files/
发表评论
-
bboss离线开发文档下载
2013-05-14 18:08 1865bboss离线开发文档下载 为了便于bboss开发人员离线查找 ... -
bboss 3.6发布,丰富的功能扩展和改进
2012-10-07 09:50 2040bboss 3.6 (官网下载,sf下载)发布了,新版本相比之 ... -
Bboss国际化实践PPT
2012-06-10 12:52 1382Bboss国际化实践PPT,点击链接即可下载: Bboss国际 ... -
bboss国际化功能简介
2012-05-09 08:59 1259借助bboss国际化功能,我们可以非常方便快捷地实现系统 ... -
bboss 4.10.7及更低版本ant构建方法
2012-03-23 22:54 6030本文适用bboss 4.10.7及更低版本,4.10.8及后续 ... -
bboss 将内容为GBK编码文件转UTF-8工具介绍
2012-03-23 15:53 1692bboss 将内容为GBK编码文件转UTF-8工具介绍 bb ... -
bbossgroups 3.5 发布
2012-02-18 14:51 1170版本:bbossgroups-3.5 官网:http://w ... -
bboss 序列化功能详解
2012-01-27 11:04 1666bboss 序列化功能详解,bboss序列化组件是bbossg ... -
bboss 序列化机制重大改进-支持复杂对象及对象之间关系序列化和恢复功能
2012-01-09 23:19 1396bboss 序列化机制重大改进-支持复杂对象及对象之间关系序列 ... -
bbossgroups 3.4发布
2011-10-26 22:45 1150版本: bbossgroups-3.4 bboss gro ... -
bbossgroups 对象xml序列化/反序列化性能测试
2011-10-10 23:16 1357本文探讨开源项目bbossgroups 中对象xml序列化/反 ... -
bbossgroups 开发系列文章之一 最佳实践
2011-10-01 12:50 1492bbossgroups 开发系列文章之-最佳实践 一、概述 ... -
bboss 组件容器的使用方法浅析
2011-08-20 00:21 1666本文重点介绍bboss 中的4大组件容器的特点及使用方法 4 ... -
bbossgroups 3.3 发布
2011-08-19 23:02 1095bbossgroups 3.3 发布,该版本在3.2的基础上做 ... -
bbossgroups框架发布的jar包和依赖jar包概览
2011-08-09 23:16 2004bbossgroups框架发布的jar包和依赖jar包概览 j ... -
我们需要一站式解决方案还是混合组合方案
2011-08-05 14:10 1181这年头提供一站式解决方案的框架才具备真正的核心竞 ... -
bbossgroups的特色特点介绍
2011-07-10 10:49 1449很多朋友都在问bbossgroups框架和其他mvc框架 、s ... -
bbossgroups 相关资料整理
2011-06-24 08:13 1147为了方便大家了解bbossgroups,我特意把相关的资料整理 ... -
bbossgroups项目demo站点升级完毕,朋友们可以去看看
2011-06-19 22:52 1201bbossgroups项目demo站点升级完毕,访问地址: h ... -
开源项目bbossgroups,诚邀有志之士加盟
2011-06-15 10:03 537国内新兴的j2ee开源项目bbossgroups,诚邀有志之士 ...
相关推荐
本文将深入讲解bbossgroups开发系列文章之一中的最佳实践,涉及bboss MVC框架的基础配置、控制器、数据库访问、DAO组件、业务组件管理以及与前端的交互等方面。 首先,我们来了解bboss MVC框架的基础配置。bboss-...
持久层框架进一步完善,支持ORMapping和多数据库解决方案;AOP/IoC框架整合多种技术,如Quartz、JMS、WebService等;分布式事件管理框架逐步完善。 4. **2011年**:标签库与MVC框架融合,持久层API改进,增加了SQL...
在Java开发中,bbossgroups 3.1框架提供了一个名为SQLExecutor的组件,用于简化数据库操作。这个组件提供了一种高效的批处理和单条SQL执行的方式,它基于Apache License 2.0开源,允许开发者在遵守相应条款的情况下...
6. **持久层框架**:Bboss提供了持久层框架,简化了数据库操作,支持SQL动态生成和ORM映射,与各种主流数据库如MySQL、Oracle等良好兼容。 7. **分布式事件框架**:通过JGroups、Minetty、RMI、HTTP、JMS、...
2. **Cache(缓存)**:bbossgroups提供了分布式缓存功能,如基于内存的Map和基于数据库的Cache,有助于提高应用的响应速度。学习缓存机制,可以了解数据同步策略和失效策略。 3. **Transaction Manager(事务管理...
近日,bbossgroups 3.0 正式发布,这款国内首款集AOP(面向切面编程)、MVC(模型-视图-控制器)、Persistent(持久化)、JSP Taglib(JSP 标签库)、分布式RPC服务及分布式事件框架于一体的J2EE开发框架,为开发者...
2. **数据库操作**:BBoss提供了便捷的数据访问层(DAO),支持SQL动态生成、事务管理以及多种数据库的兼容性,使得数据库操作变得简单且高效。 3. **服务治理**:框架内置了服务注册与发现机制,可以实现微服务...
该项目是一款基于Java和Shell语言的bboss session framework设计源码,专注于实现跨域集群节点之间的会话共享,并具备良好的会话监控和数据统计功能。该框架包含222个文件,包括164个Java源文件、14个XML配置文件、6...
12. bboss:bbossgroups是首个集成AOP、MVC、持久层、JSP标签库、分布式RPC服务和序列化组件的JavaEE企业级开发框架。 13. BeeFramework:BeeFramework是iOS平台的快速开发框架,特点包括易学易用、组件丰富,提供...
提供的压缩包文件"bbossgroups 框架培训教程.pptx"和"Bbossgroups演示文档.pptx"可能包含了更多关于bboss mvc框架的详细信息和使用示例,包括如何配置和使用JSONP等特性。建议查阅这些文档以获取更深入的理解。 总...
它运行并访问像mybatis这样的elasticsearch来关联数据库。环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5.X,6.X,7.x,+ Spring Booter 1.x,2.x,+从源代码构建首先从获取源代码然后转到目录...
java版地图源码弹性搜索Bboss Bboss 是一个很好的 elasticsearch Java rest 客户端。 它以类似于mybatis的方式操作和访问elasticsearch。 环保要求 JDK 要求:JDK 1.7+ Elasticsearch ...>com.bbossgroups.p