`

bboss数据库标签系列一 分页列表详细信息标签预编译sql查询数据

阅读更多
本系列文章详细介绍bboss标签库的数据库标签具体使用方法,涉及到的功能包括:
db查询(普通查询、预编译查询,分页查询),db新增、修改、删除、批处理操作(预编译)。


bboss数据库标签系列一 分页列表详细信息标签预编译sql查询数据
beaninfo标签,pager标签,list标签预编译sql获取数据功能相关属性和标签:
sqlparamskey-指定将绑定变量参数存储在request 属性集中的变量名称,以便pager,beaninfo,list标签获取sql的绑定变量参数值。本节详细介绍如何直接通过预编译sql语句来实现数据展示。
1   详细信息Beaninfo标签
<%@ page contentType="text/html; charset=UTF-8" language="java" import="java.sql.*,java.util.List" errorPage=""%>

1.1 导入标签定义文件

<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg"%>

<!--
    测试在beaninfo标签上直接执行预编译查询操作,获取详细信息实例
    statement:数据库查询语句
    dbname:查询的相应数据库名称,在poolman.xml文件中进行配置
-->
1.2 定义预编译sql语句

<%
    String table_name="td_sm_user";
    String statement="select * from tableinfo where table_name=${table_name} " ;
    
%>

其中${table_name}为绑定变量,其值将由<pg:sqlparam标签来设定


<html>
<head>
<title>测试在beaninfo标签上直接执行数据库,获取详细信息实例</title>
</head>
<body>
 

    <table>

1.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息

       <pg:sqlparams sqlparamskey="key" pretoken="//$//{" endtoken="//}">

              <pg:sqlparam name="table_name" value="<%= table_name %>" type="string"/>

                  
       </pg:sqlparams> 

Sqlparams标签: sqlparamskey属性用来在request中存放这些绑定变量信息,pretoken="//$//{" endtoken="//}"分别指定了变量的定义前界符和后分界符。
Sqlparam指定了变量table_name的值以及类型为string,table_name必须和sql语句:
select * from tableinfo where table_name=${table_name}中的${table_name}一致。
1.4 Beaninfo标签上执行预编译查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集


      
<pg:beaninfo statement="<%=statement %>" 

              dbname="bspf"

               sqlparamskey="key">

       
           <tr class="cms_data_tr" id="<pg:cell colName="table_name" defaultValue=""/>">

              <td>
                  table_name:
              </td> 
              <td>
                  <pg:cell colName="table_name" defaultValue=""/>

              </td> 
              <td>
                  table_id_name:
              </td>
              <td>
                  <pg:cell colName="table_id_name" defaultValue="" />

              </td>
              <td class="tablecells" align=center height='30' width="5%">

                  table_id_value:
              </td>  
              <td class="tablecells" align=center height='30' width="5%">

                  <pg:cell colName="table_id_value" defaultValue=""/>

              </td>  
           </tr>
       </pg:beaninfo>





2 列表展示list标签
<%@ page contentType="text/html; charset=UTF-8" language="java" import="java.sql.*,java.util.List" errorPage=""%>

2.1 导入标签定义文件

<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg"%>

<!--
    测试在list标签上直接执行 预编译数据库操作,获取列表信息实例
    statement:数据库预编译查询语句
    dbname:查询的相应数据库名称,在poolman.xml文件中进行配置
-->


2.2 定义预编译sql语句

<%
    String TABLE_ID_TYPE="int";
    String statement="select * from tableinfo where TABLE_ID_TYPE=${TABLE_ID_TYPE} order by table_id_value desc" ;
    
%>

其中${TABLE_ID_TYPE}为绑定变量,其值将由<pg:sqlparam标签来设定


<html>
<head>
<title>测试在list标签上直接执行预编译数据库操作,获取分页列表信息实例</title>
</head>
<body>
 

    <table>

2.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息

     
 <pg:sqlparams sqlparamskey="key" pretoken="//$//{" endtoken="//}">

              <pg:sqlparam name="TABLE_ID_TYPE" value="<%=TABLE_ID_TYPE %>" type="string"/>

                  
       </pg:sqlparams> 

Sqlparams标签: sqlparamskey属性用来在request中存放这些绑定变量信息,pretoken="//$//{" endtoken="//}"分别指定了变量的定义前界符和后分界符。
Sqlparam指定了变量TABLE_ID_TYPE的值以及类型为int,TABLE_ID_TYPE必须和sql语句:
select * from tableinfo where TABLE_ID_TYPE=${TABLE_ID_TYPE} order by table_id_value desc
中的${TABLE_ID_TYPE}一致。
2.4 list标签上执行预编译分页查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集

     
 <pg:list  id="testid" statement="<%=statement%>" sqlparamskey="key"

              dbname="bspf" isList="false" maxPageItems="5">

           <pg:header>
              <pg:title type="td" width="15%" className="headercolor" title="表名" sort="true" colName="table_name"/>

              <pg:title type="td" width="15%" className="headercolor"  sort="true" colName="table_id_name" title="表id名"/>
              <pg:title type="td" width="15%" className="headercolor"  sort="true" colName="table_id_value" title="表id值"/>            
           </pg:header>
           <pg:param name="table_name"/>

           <tr class="cms_data_tr" id="<pg:cell colName="table_name" defaultValue=""/>">

              <td> <pg:rowid offset="false" increament="1"/>

                  <pg:cell colName="table_name" defaultValue=""/>

              </td> 
              <td>
                  <pg:cell colName="table_id_name" defaultValue="" />

              </td>
              <td class="tablecells" align=center height='30' width="5%">

                  <pg:cell colName="table_id_value" defaultValue=""/>

              </td>  
           </tr>
       </pg:list>
       <tr><td><pg:rowcount id="testid"/></td><td colspan="2">yi

       <pg:index custom="true" id="testid"/>

       </td></tr>    
       
    </table>
</body>
</html>

3 分页展示pager标签
<%@ page contentType="text/html; charset=UTF-8" language="java" %>

3.1 导入标签定义文件
<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg"%>

<!--
    测试在pager标签上直接执行预编译数据库操作,获取列表/分页信息实例
    statement:数据库查询语句
    dbname:查询的相应数据库名称,在poolman.xml文件中进行配置
   
-->

3.2 定义预编译sql语句
<%
    String object_id = "20"; 
    String sql = "select * from sqltest  where object_id=#[object_id] order by object_name";
 %>

其中#[object_id]为绑定变量,其值将由<pg:sqlparam标签来设定


<html>
<head>
<title>测试在pager标签上直接执行数据库操作,获取分页列表信息实例</title>
</head>
<body>
    <table>

3.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息          
<pg:sqlparams sqlparamskey="key" pretoken="#//[" endtoken="//]">

              <pg:sqlparam name="object_id" value="<%=object_id %>" type="int"/>

           </pg:sqlparams>

Sqlparams标签: sqlparamskey属性用来在request中存放这些绑定变量信息,pretoken="#//[" endtoken="//]"分别指定了变量的定义前界符和后分界符。
Sqlparam指定了变量object_id的值以及类型为int,object_id必须和sql语句:
select * from sqltest  where object_id=#[object_id] order by object_name

中的#[object_id]一致。
3.4  Pager标签上执行预编译分页查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集
          
<pg:pager statement="<%=sql %>" 

                 dbname="bspf" 

                 isList="false" 

                 pager_infoName="pager_info11" 

                 sqlparamskey="key" >          

                 <%
                 System.out.println("pager_info11.getDataSize():" + pager_info11.getDataSize());
                 %>
                 <tr><td colspan="3"><pg:index/></td></tr>

           <pg:list >

           <%
                 System.out.println("pager_info11.getDataSize()2:" + pager_info11.getDataSize());
                 %>
              <tr class="cms_data_tr" id="<pg:cell colName="object_id" defaultValue=""/>">

                  <td>
                     <pg:cell colName="owner" defaultValue=""/>

                  </td> 
                  <td>
                     <pg:cell colName="object_id" defaultValue="" />

                  </td>
                  <td class="tablecells" align=center height='30' width="5%">

                     <pg:cell colName="object_name" defaultValue=""/>

                  </td>  
              </tr>
           </pg:list>
           <tr><td colspan="3"><br><br></td></tr>

           <%
                 System.out.println("pager_info11.getDataSize()1:" + pager_info11.getDataSize());
                 %>
           </pg:pager>
       
    </table>
</body>
</html>
分享到:
评论

相关推荐

    由 bboss 开源的数据采集&流批一体化工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能

    **bboss-datatran** 是一个由 **bboss** 社区开源的高效数据处理工具,专注于数据采集、数据清洗转换以及数据入库等任务。它实现了流批一体化的数据处理能力,使得用户能够灵活地应对实时和批量的数据处理场景。在...

    bboss-db-elasticsearch-tool-master_java_

    【bboss-db-elasticsearch-tool-master_java_】是一个Java ORM(对象关系映射)框架,它在功能上超越了MyBatis,提供了对多种数据库的广泛支持,包括MySQL、Oracle、PostgreSQL、SQLServer、DB2、DM以及MongoDB。...

    企业级J2EE开源框架bboss

    BBoss(全称为bbossgroups)是一个专为企业级J2EE应用设计的开源框架,它为Java开发者提供了一系列强大的工具和服务,以简化Web应用程序的开发过程。该框架旨在提高开发效率,降低维护成本,同时保持高度的灵活性和...

    由 bboss 开源的数据采集同步ETL工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能

    bboss-datatran 由 bboss 开源的数据采集&流批一体化工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能。 同时也是一个高性能Elasticsearch orm 客户端,100%兼容es各个版本 ...

    bboss会话共享培训文档

    bboss会话共享是一种分布式会话管理技术,它针对在集群环境下应用部署时如何解决会话数据丢失和单点登录问题提供了专门的解决方案。根据提供的文档内容,我们可以详细探讨bboss会话共享涉及的关键知识点。 首先,...

    bboss mvcdemo 下载地址

    BBoss MVCDemo 是一个基于Java的企业级应用框架,它主要为开发者提供了一种高效、灵活的MVC(Model-View-Controller)开发模式。这个框架的目的是简化企业级Web应用的开发流程,提高开发效率,并且具备良好的可扩展...

    bboss persistent 1.0.2中方便地实现大字段(clob,blob)的处理

    在IT行业中,数据库操作是必不可少的一部分,特别是在处理大数据量或者特殊数据类型如CLOB(Character Large Object)和BLOB(Binary Large Object)时。BBoss Persistent是一个轻量级的持久层框架,它提供了方便的...

    bboss elasticsearch-5.7.8.rar

    BBoss Elasticsearch是针对Elasticsearch设计的一款辅助工具,主要用于帮助开发者实现数据库数据到Elasticsearch的批量和定时导入。 BBoss(Business Basic Open Source)是一系列企业级开源组件的集合,旨在简化...

    bboss+es基本操作示例.zip

    例如,可以使用bboss的批处理API一次性处理大量数据,提高数据导入效率。 7. **应用场景** 结合bboss和Elasticsearch,开发者可以轻松实现日志实时分析、用户行为追踪、商品推荐等业务场景,通过DSL实现复杂查询和...

    bboss+easyui帮助文档比较详细

    BBoss,全称为“Business Basic Operation Support”,是一个基于Java的企业级开发框架,它提供了丰富的组件和工具,使得开发者能够快速地进行业务逻辑的构建。而EasyUI则是一个基于jQuery的前端UI库,它为开发者...

    bboss-elasticsearch开发环境搭建和开发入门视频教程.

    2. **bboss elasticsearch开发入门教程.wmv**: 通过实例演示,讲解如何使用BBoss进行索引操作、数据插入、查询和更新,帮助初学者快速上手。 **六、资料阅读** "说明.txt" 文件可能包含了关于这些教程的详细步骤和...

    bboss ioc配置文件中使用外部属性文件介绍

    除了`&lt;property-placeholder&gt;`标签,BBoss还支持使用`&lt;context:property-placeholder&gt;`标签,它是Spring框架的一部分,也可以与BBoss集成使用。这种方式的配置类似,但提供了更多的选项,如默认值、忽略未定义的属性...

    springboot集成ElasticsearchBboss调用Elasticsearch.md

    springboot集成ElasticsearchBboss调用Elasticsearch的案例分享

    基于Java的bboss-datatran数据采集与流批一体化处理工具设计源码

    本bboss-datatran项目基于Java开发,包含591个文件,包括Java源代码、...系统实现了数据采集、数据清洗转换处理、数据入库以及数据指标统计计算的流批一体化处理功能,界面友好,功能完善,适合用于数据采集与处理。

    springboot整合bboss es增删改查测试demo代码

    本实例是一个基于bboss es spring boot starter的demo maven工程,可供spring boot项目集成bboss elasticsearch rest client参考 展示了通过spring boot管理单集群功能和管理多集群功能 单集群测试用例:...

    bboss-elastic-tran:bboss 数据同步工具

    弹性Tran老板数据交换模块使用文档: : Bboss是一个很好的Elasticsearch Java Rest客户端。 它运行并访问像mybatis这样的elasticsearch来关联数据库。环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5...

    SHELL抽取C程序中SQL

    在程序中,我们可以看到一个SQL查询,用于从`DW_INDI_GROUP_INST_VALUE_201101`表中汇总并核对指标数据。这个查询是通过`locate()`函数和`length()`函数来匹配指标名称,然后根据`indi_def_id`和`indi_name`进行分组...

    基于Java的bboss开源框架设计源码

    bboss框架集成了AOP/iOC、MVC、持久化标签库、RPC、事件处理、Bean-XML序列化等多种功能。本项目基于bboss框架构建了数据采集ETL工具、流批一体化Stream工具、Elasticsearch客户端工具和WebSession共享框架等应用。

Global site tag (gtag.js) - Google Analytics