JSP运行原理
当服务器上的一个 JSP 页面被第一次请求执行时,服务器上的 JSP 引擎首先将 JSP页面文件转译成一个 java 文件,再将这个 java 文件编译生成字节码文件,然后通过执行字节码文件响应客户的请求,而当这个 JSP 页面再次被请求执行时,JSP 引擎将直接执行这个字节码文件来响应客户,这也是 JSP 比 ASP 速度快的一个原因。而 JSP 页面的首次执行往往由服务器管理者来执行。这个字节码文件的主要工作是:
1、把 JSP 页面中普通的 HTML 标记符号(页面的静态部分)交给用户的浏览器负责显示。
2、负责处理JSP标记,并将有关的处理结果发送到用户的浏览器.
3、执行“<%”和“%>”之间的 java 程序片(JSP 页面中的动态部分),并把执行结果交给用户的浏览器显示。
4、当多个用户请求一个 JSP 页面时,Tomcat服务器为每个用户启动一个线程而不是启动一个进程,这些线程由 To
mcat 服务器来管理,与传统的 CGI 为每个客户启动一个进程相比较,效率要高的多。程相比较,效率要高的多。
注意:如果对JSP 页面进行了修改、保存,那么服务器会生成新的字节码。我们可以在服务器下的\work\Catalina\localhost\_\org\apache\jsp 目录下到服务器生成的JS P 页面对应的JAVA 文件,以及编译JAVA 文件得到的字节码文件。
JSP 指令标记
<%@ page contentType=”text/html;charset=GB2312”%> <%@ page import= “java.util.*”,“java.io.*”%>
如果需要在JSP 页面的某处整体插入一个文件,可以使用include 指令标记,其标记语法为:<%@ include file=”文件的URL ”%>
该指令标记的作用是在JSP 页面出现该指令的位置
处,静态插入一个文件。
include 动作标签格式为:
<jsp:include page= "文件的名字" />
或
<jsp:include page= "文件的名字" >
param 子标记
</jsp:include>
该动作标签告诉 JSP 页面动态包含一个文件,即 JSP 页面运行时才将文件加入。与静态插入文件的 in clude 指令标签不同;当 JSP 引擎把 JSP 页面转译成 Java 文件时,不把 JSP页面中动作指令 include 所包
含的文件与原 JSP 页面合并成一个新的 JSP 页面,而
是告诉Java 解释器,这个文件在 JSP 运行时(Java 文件的字节码文件被加载执行)才包含进来。
一个JSP页面可由5种元素组成普通的HTML标记、JSP标记(如指令标记、动作标记)、变量和方法的声明、Java程序片、Java表达式。
session和application的区别Tag标记
<%@ taglib tagdir=”/WEB-INF/tags”
prefix=”show”%>
<%@ tag pageEncoding=”utf-8”%>
<%@ attribute name=”result” required=”true” type=”java.lang.Double”%>
<%@ variable name-given=”time” variable-
class=”java.util.Date” scope=”AT_END”%>
JSP内置对象
pageContext.setAttribute(“page”,”hello”); getParameter(String s)方法获取表单提交过来的信息。
request.setCharacterEncoding(“utf-8”); response.setContentType(“utf-8”);
request对象获取请求所提交的各类信息。
getMethod():获取用户提交信息的方式。例如post或get. getSchema():获得当前页面使用的协议:例如http. getRemoteHost():获取用户机的名称(如果获取不到,就
获取IP地址)。
getParameterNames():获取用户提交的信息体部分中name
参数值的一个枚举。
<INPUT>标记
复选框checkbox
<input type=“checkbox“ name=“ch” value=“pink” align=“top“ checked=“java”>
隐藏hidden
<input type=“hidden”name=“h” value=“123”>
response对象的sendRedirect(URL url)方法实现用户的
重定向。
response对象调用encodeURL()或encodeRedirectURL()方法实现URL重写。
使用Java数据库驱动程序
1.加载Java数据库驱动程序
try{Class.forName(“com.microsoft.sqlserver.jdb- c.SQLServerDriver”);
}catch(Exccption e){
System.out.println(e);
}
2.建立连接
try{ String uri=
“jdbc:sqlserver://192.168.100.1:1433;Database-Name=Warehouser”;
String user=””;
String password=”sa”;
Connection(uri,user,passw-
ord);
}catch(Exccption e){
System.out.println(e);
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论