EasyDemo*Jsp转发及常见问题(三)

一、JSP转发

  1. 转发

1.1转发

1.1.1什么是转发

*一个Web组件(Servlet/JSP)将未完成的处理通过容器转件给另外一个Web组件继续完成

*常见情况:一个Servlet获得数据后(比如通过调用dao),将这些数据转发给一个JSP,有这个JSP来展现这些数据(比如,以表格的方式来展现)

1.1.2如何实现转发

-绑定数据到request对象

-获得转发器

-转发

1.1.3绑定数据到request对象

1>步骤one

扫描二维码关注公众号,回复: 2787729 查看本文章

*实现绑定

Request.setAttribute(String name,Object obj);

-name:绑定名

-obj:绑定值

*读取绑定值

Object request.getAtrribute(String name)

*如果绑定名对应的值不存在,返回null

2>步骤two

*获得转发器

-RequestDispatcher rd = request.getRequestDispatcher(String path);

*path:转发的目的地,即将未完成的处理继续下去的另一个组件,比如一个JSP文件

3>步骤three

*实现转发:rd.forward(request,response);

*通常情况,步骤two和步骤three可合并为一行语句,如下:

1.1.3转发的原理

1.1.4转发的特点

1.1.5转发和重定向的区别

 

二、JSP开发常见问题

  1. 异常处理

1.1异常处理

1.1.1编程式的异常处理

*使用转发跳转到指定页面进行提示说明

1.1.2容器中的声明式处理

*step1,将异常抛给容器,但底层的错误提示不要返回给用户

-注意:异常只允许抛service指定的异常,不能超出指定范围

-使用如下写法:throw new ServletException(e)

*step2,在web.xml文件配置错误处理页面节点

1.2路径问题

1.1.1什么是路径

*链接地址<a href=”url”></a>

*表单提交<form action=”url”>

*重定向response.sendRedirect(url)

*转发 request.getRequestDispatcher(url)

1.1.2什么是相对路径

*从当前文件出发到达目标文件所经过的路径叫做相对路径

*书写格式不以”/”开头

*退至上一层目录以”../”开头

1.1.3什么是绝对路径

*以”/”开头的路径都是绝对路径,不以当前文件的位置作为起始,而是以一个固定位置作为起始到达目标文件所经过的路径

*这个固定位可能是应用名,也可能是应用名之后

1.1.4路径的处理技巧

*在使用绝对路径时:

*链接地址、表单提交、重定向是从应用名开始写

*转发是从应用名之后开始写

*获取应用的实际部署名称可使用如下方法:

String request.getContextPath();

 

猜你喜欢

转载自blog.csdn.net/qq_36287601/article/details/81604035