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

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

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

[size=large][b]1.1 导入标签定义文件[/b][/size]

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

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

<%
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>

[size=x-large][b]1.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息[/b][/size]

       <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}一致。
[size=x-large][b]1.4 Beaninfo标签上执行预编译查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集[/b][/size]


<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>





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

[size=x-large][b]2.1 导入标签定义文件[/b][/size]

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

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


[size=x-large][b]2.2 定义预编译sql语句[/b][/size]

<%
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>

[size=x-large][b]2.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息[/b][/size]

 <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}一致。
[size=x-large][b]2.4 list标签上执行预编译分页查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集[/b][/size]

 <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>

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

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

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

-->

[size=x-large][b]3.2 定义预编译sql语句[/b][/size]
<%
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>

[size=x-large][b]3.3 通过sqlparams和sqlparam标签指定预编译绑定变量信息[/b][/size]
<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]一致。
[size=x-large][b]3.4 Pager标签上执行预编译分页查询Statement指定预编译sql语句,sqlparamskey指定通过key属性从request中获取预编译参数绑定变量集[/b][/size]
<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>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值