jsp编译原理
2016-04-27 15:46
519 查看
首先我们了解几个知识点
(1)html与jsp区别?
HTML是文本标记语言,它是静态页面,和JavaScript一样解释性语言,只要有浏览器那么它就可以正常显示出来,而不需要指定的编译工具,只需在TXT文档中写上HTML标记就OK。
JSP(Java Server Page)是Java服务端的页面,它是动态的,需要经过JDK编译后把内容发给客户端去显示,JSP不止要编译,它还得要转译,首先把JSP转译成一个Servlet文件,然后在编译成class文件。当用户访问JSP时就执行了class文件。在jsp中用<%%>就可以写Java代码了,而html没有<%%>
(2)jsp与servlet区别?
Servlet以Java程序为主, 输出HTML代码时需要使用out.println函数,也就是说Java中内嵌HTML;
而JSP则以HTML页面为主,需要写Java代码时则在页面中直接插入Java代码,即HTML中内嵌Java。其实JSP就是Servlet,JSP侧重视图,Sevlet主要用于控制逻辑。
(3)jsp运行时都要先转换成servlet,使用tomcat时会在tomcat安装目录下的work生成一系列的运行的项目文件夹,文件下面含有.java文件和编译后的.class文件。jsp最终转化为servlet,work的作用就是加快速度,如果jsp没有变化就不重新编译了。
运行过程
1:首先web客户端发送URL请求给Tomcat。服务器获得请求,对请求字符串分析,如果后缀名是.jsp文件的,则Tomcat把调用JspServlet处理。
2:如果JSP文件第一次被调用,则会把jsp编译成servlet,如果jsp不是第一次调用则不会被编译。Jsp文件在没有修改的情况下,只会编译一次。
3:Tomcat调用service()方法编译jsp文件,创建一个.java和.class文件。该java文件继承自父类HttpJspBas类。
4:创建HttpServletRequest类和HttpServletResponse类
5:调用.java继承父类的HttpJspBase类方法service(request,response)
6:在service方法里面调用jspService(request,reponse)方法,渲染html返回给客户端。
(1)html与jsp区别?
HTML是文本标记语言,它是静态页面,和JavaScript一样解释性语言,只要有浏览器那么它就可以正常显示出来,而不需要指定的编译工具,只需在TXT文档中写上HTML标记就OK。
JSP(Java Server Page)是Java服务端的页面,它是动态的,需要经过JDK编译后把内容发给客户端去显示,JSP不止要编译,它还得要转译,首先把JSP转译成一个Servlet文件,然后在编译成class文件。当用户访问JSP时就执行了class文件。在jsp中用<%%>就可以写Java代码了,而html没有<%%>
(2)jsp与servlet区别?
Servlet以Java程序为主, 输出HTML代码时需要使用out.println函数,也就是说Java中内嵌HTML;
而JSP则以HTML页面为主,需要写Java代码时则在页面中直接插入Java代码,即HTML中内嵌Java。其实JSP就是Servlet,JSP侧重视图,Sevlet主要用于控制逻辑。
(3)jsp运行时都要先转换成servlet,使用tomcat时会在tomcat安装目录下的work生成一系列的运行的项目文件夹,文件下面含有.java文件和编译后的.class文件。jsp最终转化为servlet,work的作用就是加快速度,如果jsp没有变化就不重新编译了。
运行过程
1:首先web客户端发送URL请求给Tomcat。服务器获得请求,对请求字符串分析,如果后缀名是.jsp文件的,则Tomcat把调用JspServlet处理。
2:如果JSP文件第一次被调用,则会把jsp编译成servlet,如果jsp不是第一次调用则不会被编译。Jsp文件在没有修改的情况下,只会编译一次。
3:Tomcat调用service()方法编译jsp文件,创建一个.java和.class文件。该java文件继承自父类HttpJspBas类。
4:创建HttpServletRequest类和HttpServletResponse类
5:调用.java继承父类的HttpJspBase类方法service(request,response)
6:在service方法里面调用jspService(request,reponse)方法,渲染html返回给客户端。
相关文章推荐
- js留言提示框
- JS代码随机生成姓名、手机号、身份证号、银行卡号
- js 常用函数
- js中获取url?后面的参数,以及其他参数的获取
- Js操作Select大全(取值、设置选中等等)
- js反选
- js 轮播图代码
- js 父窗体
- js 随机生成姓名、手机号、身份证号、银行卡号
- JSP自定义标签
- js josn prase
- d3.js——绘制打包图
- Javascript保证精度的小数乘法
- js动态改变onclick事件
- js正则关键字详解
- js正则做表单验证实例
- js利用replace方法去除敏感字符(俗称的 河蟹!!!)
- JS中六种数据类型(五)——String
- js使用正则写getClass
- js正则常用的方法