struts2学习笔记之一(初识jsp)
2015-05-02 20:54
381 查看
1、注释: <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'helloread.jsp' starting page</title> </head> <body> <!-- 嵌入JSP代码 --> <% for(int i = 0 ; i < 3 ; i ++){ %> <font size=<%=i %>><strong> 读者,你好!</strong><br></font> <!-- 嵌入jsp代码 --> <% } %> <%-- 这里的东西不会被编译,客户端的源文件也不会显示--%> </body> </html> 学习目标: 两种方式的注释。 <!-- 嵌入JSP代码 --> <%-- 这里的东西不会被编译,客户端的源文件也不会显示--%> 2、声明变量和函数 <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'jspdec.jsp' starting page</title> </head> <body> <!-- JSP中的声明变量 --> <%!int i = 0;%> <%!int e,f,d;%> <%!Object a = new Object();%> <%!public String fun(int i){ if(i<3) return "i < 3"; else return "i > 3"; }%> </body> </html> 学习目标: 1、变量声明的语法 2、可以将页面都会使用的方法和变量声明在一个页面里,然后用的时候使用<%@ include %> 3、程序逻辑 <!-- 嵌入JSP代码 --> <% for(int i = 0 ; i < 3 ; i ++){ %> <font size=<%=i %>><strong> 读者,你好!</strong><br></font> <!-- 嵌入jsp代码 --> <% } %> <%-- 这里的东西不会被编译,客户端的源文件也不会显示--%> 4、编译指令 编译指令主要用来提供整个JSP页面相关的信息,并且用来设定JSP网页的相关属性,如:网页的编码方式,语法,信息等 <@ command %> page 设定整个JSP网页的属性和相关功能 include 用来插入其他JSP <%@ include file="relativeURL" %> 简单的将file中的内容拷贝过来 taglib 能够让用户自定义新的标签。 <%@ tablib uri = "taglibraryURI" prefix="tagPrefix"%> 支持XML语法 5、动作标签 跳转 <jsp:forward page="url"> 动态插入文件 <jsp:include page="url" flush="true"> 与include相对 标签操作JavaBean <jsp:useBean id="name" class="package.class" scope="scopeType" /> <jsp:setProperty name="myName" property="someProperty" value="vallue" /> <jsp:getProperty name="myName" property="someProperty"> 上述两条语句是在获得javabean实例之后用来操作实例属性的 BeanTest.jsp <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Bean的动作标签</title> </head> <body> <!-- 使用JSP编译指令定义Bean --> <jsp:useBean id="test" class="com.book.web3.SimpleBean" /> <!-- 使用JSP编译指令给bean赋值 --> <jsp:setProperty name="test" property="message" value="Hello Reader" /> 刚刚赋值的消息:<jsp:getProperty name="test" property="message" /> </body> </html> SimpleBean.java package com.book.web3; public class SimpleBean { private String message = "No message specified"; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } } 体会javabean的用法,javabean实际上就是一个类,这个类是用来操作属性的。当使用<jsp:useBean> 的时候会初始化一个bean实例,具体是哪个bean的实例,由class决定,名字由id决定。这样jsp页面所在的内存空间就出现了一个bean的实例,然后就可以使用<jsp:setProperty> 和<jsp:getProperty>来操纵bean实例,为了区别bean实例和所操纵的实例属性,因此<jsp:setProperty>和<jsp:getProperty>这两个标签就出现了name和property的属性。为了设置属性的值,<jsp:setProperty>标签就出现了value属性(也可以使用param,这是指定哪个参数作为bean的值,两个不能同时使用) 6、JSP内置对象 九个 request <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>WELCOME</title> </head> <body> 欢迎你: <%=request.getParameter("username") %><br/> 协议:<%=request.getProtocol() %><br> 请求地址:<%=request.getRequestURI() %><br> 你的地址:<%=request.getRemoteAddr() %><br> </body> </html> session 保存用户会话 public String gerID() public void setAttribute(String key,Object obj) public Object getAttribute(String key) public Boolean isNew() 实例:记录访问量,如果使用isNew()进行一个if判断,可以计算访问人数 <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <%! int number=0; void countPeople(){ number++; } %> <% countPeople(); String str = String.valueOf(number); session.setAttribute("count", str); %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>访问量</title> </head> <body> <p> 本站的访问量:<%=(String) session.getAttribute("count")%> </p> </body> </html> application JSP的范围:page,request,session,application。 对应的内置对象:pageContext,request,session,application 上述对象的方法都是setAttribute和getAttribute pageContext page 从该页面产生一个servlet实例,相当于这个JSP产生servlet类的this,可以通过page对象访问实例的属性和函数 config 用于存取servlet实例的初始化参数。 response sendRedirect(URL): 重定向 与forward的区别:forward重定向到同一个web应用程序里,而sedRedirect可以重定向到任何地址 exception 处理异常,只有在错误页面才能使用。前提是在页面指令里要有isErrorPage=true的属性 则在也页面里可以使用exception内置对象。 <%=exception.getMessage()%> String getMessage() void printStackTrace() out 是JspWriter的一个实例,用于向客户端输出数据,用于各种对象数据的输出 out.print() out.newLine() out.close() 例:输出时间 <body> <% Calendar now = new GregorianCalendar(); String hour = String.valueOf(now.get(Calendar.HOUR_OF_DAY)); String minute = String.valueOf(now.get(Calendar.MINUTE)); String second = String.valueOf(now.get(Calendar.SECOND)); %> <font> 现在是 <% out.print(hour);%>时 <% out.print(minute);%>分 <% out.print(second); %>秒 </font> </body> 注意:不能写成<%= out.print(hour) %>,因为“=”就相当于out了,其次要加";"
相关文章推荐
- Struts2学习笔记01----初识struts2配置文件和相关基础知识
- JSP学习笔记(八十四):struts2的页面中调用函数
- struts2 学习笔记之二(初识servlet)
- JSP学习笔记(七十八):struts2中s:select标签的使用
- JavaWeb学习笔记:初识JSP内置对象
- J2EE Struts2 学习笔记001 ---- 初识struts 2
- 这是我在学习struts2第三节课件时候记得笔记,内容还算详细,可以看看
- struts2学习笔记--------为应用指定多个struts文件
- Servlet_JSP学习笔记
- Struts2学习笔记-04
- capwap学习笔记——初识capwap(二)
- Hbase学习笔记:初识HBase
- struts2学习笔记 -- day05 Struts2中的标签
- JSP学习笔记(六):自定义标签-JSP2.x
- struts2 的学习笔记(四) Struts的Action的创建方式
- Jsp&Servelet 学习笔记(2)
- 【原创】Struts2学习笔记之国际化
- jsp---学习笔记(三)配置weblogic+JB X
- Struts2 学习笔记 —— 01 —— HelloStruts
- JSP学习笔记之三