JSP的运行原理
JSP 实在servlet 之后发展起来的技术。
运行机制:
1:jsp文件提交服务器,服务器 (Tomcat),初始化 请求和响应对象 ,然后判断jsp文件是否存在 ,如果不存在 404 错误,存在 ,编译成为 。java 文件 ----》。class 文件 。就是一个java的类 ,这个类 ,继承自 httpjspbase ,这个httpjsppage类 又 实现了黄土坡:servlet 的接口 ,说到底 ,jsp页面 被转化成了一个sevlet 类 的实例 。
2:在jsp页面里面 ,首先用JspFactory的getDefaultFactory()方法获取容器实现 的一个JspFactory对象的引用。JspFactory是javax.servlet.jsp包中定义的一个抽象类,其中定义了两个静态方法set/getDefaultFactory()。set方法由JSP容器(Tomcat)实例化该页面Servlet 的时候置入。
在这里可以看见 内置对象
_jspxFactory = JspFactory.getDefaultFactory();
response.setContentType("text/html;charset=ISO-8859-1");
pageContext = _jspxFactory.getPageContext(this, request, response,null, true, 8192, true);
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out;
上面就是用本次请求,给内置对象赋值 。所以在jsp 页面可以调用。
下面是我在网上看见的...感觉 写的比较好 ...
JSP的运行内幕
http://www.yuzi.net 2006-5-18 9:11:30
经常有朋友问起,JSP和Servlet之间有什么区别,两者之间又有什么联系?其实Servlet技术的出现时间很早,是当时为了Java的服务器端应用而开发的。大家都知道Applet是应用小程序,Servlet就是服务器端小程序了。但在Microsoft公司的ASP技术出现后,使用Servlet进行响应输出时一行行的输出语句就显得非常笨拙,对于复杂布局或者显示页面更是如此。JSP就是为了满足这种需求在Servlet技术之上开发的。可见,JSP和Servlet之间有着内在的血缘关系,在学习JSP时,如果能够抓住这种联系,就能更深刻地理解JSP的运行机理,达到事半功倍的效果。
本文将通过对一个JSP运行过程的剖析,深入JSP运行的内幕,并从全新的视角阐述一些JSP中的技术要点。
HelloWorld.jsp
我们以Tomcat 4.1.17服务器为例,来看看最简单的HelloWo
相关文档:
member.jsp //session限制访问页
<%
String url = ""
if(session.getAttribute("username")==null)
{
url = myRedirect.dealurl(request);//记录当前地址和请求参数,dealurl将实际url处理了避免和要请求url有干扰,因为会有& 字符
......
之前,写过一个Download.jsp文件,能解决下载文件乱码问题(诸如:DOC,XSL文件等等).
后来发现,遇见中文名的文件的时候,文件下载将会报错~~~~
今天,通过改写原Download.jsp文件已完全解决了这个问题~
目前,把一整套的文件上传下载的方法给贴出来~~~以便大家借鉴!~!~!~!~!
作者:古埃及法老
------------------------ ......
JSTL的目标是为了简化JSP页面而设计。对于页面设计人员来说,使用脚本语言(JSP默认是Java)操作动态数据是比较困难的,而采用标签和表达式语言则相对容易些,JSTL的使用为页面设计人员和程序开发人员的分工协作提供了便利。
JSTL虽然叫做标准标签库,但实际上是由5个不同功能的标签库组成。这里只介绍常用的Core标签库
Cor ......
servlet--------------------------------------------JSP
HttpServletRequest request
HttpServletResponse &nbs ......