java 模糊查询 分页(自定义标签)

来源:互联网 发布:数据泄密防护系统 编辑:程序博客网 时间:2024/05/17 22:59

本次的实现是采用struts2+hibernate+分页标签 实现

class :PagerTag 是用来实现自定义分页标签,继承SimpleTagSupport实现自定义标签

  

标签的tld文件 :my.tld

 

模糊查询加分页的展示jsp界面

<textarea cols="87" rows="15" name="code" class="xhtml">&lt;%@ page language="java" import="java.util.*" pageEncoding="gb2312"%&gt;&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;&lt;%@ taglib uri="http://java.pojo.com/tag" prefix="my" %&gt;&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;&lt;html&gt; &lt;head&gt; &lt;title&gt;管理电影档期&lt;/title&gt;&lt;!--&lt;link rel="stylesheet" type="text/css" href="styles.css" mce_href="styles.css"&gt;--&gt;&lt;link rel="stylesheet" type="text/css" href="/project/css/style_admin.css" mce_href="project/css/style_admin.css"&gt; &lt;mce:script type="text/javascript" src="/project/js/date.js" mce_src="project/js/date.js"&gt;&lt;/mce:script&gt; &lt;/head&gt; &lt;body&gt;&lt;form action="Release_findAllPaging.action" method="post" name="form1"&gt;&lt;table cellspacing="0" cellpadding="4" width="100%" class="tableborder" id="table3"&gt;&lt;tr&gt;&lt;td class="header" colspan="7"&gt;信息查询&lt;/td&gt;&lt;/tr&gt;&lt;tr align="left"&gt;&lt;td width="52px"&gt;影片名称&lt;/td&gt;&lt;td width="60px"&gt;&lt;input type="text" name="filmInfo.fname" /&gt;&lt;/td&gt;&lt;td width="52px"&gt;影厅名称&lt;/td&gt;&lt;td width="60px"&gt;&lt;s:action name="Cinemainfo2_findAll" namespace="/" executeResult="true" ignoreContextParams="true" /&gt;&lt;/td&gt;&lt;td width="26px"&gt;日期&lt;/td&gt;&lt;td width="60px"&gt;&lt;INPUT name="rdate" onFocus="this.select();" readonly="readonly" onClick="fPopCalendar(event,this,this);" size="20px" /&gt;&lt;/td&gt;&lt;td&gt;&lt;input type="submit" value="查询"/&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/form&gt;&lt;table cellspacing="1" cellpadding="4" width="100%" class="tableborder" id="table3"&gt;&lt;tr&gt;&lt;td colspan="9" class="header"&gt;电影档期管理&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt; &lt;td align="center" class="altbg1"&gt;&lt;b&gt;电影图片&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;电影名称&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;日期&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;时间&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;影厅&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;票价&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;编辑&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;删除&lt;/b&gt;&lt;/td&gt;&lt;td align="center" class="altbg1"&gt;&lt;b&gt;查看电影订票情况&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;s:iterator value="#request.list"&gt;&lt;tr&gt;&lt;td align="center" class="altbg2"&gt;&lt;img src="&lt;s:property value=" mce_src="&lt;s:property value="filmInfo.image" /&gt;" width="100px" height="100px" /&gt; &lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;s:property value="filmInfo.fname" /&gt;&lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;s:date name="rdate" format="yyyy-MM-dd" /&gt;&lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;s:date name="rtime" format="HH:mm" /&gt;&lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;s:property value="cinemaInfo.cname" /&gt;&lt;/td&gt; &lt;td class="altbg2" align="center"&gt; &lt;s:property value="filmInfo.price" /&gt;元&lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;a href="javascript:if(confirm('确实要删除吗?'))window.location='Release_delete.action?rid=&lt;s:property value=" mce_href="javascript:if(confirm('确实要删除吗?'))window.location='Release_delete.action?rid=&lt;s:property value="rid" &gt;&lt;/a&gt;'"&gt;删除&lt;/a&gt; &lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;a href="Release_show.action?rid=&lt;s:property value=" mce_href="Release_show.action?rid=&lt;s:property value="rid" &gt;&lt;/a&gt;"&gt;修改&lt;/a&gt; &lt;/td&gt;&lt;td class="altbg2" align="center"&gt;&lt;a href="SaleAction_getSaleByCondition.action?cid=&lt;s:property value=" mce_href="SaleAction_getSaleByCondition.action?cid=&lt;s:property value="cinemaInfo.cid"&gt;&lt;/a&gt;&amp;fid=&lt;s:property value="filmInfo.fid"/&gt;&amp;rdate=&lt;s:date name="rdate" format="yyyy-MM-dd"/&gt;&amp;rtime=&lt;s:property value="rtime"/&gt;"&gt;查看&lt;/a&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/s:iterator&gt;&lt;tr style="font-size:12px" mce_style="font-size:12px" align="right"&gt;&lt;th colspan="100" class="pager"&gt;&lt;my:pager uri="Release_findAllPaging.action?temp=1&amp;filmInfo.fname=${fname}&amp;cinemaInfo.cid=${cid}&amp;rdate=${rdate}"curpage="${ curpage }"pagesize="${ pagesize}"pagecount="${ pagecount}"rowcount="${rowcount }"/&gt;&lt;/th&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/body&gt;&lt;/html&gt;</textarea>

这里注意到的一点就是 需要导入自定义标签

还有一点 注意到自定义标签<my> uri的写法  由于我的想法是 将查询条件利用参数传递过去(参数存在request作用域下)

最重要的就是我在路径后面加上了一个temp参数 方便没有带条件的查询[条件的参数为空] (需要对比前面的分页标签类里的uri写法)

 

上面 Release_findAllPaging.action  在struts.xml里配置 不打算贴出来了 对应的类是ReleaseAction 调用的dao类为ReleaseDao

ReleaseAction类重要方法和属性(get set 方法省略...)

dao类重要方法

还有要注意点的是 条件是采用get方式传递 中文的问题解决 需在tomcat下配置文件 加上URIEncoding="GB2312"