Day50
*JSP的注释:
<!-- 这里是可以在前端看到的注释 -->
<%-- 这里是不可以在前端看到的注释,如果注释中包含了java代码,就必须要是用这种注释 --%>
*编译指令:
<!-- 表示将当前页面和file路径的页面进行拼接 -->
<!-- 好处:实现other.jsp页面的复用 -->
<%@ include file="included/other.jsp" %>
*JSP的声明与普通的声明:
jsp声明映射为java代码时,会被声明成成员变量,因为jsp的本质是servlet,而servlet是单例的,所以所有的请求过来之后,都是在操作着同一个成员变量。
而普通的声明映射为java代码时,会被声明成局部变量。
<!-- jsp声明 -->
<%! int a = 3; %>
<!-- 普通的声明 -->
<% int b = 3; %>
*JSP的表达式:
<!-- 这样写等同于 <% out.print(a) %> -->
<%=a %>
*标准动作:
jsp:include 从页面效果上来看,jsp:include 和 编译指令 好像是一样的,但是它们两有一个很大的区别:动作指令是运行期的行为,也就是说在代码的运行阶段,才会将页面拼接;而include的编译指令是一个编译器的行为,即在jsp文件编译的时候就已经合并到了一起。
<jsp:include page="../included/other.jsp"></jsp:include>
jsp:forward 自动跳转到page所指的页面
<jsp:forward page="forward.jsp"></jsp:forward>
jsp:useBean、jsp:setProperties、jsp:getProperties
<!-- 相当于实例化了一个对象:User user = new User() -->
<jsp:useBean id="user" class="com.qianfeng.info.User"/>
<!-- 相当于user.setUsername("张三") -->
<jsp:setProperties name="user" property="username" value="张三"></jsp:setProperties>
<!-- 相当于user.getUsername("张三") -->
<jsp:getProperties name="user" property="username"/>
*jsp九大内置对象:常用的只有三个,request,session,application。其他了解即可
*请求转发:
从始至终,都是同一个request对象和response对象