- 浏览: 697613 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (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配置文件编写和加载方法介绍
bboss模糊查询、动态sql、批处理资料荟萃
bboss持久层快速上手
1.批量增删改-真正采用jdbc的预编译批处理来实现,性能杠杠的,sql语句只需要配置一条,无需foreach
这里以更新为实例,新增和删除类似:
执行批处理操作
参考文档:
bboss预编译批处理api使用介绍
bboss高性能db批处理功能使用方法介绍
2.模糊查询
以下是mysql数据库依赖模式:
以下是数据库无关模式
3.动态sql
持久层模板sql变量参数设置的三种方式
bboss 动态sql使用foreach循环示例
bboss持久层框架动态sql语句配置和使用
bboss 持久层sql语句中一维/多维数组类型变量、list变量、map变量、bean对象变量使用说明
4.原生态sql使用
上面的例子都是bboss 持久层or maping的模式,接下来看一个原生sql批处理删除和更新操作的玩法。
sql配置:
java代码:
另外,对应只有根据主键修改一批数据的更新批处理接口:
sql配置:
java代码:
5.mysql返回自增主键
参考文档
bboss持久层返回mysql自增主键功能说明
6.分页接口
bboss持久层分页接口使用示例
7.事务管理
持久层事务管理开发可以查阅:bboss培训文档.ppt
这个文档的第82-86页,有编程式事务、事务模板、声明式事务和注解事务的使用介绍。
事务管理组件TransactionManager介绍:
http://yin-bp.iteye.com/blog/1662509
8.多数据库sql语句配置支持
bboss持久层sql配置文件为同一个sql引用名称的sql语句提供了多数据库配置支持,持久层组件根据数据源对应的数据库类型执行相对应的sql语句,如果没有对应的sql则执行默认的sql
参考文档:
http://yin-bp.iteye.com/blog/1180111
9.常用的查询方法
查询返回map对象和List<Map>集合方法:http://yin-bp.iteye.com/blog/1112998
查询行处理器的使用:http://yin-bp.iteye.com/blog/1175847
bboss预编译批处理api使用介绍:http://yin-bp.iteye.com/blog/1197172
bboss 持久层框架直接返回基础数据类型和基础数据类型List集合介绍
10.bboss持久层多数据源配置管理及多数据库事务控制使用方法
http://yin-bp.iteye.com/blog/2065059
持久层动态创建、启动、停止和使用多个数据源的方法
11.bboss持久层操作Clob和Blob字段示例
http://yin-bp.iteye.com/blog/1939084
12.两个通用dao组件SQLExecutor和ConfigSQLExecutor的基本使用方法介绍
bbossgroups 3.1SQLExecutor组件api使用实例
bbossgroups持久层框架ConfigSQLExecutor组件api实例
更多持久层资料请通过以下地址获取:
http://yin-bp.iteye.com/category/55607
bboss持久层快速上手
1.批量增删改-真正采用jdbc的预编译批处理来实现,性能杠杠的,sql语句只需要配置一条,无需foreach
这里以更新为实例,新增和删除类似:
<property name="updateuser"> <![CDATA[ update user set name=#[name],age=#[age] where id=#[id] ]]> </property>
执行批处理操作
List<User> users =...; executor.updateBeans("updateuser",users);//在bboss默认数据源上执行 ,多个用户的更新操作以预编译批处理的模式执行 executor.updateBeans(dbname,"updateuser",users);//在指定的bboss数据源上执行
参考文档:
bboss预编译批处理api使用介绍
bboss高性能db批处理功能使用方法介绍
2.模糊查询
以下是mysql数据库依赖模式:
<property name="selectGroupInfoByNames"> <![CDATA[ select * from user where name like CONCAT('%',#[name],'%' ) ]]> </property>
Map<String, String> condition = new HashMap<String, String>();//定义包含变量的map对象,key为变量名称,value为变量值,模糊匹配符直接在sql中拼接 condition.put("name", "john"); List<CandidateGroup> list = executor.queryListBean(CandidateGroup.class, "selectGroupInfoByNames", condition);//执行查询
以下是数据库无关模式
<property name="selectGroupInfoByNames"> <![CDATA[ select * from user where name like #[name] ]]> </property>
Map<String, String> condition = new HashMap<String, String>();//定义包含变量的map对象,key为变量名称,value为变量值,模糊匹配符条件值变量中拼接 condition.put("name", "%john%"); List<CandidateGroup> list = executor.queryListBean(CandidateGroup.class, "selectGroupInfoByNames", condition);//执行查询
3.动态sql
持久层模板sql变量参数设置的三种方式
bboss 动态sql使用foreach循环示例
bboss持久层框架动态sql语句配置和使用
bboss 持久层sql语句中一维/多维数组类型变量、list变量、map变量、bean对象变量使用说明
4.原生态sql使用
上面的例子都是bboss 持久层or maping的模式,接下来看一个原生sql批处理删除和更新操作的玩法。
sql配置:
<property name="deleteByKey"> <![CDATA[ delete from TD_APP_BOM where id=? ]]> </property>
java代码:
/** * 用同样的sql只删一条记录,根据主键删除台账信息 * @throws AppBomException */ public boolean delete(String id) throws AppBomException { try { executor.delete("deleteByKey", id); } catch (Throwable e) { throw new AppBomException("delete appbom failed::id="+id,e); } return true ; } /** * 用同样的sql批量删除记录,受事务管理控制,如果有记录删除失败,则全部回滚之前的记录,当然也可以不要事务,也就是出错后 * 前面的记录成功、后面的记录不入库 * @param beans * @return * @throws AppBomException */ public boolean deletebatch(String ... ids) throws AppBomException { TransactionManager tm = new TransactionManager(); try { tm.begin(); executor.deleteByKeys("deleteByKey", ids); tm.commit(); } catch (Throwable e) { throw new AppBomException("batch delete appbom failed::ids="+ids,e); } finally { tm.release(); } return true; } //不要事务的模式 public boolean deletebatch(String ... ids) throws AppBomException { try { executor.deleteByKeys("deleteByKey", ids); } catch (Throwable e) { throw new AppBomException("batch delete appbom failed::ids="+ids,e); } return true; }
另外,对应只有根据主键修改一批数据的更新批处理接口:
sql配置:
<property name="updateByKey"> <![CDATA[ update TD_APP_BOM set status = 0 where id=? ]]> </property>
java代码:
/** * 用同样的sql只更新一条记录,根据主键更新台账信息 * @throws AppBomException */ public boolean update(String id) throws AppBomException { try { executor.update("updateByKey", id); } catch (Throwable e) { throw new AppBomException("update appbom failed::id="+id,e); } return true ; } /** * 用同样的sql批量更新记录,受事务管理控制,如果有记录更新失败,则全部回滚之前的记录,当然也可以不要事务,也就是出错后 * 前面的记录成功、后面的记录不入库 * @param beans * @return * @throws AppBomException */ public boolean updatebatch(String ... ids) throws AppBomException { TransactionManager tm = new TransactionManager(); try { tm.begin(); executor.upateByKeys("updateByKey", ids); tm.commit(); } catch (Throwable e) { throw new AppBomException("batch upadte appbom failed::ids="+ids,e); } finally { tm.release(); } return true; } //不要事务的模式 public boolean updatebatch(String ... ids) throws AppBomException { try { executor.updateByKeys("updateByKey", ids); } catch (Throwable e) { throw new AppBomException("batch update appbom failed::ids="+ids,e); } return true; }
5.mysql返回自增主键
参考文档
bboss持久层返回mysql自增主键功能说明
6.分页接口
bboss持久层分页接口使用示例
7.事务管理
持久层事务管理开发可以查阅:bboss培训文档.ppt
这个文档的第82-86页,有编程式事务、事务模板、声明式事务和注解事务的使用介绍。
事务管理组件TransactionManager介绍:
http://yin-bp.iteye.com/blog/1662509
8.多数据库sql语句配置支持
bboss持久层sql配置文件为同一个sql引用名称的sql语句提供了多数据库配置支持,持久层组件根据数据源对应的数据库类型执行相对应的sql语句,如果没有对应的sql则执行默认的sql
参考文档:
http://yin-bp.iteye.com/blog/1180111
9.常用的查询方法
查询返回map对象和List<Map>集合方法:http://yin-bp.iteye.com/blog/1112998
查询行处理器的使用:http://yin-bp.iteye.com/blog/1175847
bboss预编译批处理api使用介绍:http://yin-bp.iteye.com/blog/1197172
bboss 持久层框架直接返回基础数据类型和基础数据类型List集合介绍
10.bboss持久层多数据源配置管理及多数据库事务控制使用方法
http://yin-bp.iteye.com/blog/2065059
持久层动态创建、启动、停止和使用多个数据源的方法
11.bboss持久层操作Clob和Blob字段示例
http://yin-bp.iteye.com/blog/1939084
12.两个通用dao组件SQLExecutor和ConfigSQLExecutor的基本使用方法介绍
bbossgroups 3.1SQLExecutor组件api使用实例
bbossgroups持久层框架ConfigSQLExecutor组件api实例
更多持久层资料请通过以下地址获取:
http://yin-bp.iteye.com/category/55607
发表评论
-
bboss 持久层数据源引用外部属性配置介绍
2018-12-29 21:47 1099bboss 持久层数据源外部属性配置引用介绍 bboss持久 ... -
bboss持久层开启和关闭自带主键机制
2017-08-17 11:56 755bboss持久层开启和关闭自带主键机制 请访问文档: bbos ... -
bboss高性能db批处理功能使用方法介绍
2017-05-14 21:28 2147bboss持久层在v5.0.3.5中新增简单的高效的db批处理 ... -
bboss持久层公共sql片段定义和引用方法说明
2017-03-03 13:05 1130bboss持久层公共sql片段定义和引用方法说明 在配置sq ... -
最新版本mysql jdbc驱动包获取表定义信息空指针异常处理方法
2016-12-15 10:24 1366在使用最新的mysql-connector-java 6.0. ... -
持久层快速入门系列一
2016-08-19 13:00 1266持久层快速入门 先在应用中导入bboss 持久层(bboss ... -
bboss与spring中配置和引用bboss数据源和bboss dao组件方法说明
2016-08-10 16:04 921首先在项目中导入bboss 持久层包: maven坐标 & ... -
bboss 持久层sql xml配置文件编写和加载方法介绍
2016-04-05 13:14 1698bboss 持久层sql xml配置文件编写和加载方法介绍 通 ... -
bboss持久层设置数据库查询fetchsize参数方法
2015-11-06 11:54 1018bboss持久层设置数据库查询fetchsize参数方法 j ... -
bboss持久层快速入门教程
2015-09-19 13:49 1594bboss持久层快速入门教程,快速搭建bboss持久层的开 ... -
bboss持久层数据库适配器编写和注册方法
2015-02-06 15:21 978bboss持久层数据库适配器编写和注册方法 bboss持久层默 ... -
bboss持久层查询元数据缓存机制开启方法
2014-11-18 12:03 1024bboss持久层为了提升数据库查询操作性能,提供了对查 ... -
bboss内置数据源apache dbcp与druid数据源切换方法
2014-09-23 09:59 1390bboss内置数据源与druid数据源切换方法 bboss内置 ... -
bboss持久层多数据源配置及多数据库事务控制使用方法
2014-05-11 20:24 2980bboss持久层多数据源配置及使用方法,持久层框架及demo下 ... -
bboss持久层demo使用说明
2014-03-11 09:38 1218持久层案例可以用svn客户端下载eclipse工程,导入ecl ... -
bboss持久层More分页查询API使用介绍
2013-10-18 16:17 1485为了更好地提高数据库分页查询的效率,bboss持久层在Conf ... -
bboss持久层操作Clob和Blob字段示例
2013-09-09 13:29 1232bboss持久层操作Clob和Blob非常方便,基于bboss ... -
bboss持久层ormaping机制详解
2013-09-04 21:04 1161bboss持久层针对db操作即提供了原始sql语句的支持,又提 ... -
bboss持久层改进支持模块sql配置文件引用其它模块sql配置文件中sql语句
2013-09-01 22:23 935bboss持久层改进支持模块sql配置文件引用其它模块sql配 ... -
bboss持久层sql语句输出到log4j日志文件设置
2013-08-15 20:17 1187bboss持久层sql语句输出到log4j日志文件设置 po ...
相关推荐
本实例是一个基于bboss es spring boot starter的demo maven工程,可供spring boot项目集成bboss elasticsearch rest client参考 展示了通过spring boot管理单集群功能和管理多集群功能 单集群测试用例:...
例如,可以使用bboss的批处理API一次性处理大量数据,提高数据导入效率。 7. **应用场景** 结合bboss和Elasticsearch,开发者可以轻松实现日志实时分析、用户行为追踪、商品推荐等业务场景,通过DSL实现复杂查询和...
2. **视图(View)**:视图层是用户界面,BBoss MVCDemo允许开发者使用JSP、FreeMarker、Velocity等模板引擎来创建动态页面。视图与控制器通过请求参数进行交互,展示由控制器处理后传递的数据。 3. **控制器...
4. **动态SQL**:允许在运行时构建和执行SQL,增加了代码的灵活性。 5. **查询优化**:可能包含SQL查询优化,如自动添加索引、避免全表扫描等。 6. **数据迁移工具**:方便在不同数据库间进行数据迁移或同步。 ...
bboss会话共享是一种分布式会话管理技术,它针对在集群环境下应用部署时如何解决会话数据丢失和单点登录问题提供了专门的解决方案。根据提供的文档内容,我们可以详细探讨bboss会话共享涉及的关键知识点。 首先,...
2. **数据库操作**:BBoss提供了便捷的数据访问层(DAO),支持SQL动态生成、事务管理以及多种数据库的兼容性,使得数据库操作变得简单且高效。 3. **服务治理**:框架内置了服务注册与发现机制,可以实现微服务...
2. **bboss elasticsearch开发入门教程.wmv**: 通过实例演示,讲解如何使用BBoss进行索引操作、数据插入、查询和更新,帮助初学者快速上手。 **六、资料阅读** "说明.txt" 文件可能包含了关于这些教程的详细步骤和...
bboss-datatran 的流批一体功能打破了传统流式处理与批处理之间的界限。它允许用户在同一平台上处理实时流数据和批量历史数据,降低了系统复杂性,提高了数据处理的实时性和一致性。这对于实时监控、在线分析以及...
springboot集成ElasticsearchBboss调用Elasticsearch的案例分享
8. `cglib-nodep-3.1.jar`:CGLIB是一个代码生成库,常用于Java代理和动态类生成,可能在BBoss Elasticsearch中用于创建Elasticsearch操作的动态代理类。 通过这些库的组合,BBoss Elasticsearch提供了一种高效且...
BBoss安全认证过滤器是Java Web开发中一种用于实现用户身份验证和权限控制的重要组件。在Web应用程序中,过滤器(Filter)是Servlet规范的一部分,它允许开发者在请求到达目标Servlet或JSP之前进行预处理,以及在...
3. **事务管理**:在TestTransaction.sql这个文件名中,我们可以推测BBoss Persistent也包含了事务管理功能。在处理CLOB和BLOB数据时,事务是至关重要的,因为它们确保了数据的一致性和完整性。如果在操作过程中发生...
本文将详细介绍如何在BBoss的IOC配置文件中引用外部属性文件,以便更好地管理和动态配置应用。 首先,BBoss的IOC配置文件通常是一个XML文件,比如`bboss-ioc.xml`,在这个文件中我们可以声明并配置各种bean。当需要...
bboss-datatran 由 bboss 开源的数据采集&流批一体化工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能。 同时也是一个高性能Elasticsearch orm 客户端,100%兼容es各个版本 ...
官方版本,亲测可用
Elasticsearch rest client bboss介绍-Elastic2018中国开发者大会演讲稿
它遵循Servlet 2/3规范API,并提供了创建、修改、销毁、查询和监控session的功能。bbosssession支持灵活可扩展的序列化机制,并依赖于分布式缓存技术,如Redis或Mongodb。通过Session存储服务,bbosssession能够实现...
该项目是基于Java语言的bboss开源框架构建的设计源码,包含3075个文件,涵盖2700个Java源文件、85个XML配置文件、52个HTML文件、39个properties和prefs文件、23个GIF图片、18个Gradle文件、17个gitignore文件、10个...