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
相关文档:
http://www.soft6.com/tech/16/160477.html
实现tag的类(标签处理器)(tag handler)
1,是一些在引用了标签的JSP页面执行期间被Web Container调用以求自定义标签值的对象;
2,必须实现Tag, SimpleTag和BodyTag之一
3,可以继承TagSupport和BodyTagSupport之一
标签库的接口和类的继承关系接口的继承关系:  ......
那么现在开始我们的jsp和数据库之旅吧。
一、jsp连接Oracle8/8i/9i数据库(用thin模式)
testoracle.jsp如下:
<%@ page contentType=\"text/html;charset=gb2312\"%>
<%@ page import=\"java.sql.*\"%>
<html>
<body>
<%Class.forName(\"oracle.jdbc.driver.Oracl ......
原理不说了,网上有很多,都可以自己查到,至于为什么会出现乱码,是因为JAVA有使用国际化,遇到中文时.....
下面给出一些简单的实用代码,只供参考:
public class ChangeUtf8 {
public static String getS(String Str){
try{
......