基于JSP的Web开发5_Servlet技术.pptVIP

  • 2
  • 0
  • 约1.37千字
  • 约 15页
  • 2018-03-27 发布于江西
  • 举报
基于JSP的Web开发5_Servlet技术.ppt

基于JSP的Web开发 内容提要 转发与包含 重定向 上传文件 1. Servlet WEB应用架构 2. 转发:交给别人处理 Java中写代码来转发? servlet1中的代码片断: ServletContext ctx = getServletContext(); RequestDispatcher dp= ctx.getRequestDispatcher(/servlet2); dp.forward(req, resp); 在servlet2中的req和resp与servlet1中的是相同的! 用户最终看到的结果是servlet2的结果 servlet1中禁止向客户端输出结果,否则会抛出IllegalStateException 2. 包含:把别人的成果拿来 Java中写代码来包含? servlet1中的代码片断: ServletContext ctx = getServletContext(); RequestDispatcher dp= ctx.getRequestDispatcher(/servlet2); dp.include(req, resp); 在servlet2中的req和resp与servlet1中的是相同的! 在servlet2中的结果会作为servlet1的一部分! 内容提要 转发与包含 重定向 上传文件 重定向 类似转向(forward) 转向仅能转向本应用内的资源,而重定向可到任意资源(甚至别的网站) 转向时req和resp的信息会被保留,而重定向时则不会。 详见P155,例5-15 内容提要 转发与包含 重定向 上传文件 2. 上传文件:二进制流 HTML注意事项 与普通的HTML表单不同,必须设置form标准的enctype属性: form enctype=MULTIPART/FORM-DATA ....... 使用文件标签:input type=file name=myphoto / Servlet编程 上传库(需放在WEB-INF/lib),常用的有: commons-fileupload-1.2.1.jar commons-io-1.4.jar * 服务器端 客户端 Tomcat Servlet1 Servlet2 Servlet3 HTTP协议 Servlet协议 为什么要转发或包含 组件重用!避免代码的重复。 模块化开发! 服务器端 客户端 Tomcat Servlet1 Servlet2 Servlet3 HTTP协议 服务器端 客户端 Tomcat Servlet1 Servlet2 Servlet3 HTTP协议 服务器端 客户端 Tomcat Servlet1 Servlet2 Servlet3 HTTP协议 二进制流 DiskFileItemFactory f = new DiskFileItemFactory(); ServletFileUpload up = new ServletFileUpload(f); List items = up.parseRequest(request); items[0].write(new File(C:/test.jpg)); 详见:P133, 例5-3 * * *

文档评论(0)

1亿VIP精品文档

相关文档