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

简介: 本系列文章详细介绍bboss标签库的数据库标签具体使用方法,涉及到的功能包括: db查询(普通查询、预编译查询,分页查询),db新增、修改、删除、批处理操作(预编译)。 bboss数据库标签系列一 分页列表详细信息标签预编译sql查询数据 beaninfo标签,pager标签,list标签预编译sql获取数据功能相关属性和标签: sqlparamskey-指定将绑定变量参数存储在request 属性集中的变量名称,以便pager,beaninfo,list标签获取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>
目录
相关文章
|
3天前
|
关系型数据库 MySQL 数据库
ORM对mysql数据库中数据进行操作报错解决
ORM对mysql数据库中数据进行操作报错解决
24 2
|
2天前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
4天前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
8天前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云数据库重磅升级!元数据服务OneMeta + OneOps统一管理多模态数据
|
11天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
13天前
|
存储 SQL 关系型数据库
使用MySQL Workbench进行数据库备份
【9月更文挑战第13天】以下是使用MySQL Workbench进行数据库备份的步骤:启动软件后,通过“Database”菜单中的“管理连接”选项配置并选择要备份的数据库。随后,选择“数据导出”,确认导出的数据库及格式(推荐SQL格式),设置存储路径,点击“开始导出”。完成后,可在指定路径找到备份文件,建议定期备份并存储于安全位置。
138 11
|
1月前
|
弹性计算 关系型数据库 数据库
手把手带你从自建 MySQL 迁移到云数据库,一步就能脱胎换骨
阿里云瑶池数据库来开课啦!自建数据库迁移至云数据库 RDS原来只要一步操作就能搞定!点击阅读原文完成实验就可获得一本日历哦~
|
1月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
8天前
|
存储 SQL 关系型数据库
MySQL的安装&数据库的简单操作
本文介绍了数据库的基本概念及MySQL的安装配置。首先解释了数据库、数据库管理系统和SQL的概念,接着详细描述了MySQL的安装步骤及其全局配置文件my.ini的调整方法。文章还介绍了如何启动MySQL服务,包括配置环境变量和使用命令行的方法。最后,详细说明了数据库的各种操作,如创建、选择和删除数据库的SQL语句,并提供了实际操作示例。
49 13
MySQL的安装&数据库的简单操作
|
14天前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案