JSP_ListTopicServlet?url=newspages/news_add.jsp

JSP_关于?url=xxx.jsp的用法

解释:

待理解

例子:

开始:

ListTopicServlet.java

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");//解决网页输出的乱码问题
		
		TopicService ts=new TopicServiceImpl();
		List<Topic> list=ts.ListTopics();//调用逻辑层的ListTopic方法,返回所有的Topic对象
		
		HttpSession session=request.getSession();
		session.setAttribute("ListTopics", list);
		response.sendRedirect("newspages/topic_list.jsp");
	}

当jsp文件直接使用response.sendRedirect("/PressReleaseSystem/ListTopicServlet");时,会直接跳转至servlet文件,并进行newspages/topic_list.jsp路径的跳转。

改变:
ListTopicServlet.java

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");//解决网页输出的乱码问题
		
		TopicService ts=new TopicServiceImpl();
		List<Topic> list=ts.ListTopics();//调用逻辑层的ListTopic方法,返回所有的Topic对象
		//设一个url,从jsp获取
		String url=request.getParameter("url");
		HttpSession session=request.getSession();
		session.setAttribute("ListTopics", list);
		response.sendRedirect("/PressReleaseSystem/"+url);
	}

top_list.jsp

<%
	List<Topic> listTopics=(List<Topic>)session.getAttribute("ListTopics");
	if(listTopics==null){
		response.sendRedirect("/PressReleaseSystem/ListTopicServlet?url=newspages/topic_list.jsp");
		return;
	}
%>

news_add.jsp

<%
	List<Topic> listTopics=(List<Topic>)session.getAttribute("ListTopics");
	if(listTopics==null){
		response.sendRedirect("/PressReleaseSystem/ListTopicServlet?url=newspages/topic_list.jsp");
		return;
	}
%>

这里在前面定义了一个字符串url (url从jsp页面获取),在项目名PressReleaseSystem后面添加了 +url ——这里将网页的跳转变得改造的更加灵活。
因此,在news_add.jsp和top_list.jsp内部可以直接使用 “/项目名/servlet服务?url=文件夹/对应的.jsp” ,来达到灵活跳转的目的。

ps:感谢大佬的指教!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值