您的位置:首页 > Web前端 > JavaScript

JSP

2015-11-08 19:25 627 查看
JSP表达式  

JSP表达式用来把Java数据直接插入到输出。其语法如下: <%= Java Expression %>

计算Java表达式得到的结果被转换成字符串,然后插入到页面。例如,下面的代码显示页面被请求的日期/时间:
time: <%= new java.util.Date() %>

为简化这些表达式,JSP预定义了一组可以直接使用的对象变量。后面我们将详细介绍这些隐含声明的对象,但对于JSP表达式来说,最重要的几个对象及其类型如下:
request:HttpServletRequest;
response:HttpServletResponse;
session:和request关联的HttpSession
out:PrintWriter用来把输出发送到客户端

JSP 中的注释
(1) HTML 注释:在标记符号“<!--”和“-->”之间加入注释内容
(2) JSP 注释:在标记符号“<%--”和“--%>”之间加入注释内容

内置对象

  在JSP容器中生成的Servlet类的_jspService()方法中,定义了几个对象,在编写JSP页面时我们可以使用这些隐含对象。

PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;


注意:上面的代码没有exception内置对象,只有当页面的page指令的isErrorPage属性为true才会使用exception对象。

application对象

  在JSP中设置属性和对应的值:

<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<title>在此处插入标题</title>
</head>

<body>

<%
application.setAttribute("name", "zhangsan");
%>
</body>

</html>


在Servlet中利用ServletContext对象的getInitParameter()方法即可获取该属性值:

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
System.out.print(this.getServletContext().getInitParameter("name"));
}


out对象

  out对象以字符流的形式输出数据,实际上是PrintWriter对象的带缓冲的版本,可以通过page指令的buffer属性来调整缓冲区的大小。

  所有使用out的地方都可以使用输出表达式来代替,<%= ...%>表达式的实质就是out.write(...)。

session对象

  session对象代表一次用户会话(从客户端浏览器连接服务器开始,到客户端浏览器与服务器断开为止),session通常用于跟踪用户的会话信息,如判断用户是否登录系统或者跟踪用户购买商品信息等。

String getId();       //获取session的ID
long getCreationTime();//   获取session的生成时间
void invalidate();    // 清空session内容


表单使用Post方式提交后接收到的乱码问题

A 接受参数时进行编码转换
String str = new String(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8")
B 在请求页面上开始处,执行请求的编码代码, request.setCharacterEncoding("UTF-8")
String str = request.getParameter("something")
C 为了避免每页都要写request.setCharacterEncoding("UTF-8")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: