jsp运行原理解析程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、 jsp入门 java server page 1. web资源的运行原理 html: 静态web资源,DefaultServlet读取html文件,通过response输出给IE浏览器 Servlet: 动态web资源,web容器(Servlet引擎)解析web.xml文件,找到url对应的java类 通过反射创建Servlet对象,调用service方法 Class.forName(“cn.itcast.servlet.Servlet1”).newInstance(); jsp: 动态web资源 jsp页面在第一次被访问的时候,web容器(jsp引擎)会将jsp翻译成一个Servlet,然后调用servlet的 service方法 jsp 翻译后的Servlet会被放到 %tomcat安装目录%\work\Catalina\localhost\webcontext 当jsp页面被再次访问的时候,web容器会去直接调用Servlet的service方法,所以通常来讲 jsp 只是在第一次被访问的时候比较慢 如果jsp页面做了修改,此时web容器会重新翻译jsp 2. jsp 是什么 实际上 jsp 就是 Servlet , 只是提供了一种比较直观的书写方式,因为写jsp就像在写Html jsp中可以写 java 代码, 有两种写法 1) jsp 脚本表达式 内容会被放到 out.print() 里面 输出个浏览器 %=new Date() % 2) jsp脚本片段 内容会原封不动地被翻译到 Servlet 的service方法中 % // java 代码 % 3. jsp 和 Servlet的区别 1) Servlet 适合写java代码,因为Servlet就是一个java类 在开发中使用Servlet对用户发送的请求进行处理并做出响应 2) jsp 适合做数据美化,作为 数据显示模板 因为jsp页面直接书写HTML标签 3) 项目中的web层通常使用mvc设计模式 Servlet+jsp+javabean 其中, Servlet做控制器,处理用户请求 jsp作为显示模板 javabean 作为封装数据的实体 4) 如何养成一种良好的编码风格 在Servlet中应避免做任何的数据输出 在 jsp 中应避免去直接书写java代码, 而实际上要做到这点很难, 所以需要用到 el 和 jstl 二、 jsp语法 1. 模板元素 在 jsp 页面中所有的 html 标签部分被称作模板元素,用于对整个网页进行布局 2. jsp脚本 jsp中的java代码被称作jsp脚本 有三种形式 1) 脚本表达式 被翻译到 out.print() 方法中 %=new Date() % 2) 脚本片段 被翻译到 service 方法中 % for(int i=0; i10; i++) { System.out.println(i); } % 3) jsp 声明 被翻译到 service 方法外面 写成员变量\成员方法\静态代码块 %! private String name; static { } % 3. jsp指令 include指令 用于包含一个页面 taglib 指令用于引入标签库文件 page指令 用于向jsp引擎说明jsp的页面情况 page指令一般都放在页面的开头,但是不管放在哪都对整个页面起作用 page指令 常用的主要有一下几个: 1) import 导包, 导入多个包时需要以“,”隔开 也可以分作多条指令书写 2) session 说明是否使用session 默认值为true,被翻译的Serlvet中会自动获得Session 如果将该值指定为false 被翻译的Servlet的service方法中将不获取session 3) errorPage 指定错误跳转的页面 在 web.xml 文件中同样可以配置错误页面 可根据异常类型或错误编码进行配置 error 4) pagaEncoding 通知jsp引擎在翻译jsp的过程中以什么编码方式来解码jsp文件 通知 Servlet引擎 response编码方式,相当于 response.setContentType() 说白了 只要给jsp指定了 pageEncoding=”utf-8” jsp引擎在翻译jsp时, 就会自动加上一句 response.setContentType(“text/html;charset=utf-8”) 扩展

文档评论(0)

taotao0c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档