·我们在之前代码上实现一个搜索框
输入查询关键字:<input type="text" name="kw" value="<%=keyWord.equals("null")?"":keyWord%>"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
<input type="submit" value="查询">
在这段代码中,我们将value值用一个判断语句写出,是为了在下一页是,搜索框的内容被保存下来。
·为了实现分页组件的重用,我们将分页显示的,翻页按钮和搜索框封装成一个jsp页面,并设置一个status值,当值为searchAll或searchLike时,分别表示,搜索全部的值和关键字搜索,即split_page.jsp:
其中要注意的是:在查询的结果集为空时,应该不显示上一页下一页按钮,否则点击会出错,在这里,我们用总记录数allRecorders来判断(具体代码见附件)。
·至于数据库操作和实体的分装,我们分别用DAO和javaBean实现,设计DataBaseConnection.java,Person.java,PersonDAO.java,PersonDAOImpl.java,DAOFactory.java五个类(其中PersonDAO.java是接口)。
1.其中DataBeaseConnection中实现,数据库的连接操作,在构造器中实现数据库连接,用getConnection()返回一个Connection,close()实现关闭操作。
2.Person类是一个javaBean,不多说。
3.PersonDAO定义了一个,对Person表进行操作的接口,有:
// 得到全部的记录数
public int getAllCount() throws Exception ;
// 得到模糊查询的记录数
public int getByLikeCount(String cond) throws Exception ;
// 得到全部的记录
public List queryAll(int currentPage,int lineSize) throws Exception ;
// 模糊查询记录
public List queryByLike(String cond,int currentPage,int lineSize) throws Exception ;
四个方法。
4.PersonDAOImpl是PersonDAO的实现,在这里我们通过DBMS的SQL语句实现了真分页:
例如关键字搜索,sql语句为:
SELECT id,uid,name,password FROM person WHERE uid LIKE ? OR name LIKE ? limit "+(currentPage-1)*lineSize+","+lineSize
Limit + 查询开始记录号(从0开始) + 查询的记录条数,其中,currentPage和lineSize是传递过来的参数。
查询所有的记录数为:SELECT id,uid,name,password FROM person limit "+(currentPage-1)*lineSize+","+lineSize
5.DAOFactory是一个工厂类,只有一个方法,
public static PersonDAO getPersonDAOInstance()
{
return new PersonDAOImpl() ;
}
返回一个接口
·关键的是对这些类的调用,我们不再放在jsp中,而是用一个servlet去处理,servlet通过session中设置的参数与jsp联系起来,通常像这种查询,我们将List添加到session中,再在jsp中获得,从而实现遍历与显示。这就实现了MVC模式,将jsp中的java代码减到最少。
发表评论
-
java面试总结(1)——基础知识
2012-07-05 15:54 8671、什么是多态? 多态,父类的引用指向子类的对象,使父类的引 ... -
递归-组合(用背包问题解)
2011-04-01 21:23 749求指定数据的组合,这里的指定数据用一个数组模拟所有可以选择 ... -
Servlet和JSP的线程安全问题
2011-03-25 10:50 773不要定义servlet的类变量,不要使用jsp中的s ... -
Java同步机制浅谈―synchronized
2011-03-25 10:20 990Java对多线程的支持 ... -
代码复用的规则
2011-03-24 17:25 650李炜 北京杰合伟业软件公司产品技术部经理2001 年 7 ... -
java多进程——Java Multiple process (PID)
2011-03-24 10:48 1539Java的多进程运行模式分析 一般我们在java中运行其 ... -
用JSP实现假分页
2008-08-08 10:29 7361.使用MySql数据库建一个表,并添加记录: -- 删除表 ... -
位运算符
2008-08-24 19:35 339Java 定义的位运算(bitwise operators ) ... -
struts高级技术——解决重复提交和上传文件
2008-08-24 19:44 434·解决重复提交的工具——Token令牌<?xml:nam ... -
从class.forName()说java中的reflection(反射/映像)
2008-09-21 21:19 530先通过我们一个熟悉的例子来说明: 使用JDBC时,我们都会很 ... -
eclipse 自动补全的设置,不用按 alt-/ 了
2011-03-23 11:07 702偶然间看到了这个,或许有和我一样不喜欢按 alt-/ 兄弟用得 ... -
用JSP实现假分页
2008-08-08 10:29 13441.使用MySql数据库建一个表,并添加记录: -- 删除表 ... -
用MVC模式实现真分页
2008-08-23 21:01 1156·我们在之前代码上实现一个搜索框 输入查询关键字:< ... -
位运算符
2008-08-24 19:35 751Java 定义的位运算(bitwise operators ) ... -
java排序大全
2008-08-24 19:42 648java排序大全 插入排序: packag ... -
struts高级技术——解决重复提交和上传文件
2008-08-24 19:44 840·解决重复提交的工具——Token令牌<?xml:nam ... -
从class.forName()说java中的reflection(反射/映像)
2008-09-21 21:19 904先通过我们一个熟悉的例子来说明: 使用JDBC时,我们都会很 ...
相关推荐
在MVC模式下实现分页功能!通过ACTION
基于Jsp+JavaBean+Servlet实现MVC模式的分页模板 分页没有css,但分页功能齐全 对初学者应该有帮助 分三层编写dao层 service层 web层 数据库可以用ms server2005 或者 mysql5.0 脚本为ms2005.sql 、mysql.sql 切换...
本实例主要是实现一个登录并显示用户分页信息的小系统,基于MVC模式开发的。 MVC模式的处理过程:首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后调用模型来处理用户的请求并返回数据,最后控制...
MVC设计模式下常见Web分页方案存在一些不足,针对降低耦合性和提高复用性提出了改进方案,并通过在数据层引入Hibernate框架,服务层引入Bridge桥接模式,表示层引入Struts框架对改进方案加以实现。
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码,尤其是ScottGu的PagedList类和相关方法,经过站长不断完善和改进后推出的...
servlet使用MVC设计模式,实现cookie缓存和分页显示数据。
ZK中利用paging组件, 结合MVC与MVVM两种模式,实现大量数据的动态分页。
超强分页类,四种分页模式,默认采用类似baidu,google的分页风格 支持自定义风格,自定义样式,同时支持PHP4和PHP5 里面deom.php有一个示例,下载下来直接可以用,适合新手使用!
javaweb的权限过滤以及登录验证后的分页实现案例。基于MVC模式开发.zip
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码,尤其是ScottGu的PagedList类和相关方法,经过不断完善和改进后推出的比较...
利用MVC模式实现信息的增删改查,核心实现内容还需要包括网页登录、多条件查询、分页显示、角色管理。 设置图书管理系统,分管理员模式和读者模式,包含3个数据库,连接Mysql数据库,适合初学者。 内含全部代码的...
一个简单的jsp课程大作业,实现后台管理员通过该系统对数据库表的增删改查等功能的一个后台管理系统,压缩包含有代码加数据库(MySQL)加配套说明文档,文档有三十多页,对每个页面都有说明。
servlet框架mvc模式实现的在线购物和分页显示
NULL 博文链接:https://caihorse.iteye.com/blog/1064068
教材库存管理系统,用的struts1.38的框架,MVC的模式,有用到Ajax 实现无刷新分页、下拉框多级联动、查找提示及后台验证,用JExcel实现excel的导入导出等技术。tomcat6.0的服务器,数据库是SQL Server2000. 内附需求...
说明: 该系统是一个web用户管理系统,可以实现用户...采用的技术有 session,分页技术,mvc模式开发,并结合一些js函数操作,html,java class技术 实现本科课程设计作业足以 关键字: jsp mvc java session 分页 js
通过对数据库的调用以及MVC模式下,实现jsp的分页,已经带条件分页!
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码,尤其是ScottGu的PagedList类和相关方法,经过站长不断完善和改进后推出的...