jsp例子(hi.jsp)
String Msg = \out.print(\%>
<%=Msg%>
JSP语法分为三种不同的类型
编译器指令(DIRECTIVE) 例如: <%@ page import=“java.io.*” %> 脚本语法(SCRIPTING)
动作语法(ACTION) 例如:
? 脚本语法包括
? “HTML注释”:
或
这种注释发送到客户端,但不直接显示,在源代码中可以查看到。 ? “隐藏注释”:<%-- comments --%>
<%-- 注释 --%> 不发送到客户端。 ? “声明”
<%! declaration; [ declaration; ] ... %> 或
<%! 声明; [声明; ] ... %>
? “表达式”
用 于在页面上输出信息,语法格式如下:
<%= expression %> 或 <%= 表达式 %> ? “脚本段”
<% code fragment %> 或
<% 代码 %>
2. 编译器指令
? 编译器指令包括“包含指令”, “页指令”和“taglib指令”
? 它们包含在“<%@ %>”卷标里。 ? 两个主要的指令是page与include。
include指令:向当前页中插入一个静态文件的内容。 静态文件是指文件名称不能是变量,并且不能改变 JSP 语法格式如下:
<%@ include file=\ Page”指令用于定义JSP文件中的全局属性。
属性:
1.language=\
声明脚本语言的种类,目前只能用\。 2.import=\ 需要导入的Java包的列表,这些包作用于程序段,表达式,以及声明。 ? “<%@ page %>”指令作用于整个JSP页面,同样包括静态的包含文件。但
是“<%@ page %>”指令不能作用于动态的包含文件,比如 “
一次,不过也有例外,那就是import属性。因为import属性和Java中的import语句类似(参照Java Language,import语句引入得是Java语言中的类),所以此属性就能多用几次。
? 无论把“<%@ page %>”指令放在JSP的文件的哪个地方,它的作用范围都
是整个JSP页面。不过,为了JSP程序的可读性,以及好的编程习惯,最好还是把它放在JSP文件的顶部。
3.errorPage=\
设置处理异常事件的JSP文件。 4.isErrorPage=\
设置此页是否为出错页,如果被设置为true,你就能使用exception对象
3. 动作语法(了解)
? ? ? ?
动作语法包括
?
3.3 JSP内置对象
JSP 有以下九种内置对象,包括:(主要是四个) ? ·request,请求对象 ? ·response,响应对象 ? ·pageContext,页面上下文对象 ? ·session,会话对象 ? ·application,应用程序对象 ? ·out,输出对象 ? ·config,配置对象 ? ·page,页面对象 ·exception,例外对象 获取参数对象:
? “request” 对象代表的是来自客户端的请求,例如我们在FORM表单中填写的信息
等,是最常用的对象。关于它的方法使用较多的是getParameter、getParameterNames
和getParameterValues(数组,循环使用),通过调用这几个方法来获取请求对象中
所包含的参数的值(getAttribute、setAttribute获取数据传递到JSP)
? “response” 对象代表的是对客户端的响应,也就是说可以通过“response”
对象来组织发送到客户端的数据。但是由于组织方式比较底层,所以不建议普通读者使用,需要向客户端发送文字时直接使用“out” 对象即可。 request对象示例
Hello_req.jsp
<%@ page contentType=\<%@ page import=\
你好,
<%! String Name;%> <%
Name=request.getParameter(\ %>
<%=Name%>, 今天是 <%
Date today=new Date();
%>
<%=today.getDate()%>号,星期<%=today.getDay()%>
session对象
session” 对象代表服务器与客户端所建立的会话,当需要在不同的JSP页面中保留客户信息的情况下使用,比如在线购物、客户轨迹跟踪等。“session” 对象建立在cookie的基础上,所以使用时应注意判断一下客户端是否打开了cookie。常用的方法包括getId、 getValue、 getValueNames和putValue等。 (登录验证)
概要
? HTTP是无状态(stateless)协议;
? Web Server 对每一个客户端请求都没有历史记忆; ? Session用来保存客户端状态信息; ? 由Web Server 写入; ? 存于客户端;
? 客户端的每次访问都把上次的session记录传递给Web Server; ? Web Server读取客户端提交的session来获取客户端的状态信息;
session对象示例(Logon_session.html)
<%@page contentType=\<%@page import=\
<%String Name=request.getParameter(\ session.setAttribute(\ %>
你的名字\已经写入session
check
<%@page contentType=\
<%String yourName=(String)session.getAttribute(\ if (yourName= =null) {
%>您还未登录 <% }else { %>
\已经登录 <% } %>
Request 和Session的作用域区别:一次请求(request) 多次请求(session) session对象示例
<%@ page contentType=\
<%@ page contentType=\
<%@ page language=\<%! String amuse=\<% amuse=request.getParameter(\ String user=(String)session.getAttribute(\%>
您的姓名是: <%=user%>
您喜欢的娱乐是: <%=amuse%>