如何不通过进Servelt进页面

原创 2018年04月16日 10:24:15

第一步:在web.xml文件中配置默认路径

              <welcome-file-list>

              <welcome-file>这里指的是默认路径</welcome-file>

              </welcome-file-list>

第二步:判断是通过默认路径跳转或者a链接还是通过表单提交按钮跳转

public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("UTF-8");
		request.setCharacterEncoding("UTF-8");
		String operate="";
		if(request.getParameter("operate")!=""){
			operate = request.getParameter("operate");
		}
		//条件查询
		if(request.getParameter("operate")!=null&&operate.equals("select")){
			String bookname = request.getParameter("bookname");
			Integer typeid = Integer.parseInt(request.getParameter("booktype")); 
			bookInfoImpl bi = new bookInfoDao();
			List<bookInfo> books = new ArrayList<bookInfo>();
			books=bi.SelectBook_BooknameTypeid(bookname,typeid);
			request.setAttribute("books", books);
		}
		//详情页面
		if(request.getParameter("bookid")!=null){
			bookInfo book = new bookInfo();
			bookInfoImpl bi = new bookInfoDao();
			int bookid = Integer.parseInt(request.getParameter("bookid"));
			book=bi.SelectBook_Bookid(bookid);
			request.setAttribute("book", book);
			request.getRequestDispatcher("/Detail.jsp").forward(request, response);
		}else{
			//转发到index.jsp界面
			request.getRequestDispatcher("/servlet/ListServelt").forward(request, response);
		}
	}

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


	/**
	 * The doPost method of the servlet. <br>
	 *
	 * This method is called when a form has its tag value method equals to post.
		 * @param request the request send by the client to the server
	 * @param response the response send by the server to the client
	 * @throws ServletException if an error occurred
	 * @throws IOException if an error occurred
	 */
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("UTF-8");
		//页面加载显示类别信息
		bookTypeImpl bt = new bookTypeDao();
		List<bookType> types = new ArrayList<bookType>();
		//查询所有类别信息
		types=bt.SelectAllType();
		//存入request作用域
		request.setAttribute("types", types);
		//判断是否第一次加载页面(下拉框是否有值)
		if(request.getAttribute("books")==null){
			//加载页面就显示所有图书信息
			bookInfoImpl bi = new bookInfoDao();
			List<bookInfo> books = new ArrayList<bookInfo>();
			books=bi.SelectBook_BooknameTypeid("", -1);
			request.setAttribute("books", books);
		}
		//保存条件查询的条件
		if(request.getParameter("bookname")!=null){
			String bookname = request.getParameter("bookname");
			request.setAttribute("bookname", bookname);
		}
		if(request.getParameter("booktype")!=null){
			Integer booktype = Integer.parseInt(request.getParameter("booktype"));
			request.setAttribute("booktype", booktype);
		}
		request.getRequestDispatcher("/index.jsp").forward(request, response);
	}

这里在web.xml文件中配置了一个默认路径 项目先走的是默认路径 就以这个例子举例 页面已加载显示所有的信息

if(request.getAttribute("books")==null)判断是books是否为空 页面默认走本Servelt所以为空 然后查询所有 在通过转发调到页面

如果是条件查询 通过提交按钮才提交到 一个Servelt 提交你查询的条件 然后查询 这个时候在跳转到 默认的路径 这个时候

if(request.getAttribute("books")==null)自然就不为空了所以走别的方法 再通过判断查询 最后在转发到你所需的界面。

微信付费进群收款单页面

  • 2017年02月19日 16:21
  • 8KB
  • 下载

fck文本编辑器和各种立体统计图

  • 2012年12月10日 14:10
  • 9.14MB
  • 下载

黑客指南-如何黑进电脑系统

  • 2015年07月06日 23:17
  • 615KB
  • 下载

Android 仿微信Activity进入退出动画(右进右出动画 )

Android 仿微信Activity进入退出动画(右进右出动画 ) 目录(?)[+] 其实设置Activity动画的根本也就是设置View的动画,...
  • u010507199
  • u010507199
  • 2015-07-03 00:52:09
  • 1871

下拉刷新进页面自动刷新

self.tableview.comtentOffset=CGPointMake(0,-self.refreshControl.frame.size.height); self.refreshCon...
  • u012490953
  • u012490953
  • 2014-10-23 10:18:02
  • 259

教你如何五分钟内使用 shodan 黑进路由器

最近又重新用了把 shodan 这个神器,shodan 这个网站提供了全网所有设备开放端口的各种信息,这也就给我们的攻击带来了遍历。如果某个软件存在漏洞,而这个软件是类似于 web 服务那种会监听某个...
  • axiejundong
  • axiejundong
  • 2017-12-30 13:04:12
  • 1064

如何登陆到运行linux的虚拟机

对于一个运行Linux操作系统的虚拟机,我们可以使用ssh客户机进行登陆。 我们需要在进行登陆的计算机上安装ssh客户端,我们可以有以下的几种选择: 在windows操作系统中,我们可以使...
  • u014253173
  • u014253173
  • 2015-01-25 21:04:23
  • 1473

解决移进/规约冲突

How to resolve shift/reduce conflicts? 如何解决移进规约冲突?比如下面的文法就有冲突: expr:      expr - expr      | expr * ...
  • iamagoodguy254
  • iamagoodguy254
  • 2015-09-16 19:40:49
  • 4932

LR分析器 移进规约分析

  • 2011年06月06日 10:14
  • 585KB
  • 下载

JAVA进出仓管理系统

  • 2009年04月15日 18:43
  • 4MB
  • 下载
收藏助手
不良信息举报
您举报文章:如何不通过进Servelt进页面
举报原因:
原因补充:

(最多只允许输入30个字)