Jsp的基本知识

jsp页面的基本组成部分:指令,表达式,小脚本,声明,注释,静态内容。

指令元素有三种:

1、page:eg <%@ page 属性名="属性值" 属性名="属性值;属性值"...   %> 常见的属性有 language,import ,contentType。

2、include

3、taglib

jsp注释

  HTML注释 在客户端可见。<!--  HTML注释  -->

  jsp注释,在客户端不可见。<%--   JSP注释--%>

  在jsp脚本当中使用java的单行/多行注释; <% //   单行注释 %> <%   /*  多行注释 */ %>

jsp的脚本元素 <% java代码 %>

jsp的声明  <%!  String s="zhangsan" ;int add(int i,int y){ return x+y} %>

jsp表达式 <% =表达式 %>

jsp页面的生命周期:一次init,多次调用service方法处理用户的每次请求。

jsp的内置对象:out 、request、response、session、application、page、pageContext、exception、config。

out对象介绍: 主要方法有println clear flush clearbuffer 要注意的是执行了flush之后不能执行了clear,否则回报错,但flush之后可以有clearbuffer方法。

请求转发和请求重定向的区别和联系:请求重定向属于response的一个方法,属于客户端行为,从本质来说是两次请求,前一次不会保存,地址栏会发生变化。与之相对应的是request对象的转发方法,是一种服务器行为,地址栏不会变化。

javaBeans的四个作用域范围:page,request,session,application

jsp的modle1是传统的三层,有jsp接受数据由JavaBean处理业务逻辑和封装数据,再有usedBeans调用持久层。

jsp的状态管理:

  1、HTTP的无状态性。这个是先天不足。

  2、保存用户状态的两大机制:session 、cookie;cookie是web服务器保存在客户端的数据技术,常见的应用场景在购物车里面;记住登录名和密码都是cookie技术从而简化登陆,但容易泄露用户数据。

  3、cookie的创建和使用 使用URLEncode来使中文无法解码的问题,该方法位于java.net包下。

指令与动作

  page指令已经讲过了,接下来来是include

  1、指令,其有一个file属性可以指明包含页面。

  2、动作,有page和flush两个属性。

       区别:主要区别有两个:页面包含内容不一样,编译过后文件个数不一样。

       forward动作 相当于服务器短的转发效果。属性只有一个page属性。

  param动作常常与forward动作一起使用作为forward的子一级。

原文地址:https://www.cnblogs.com/niuyg928/p/10780891.html