1.Jsp(java server pages)工作原理
运行在服务器端的JAVA页面,本身是一个final类型的java类
例如:index.jsp会被服务器翻译成index_jsp.java
然后在翻译成index_jsp.class,
然后再利用JDK中JVM虚拟机运行该页面
运行时调用的是index_jsp.java文件中的_jspService方法
2.Jsp九大内置对象,在_jspService方法中
请求对象:request
输出对象:out
响应对象:response
应用程序对象:application
会话对象:session
页面上下文对象:pageContext
页面对象:page
配置对象:config
异常对象:exception
3.jsp页面
(1)修改jsp页面无需重新启动tomcat,可以直接生效
(2)Jsp工作原理:
->jsp页面翻译成xxx_jsp.java文件
->xxx_jsp.java文件编译成xxx_jsp.class文件
->由Tomcat内置的JDK中JVM虚拟机执行代码
->提交服务器端进行数据交互
->服务器端响应信息返回给客户端
(3)语法:
<%@ page
Language=”java”
Import=”各种常用类文件所在包”
contentType=”text/html;charset=UTF-8;”
pageEncoding=”字符集编码”%>
例如:<%@page language=”java”制定页面编辑语言
Import=”java.util.*”导入当前页面可用实体类文件包
pageEncoding=”UTF-8”指定页面字符集编码,
默认为ISO-8859-1,修改为UTF-8即可 %>
(4)JSP可以添加的注释类型
HTML注释: <!--HTML注释-->
JSP注释: <%--JSP注释--%>
JSp脚本中的注释(即java代码注释)
<%//单行注释%>,<%/*多行注释*/%>
(5)JSP全局变量和局部变量
使用<% %>声明局部变量,
使用<%! %>声明全局变量
只有全局小脚本中可以编写java代码方法
例如:
<% int i = 10; %>
<%!
int j = 10;
public int add(){
return 5+9;
}
%>
i++; <%= i++ %><br/>
j++; <%= j++ %><br/>
<%= add() %>
输出结果为 i++; 10
第1次: j++;10
第2次: j++;11
第3次: j++;12
...
第n次: j++;10+(n-1)
add()输出: 14
(6)WEB常见程序错误:
404错误
运行时,URL输入错误(包括:IP、端口、项目名、文件名等)
将页面放在WEB-INF下(该目录为安全目录,浏览器无法访问)
外部启动Tomcat,未部署项目
(未在webapps下生成项目文件就启动了tomcat)
500错误
JSP页面代码有错误(例如:语法错误或逻辑错误产生的异常抛出)
页面无法显示错误
Tomcat未启动
(7)JSP页面提交数据获取方式
由JSP页面中的form标签表单元素submit数据,
通过action找到访问地址,例如:
regsiter.jsp
<form action="doRegister.jsp" method="get/post">
<input type="text" name="username"/>
<input type="password" name="password" />
<input type="submit" value="提交数据"/>
</form>
doRegister.jsp
<%
String username = request.getParamter("username");
String pwd = request.getParamter("password");
%>
欢迎你:<%=username %> 您的初始密码为:<%=pwd%>
如果出现中文乱码问题,详见集锦