慕课网“JAVA遇见HTML——Servlet篇”视频范例。
jsp指令:
- page指令:位于jsp页面顶端,一个页面可以有多个page指令。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
里面都是属性键值对。常用属性:language, contentType(jsp页面的编码方式), import(脚本语言中用到的类文件)。 - include指令:将外部文件嵌入到jsp文件中,同时解析这个页面中的jsp语句。
- taglib指令:使用标签库定义新的自定义标签,在jsp页面中启用定制行为。
jsp注释:
使用HTML的注释:
``客户端可见
jsp注释:
<%--html注释--%>
客户端不可见
jsp脚本注释:客户端不可见
//单行注释
/**/多行注释
jsp脚本:
放在一对儿jsp标签中
<%java代码%>
<%
out.println("大家好,欢迎大家学习JAVAEE开发!");
%>
jsp声明:
<%! Java代码%>
<%!
String s = "张三";
int add(int x,int y)
{
return x+y;
}
%>
jsp表达式:
<% =表达式%>
表达式不以分号结束
你好,<%=s %><br>
x+y=<%=add(10,5) %><br>
jsp页面的生命周期
jspService()方法被调用来处理客户端请求。
jsp内置对象
Web容器创建的一组对象,不用new关键字就可以使用内置对象,如out。
<%printMultiTable2(out); %>
九大内置对象
Web程序的请求和响应:
如登陆时,向服务器发送了请求,请求对象中封装了用户名和密码。
服务器接收请求后,判断用户名和密码,给客户端发送响应页面。
out对象
JspWriter类的实例,向客户端输出内容常用的对象。
常用方法:
void println()
向客户端打印字符串
void clear()
清除缓冲区内容,在flush方法后使用会抛出异常
void clearBuffer()
清除缓冲区内容,在flush方法后使用不会抛出异常
void flush()
将缓冲区内容输出到客户端
int getBufferSize()``int getRemaining()``boolean isAutoFlush()``void close()
get与post
post方法如何在服务器端获得具体信息?request对象和response对象。
request对象:
客户端的请求信息被封装在request对象中。它是HttpServletRequest类的实例。request对象具有请求域,即完成客户端的请求前,该对象一直有效。
String getParameter(String name)
返回name指定参数的参数值;
String[] getParameterValues(String name)
返回包含参数name的所有值的数组
void setAttribute(String, Object)
存储此请求中的属性
object getAttribute(String name)
返回指定属性的属性值
String getContentType()
得到请求体的MEME类型
String getProtocol()
返回请求用的协议类型
String getServerName()
返回接受请求的服务器主机名
request.setCharacterEncoding("utf-8")
解决中文乱码问题
request.getServerPort()
获得服务器端口号
Response对象:响应客户端请求
Session对象:
是一个时间概念,客户从进入浏览器到关闭浏览器所经历的时间。
JSP状态管理--cookie: