请给出一个MVC模式下用Servlet和jsp分页的HelloWord实际的例子?

3.MVC模式下分页:

马克-to-win:像淘宝百度这样的类似网页,我们用了很多很多。基本上就 是输入查询条件以后,符合查询条件的结果可能会成千上万。我们不能一下子把所有这些结果都列出来,只能一次显示一页。当用户按下一页的时候,才会把下一页 的内容列出来。这样不至于内存崩溃。要达到这样的效果,要用到分页技术。分页技术的核心思想就是把所有的结果放在一个ArrayList的当中(在我们的 例子当中就是ArrayList ret)。马克-to-win:这个ArrayList连同相关参数比如一共有多少行(totalNumberOfRowsInDB),每页有多少行(pageSize),当 前显示是第几页(currentPageNumber),一共有多少页(totalNumberOfPages),都放在Session当中。马克-to -win:返回到jsp后,再从Session当中取出所有这些数据,把它显示出来。注意这里数据库的每行数据都对应一个RegisterRow实例。把 所有这些实例都放在ArrayList当中。如果你觉得全部把结果放在Session当中浪费空间的话,你甚至一次只放5页,当用户访问第5页的时候,你 就再一次访问数据库,把数据放在Session当中。算法由你自己定义,据情况而定。当然,为简单起见,我们的例子是把所有符合条件的数据都给取出来。

例1.3.1:

home.jsp:

<%@ page contentType="text/html; charset=GBK" %>
<html>
<form method="post" action="MarkToWinServlet">
每页    <input type="text" name="pagesize" value="2">条
第    <input type="text" name="pageno" value="3">页
查id小于    <input type="text" name="id" value="8">
    <input type="submit" name="Submit" value="Submit">
</form>
<hr>
既然这是首页,像淘宝首页一样,这底下是首页的一些泛泛信息。
</html>

package com;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletHello1 extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        request.setCharacterEncoding("GBK");
        String pageno = request.getParameter("pageno");
        String pagesize = request.getParameter("pagesize");
        String id = request.getParameter("id");
        MyBean mb = new MyBean();
        try {
            mb.getData(pageno, pagesize, id);
        } catch (Exception e) {
            e.printStackTrace();
        }
        request.getSession().setAttribute("myBean", mb);
        response.sendRedirect("show.jsp");
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doPost(request, response);
    }
}

MyBean.java:

package com;
import java.sql.*;
import java.util.ArrayList;
public class MyBean {
    /* 下面一大堆变量,jsp中都需要取到,所以是类变量, 非局部 */
    private int totalNumberOfRowsInDB; // 数据表中总共存储了多少行
    private int pageSize;
    private int currentPageNumber;
    private int totalNumberOfPages;
    private int id;
    private ArrayList ret;

    public void getData(String curpage, String pagesizeS, String idS)
            throws Exception {
        Connection con;
        /*
         * MysqlConnectionPoolDataSource ds is always in the memory once it is
         * created becasue it is static..
         */
        con = DatabaseConn.getConnection();
        if (curpage == null) {
            currentPageNumber = 1; // 如果“PAGE”为NULL时将当前页面设置为1
        } else {
            currentPageNumber = Integer.parseInt(curpage);
            if (currentPageNumber < 1) { // 如果当前页小于1,将当前页设置为1
                currentPageNumber = 1;
            }
        }
        id = Integer.parseInt(idS);
        pageSize = Integer.parseInt(pagesizeS);

        int i = 0;
        ret = new ArrayList();
        Statement stm = null;
        ResultSet rs = null;

        stm = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                ResultSet.CONCUR_UPDATABLE);
        String sql = "select * from register where id<" + id;
        rs = stm.executeQuery(sql);
        rs.last();
      
    public void setAge(int age) {
        this.age = age;
    }
}

 

更多内容请见原文,文章转载自:https://blog.csdn.net/qq_44594371/article/details/103181543

推荐这些文章:

SpringMVC当中请给出一个下载的例子,文件名必需是中文

4.文件下载例4.1:<%@ page contentType="text/html; charset=GBK" %><html><body ><A href="http://localhost:8080/SpringMVC1/DownLoad.do?file=ibatis环境搭建.ppt">下 载ibatis环境搭建.ppt</A></body></html>package com;import java.io.IOException;import java.io.PrintWriter;import ja...

肖sir___搭建环境_国际化编码问题__javax.servlet.ServletException: javax.servlet.jsp.JspTagException: No message found under code 'SECURE.MII_RECORD' for locale 'zh'

报错现象:
javax.servlet.ServletException: javax.servlet.jsp.JspTagException: No message found under code 'SECURE.MII_RECORD' for locale 'zh'
 
原因:
国际化编码格式;
(1)修改下谷歌中设置语言

(2)在代码包中的webapp下的包中
路径下:
cd   //home/hj/apache-tomcat-7.0.56/webap...

Referer是怎么用的,在Servlet当中请给出一个例子?

3.Referer:马克-to-win:我要是帮你卖出产品。我是不是不能白劳动?是不是该拿提成?对,没错。用户经过我的网站跳到你的网站上,买了你的东西,应该给我提成。这件事情用Servlet如何实现呢?下面就给出一个例子。如果经过AAA.html跳转到我们的Servlet,我们就打印“给他提成”。如果直接访问我们的Servlet,而没有经过任何其他页面跳转过来的。我们就打印“不用给任何人提成”。其实实现这个技术的关键就在于:html的Header当中有一个叫做Referer的键,取他对应的值就可以了。例:4.3.1:package com;import java.io.IOException...

Servlet jsp当中给出一个doPost例子。

3.doGet,doPost和service的用法1)doPost的实例马克-to-win:我们看到了doGet的用法。这节,我们看看doPost的用法。在Eclipse下,点击你项目名称左边的小十字符号,找到WebContent,右击它。New/HTML File:
eclipse会为我们生成一个空的html。我们再加入一些代码,成为:例:3.3.1hello.html:<html><body><FORM ACTION="MarkToWinServletHello1"METHOD="POST">First Name:<INPUT TYPE="TEX...

请给出一个mvc模式编程的实例,最简单的HelloWord。

马克-to-win:下 面我们先给出一个最简单的mvc例子。这是一个常见的购物车的例子。在下面的例子当中,作为View的add.jsp提交给作为Controller的 ServletHello1.java来处理。真正的处理过程交给了作为Model的Cart.java来处理。作为Controller的ServletHello1.java,用response.sendRedirect("add.jsp");这句话,最后控制流程跳转到 add.jsp。例1.1.1:add.jsp:<%@ page contentType="text/html; charset=GBK" %><h...

请给出JSTL里面的c:forEach标签例子

7)c:forEach标签 完成诸如显示ArrayList内容的功能:例 2.2.7<%@ page contentType="text/html; charset=GBK"%><%@ page import="java.util.*"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><html><body><%   ArrayList books=new ArrayList();   books.add(n...

请给出JSTL里面的c:import标签的例子

5)c:import标签 完成类似java的import的功能:例 2.2.5<%@ page contentType="text/html; charset=GBK"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><html><body>        主页面    <c:import url="hello.jsp">   ...

javaweb学习16:JSP原理刨析

javaweb学习16:JSP原理刨析

JSP:

什么是JSP:Java Server Pages(java服务器端页面);

也和Servlet一样,用于开发动态web技术;

最大的特点:

写JSP就像在写HTML;

 

区别:

HTML只给用户提供静态的数据;

JSP页面中可以嵌入Java代码,为用户提供动态数据;

 

JSP原理:

思路:JSP到底怎么执行的?

代码层面:没有任何问题;

服务器内部工作:

tomcat中有一个work目录;

IDEA中使用Tomcat会在IDEA的Tomcat中...

严重: Servlet.service() for servlet [jsp] in context with path [/maven-ssm] threw exception [java.lang.NullPointerException] with root cause java.lang.NullPointerException

严重: Servlet.service() for servlet [jsp] in context with path [/maven-ssm] threw exception [java.lang.NullPointerException] with root cause java.lang.NullPointerException
处理方式
<scope>provided</scope> 加上该坐标

 
 该图片来源百度搜索,测试有效

 

...

JSP和Servlet有哪些相同点和不同点?它们之间的联系是什么?

        相同点:JSP可以被看作一个特殊的Servlet,它只不过是对Servlet的扩展,只要是JSP可以完成的工作,使用Servlet都可以完成,例如,生成动态页面。由于JSP页面
最终要被转换成Servlet来运行,因此,处理请求实际上是编译后的Servlet。
      不同点:①Servlet的实现方式是在Java语言嵌入HTML代码,编写和修改HTML非常不方便,所以,它比较适合做流程控制和业务处理,而JSP的实现方式为在HTML
嵌入Java代码,比较适合页面的显示。例如在Struts框架中,Ser...

文章标题:请给出一个MVC模式下用Servlet和jsp分页的HelloWord实际的例子?
文章链接:https://www.dianjilingqu.com/51189.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>