1.修改jsp字符集
由于jsp默认的字符集不是utf-8,所以出现中文时会乱码,因此需要修改jsp字符集为utf-8 WindowàPreferencesàWebàJSP Files
2.怎么在JSP中写Java代码
在JSP脚本片段中编辑Java代码,格式是: (<% %>)
3.jsp运行的环境
jsp页面不能通过网页直接打开,需要运行Tomcat服务器打开
4. jsp表达式
JSP表达式的作用是用来向浏览器输出对象,格式是: (<%= %>)
request.getParameter()方法是从HTML页面中获取表单中的参数
5. jsp注释
JSP中的注释的格式是: <%-- --%>,但经过验证<!-- -->也可以使用
6. jsp的9个隐含对象
① out(JspWriter):相当于response.getWriter()获取的对象,用于在页面中显示信息。
② config(ServletConfig):对应Servlet中的ServletConfig对象。
③ page(Object):对应当前Servlet对象,实际上就是this。
④ pageContext(PageContext):当前页面的上下文,也是一个域对象。
⑤ exception(Throwable):错误页面中异常对象
⑥ request(HttpServletRequest):HttpServletRequest对象
⑦ response(HttpServletResponse):HttpServletResponse对象
⑧ application(ServletContext):ServletContext对象
⑨ session(HttpSession):HttpSession对象
隐含对象就是在JSP脚本片段中可以直接调用
7. jsp的4个域
四个域: 作用是传输数据(什么数据? 前后端交互的数据)
page域:
范围: 当前页面
对应的域对象: pageContext
域对象的类型: pageContext
request域:
范围: 当前请求(一次请求)
对应的域对象: request
域对象的类型: HttpServletRequest
session域:
范围: 当前会话(一次会话)
对应的域对象: session
域对象的类型: HttpSession
application域:
范围: 当前Web应用
对应的域对象: application
域对象的类型: ServletContext
四个域都有以下三个方法:
void setAttribute(String key,Object value)
Object getAttribute(String key)
void removeAttribute(String key)
四个域对象的使用规则:
能用小的就不用大的
8. 转发的作用
由于request是一次性的,参数转到另外一个页面需要用转发
9. 登录页面错误处理
requestScope:作为EL表达式的一个属性,它可以精确查找reqeust域,没有找到返回空值,否则是在四个域中顺序查找,没有找到则返回null,
msg:msg是request域中的key,在servlet页面中写好了,在HTML页面中调用,返回servlet页面中request的value值
request:request是四大域其中的一个,通过setAttribute和getAttribute传输数据,格式是键值对,没有找到会返回null
10. Span标签
<span> 用于对文档中的行内元素进行组合。
<span> 标签没有固定的格式表现。当对它应用样式时,它才会产生视觉上的变化。
<span> 标签提供了一种将文本的一部分或者文档的一部分独立出来的方式。
11. Seesion在java文件中的使用 request.getSeesion() (验证seesion传输)
12. 去除null值
直接在JSP页面中使用JSP表达式<%=request.getAttribute(“Key”) %>,当得到的是错误的结果是会显示null,需要处理
使用EL表达式就算得到错误参数也会显示为空,不需要处理,使用EL参数还能精确查找到需要的域
13. EL
其中一个作用是用来替代JSP中的表达式
EL全称: Expression Language 表达式语言
作用: 主要是用来输出域对象中的属性值
EL表达式查询的规则:
先从page域中开始查找,找到后直接返回,不再向其他域中查找,如果找不到再去request域中查找,以此类推,如果在application域中仍然找不到则返回空值
EL给我们提供了四个scope对象,用来精确获取指定域中的属性值
pageScope
获取page域中的属性值
requestScope
获取request域中的属性值
sessionScope
获取session域中的属性值
applicationScope
获取application域中的属性值
EL表达式的格式为: ${ }
使用EL的精确查找可以代替JSP域的顺序查找
查找顺序是: EL表达式.域的Key值.属性
14. PageContext的其他用处
PageContext可以让某些对象或者域在EL中具备在JSP中的功能
15. jsp运行原理:
第一次发请求时:
第一步访问jsp时,把jsp页面翻译成java文件
第二步JVM把java文件编译成class文件
第三步servlet把调用的对象写到前端页面
以后在发请求时,在不改变页面的前提下,直接调用对象到前端页面