将近一个月没看servlet了,再加上第一次学习也没有深入,只是笼统的看了一遍,编了一点基础案例就过去了,现在再去看感觉跟没学过一样。这里再用一点时间把这些基础都梳理一下,加深印象并为以后快速复习做准备,毕竟这是个快节奏的社会,一切都以快速做铺垫。
首先明确一点,基础的servlet编程在企业应用中承担的作用。如果不考虑使用其他框架开发的话,我认为实现MVC架构的分工应该是M:javaBean ,V:jsp, C:servlet。作为一种特殊的servlet。jsp由于自身的特点,充当表现成负责收集用户请求,呈现数据给用户,中间数据处理的环节则交给servlet处理。
本篇就是整理一些零散的知识点。
好了,进入特别特别基础的部分:JSP基础入门:
注释和声明:
<!-- HTML注释 -->//在页面查看源码显示
<%-- Jsp注释 --%>//<span style="font-family: Arial, Helvetica, sans-serif;">在页面查看源码不显示</span>
<%! //jsp声明
int i; %>
<% out.println(i++); %>
<table bgcolor="#9999dd" border="1" width="300px">
<%
for (int i=0;i<5;i++)
{%>
<tr><td>第<%=i%>行</td>
<td>hello</td></tr>
<%
}
%>
jsp的三个编译指令:
- page:
定义本页面的一些属性问题。例如:
这里说一下,倘若有错误页面,需要设置错误页面erorPage="error.jsp"在 error.jsp中isErrorPage="true"。<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
- include:动态包含其他页面
<jsp:include page="/index.jsp"> <jsp:param value="123" name="key"/> </jsp:include>
- taglib:标签
定义页面中使用的标签:例如
<%@ taglib prefix="s" uri="/struts-tags" %>
jsp九个内置对象:
这里主要是谈论application+session+request+response。其中application是在整个项目范围内,session范围是一次用户会话,request是一次用户请求。这里示例设置三个范围的属性:
<% application.setAttribute("key1", "hello");
session.setAttribute("key2", "hello");
request.setAttribute("key3", "hello");
%>
这里既然扯到response,就说一下转发和重定向。转发是同一次的请求,request内的属性还可以有效,页面网址也不会改变。而重定向则是一次新的用户请求,网址改变。基本实现代码:
request.getRequestDispatcher("login.jsp").forward(request, response);
response.sendRedirect("login.jsp");
OK,这算是一个开篇,简单介绍jsp的几个知识点,下面写servlet部分。