JAVA基础知识:JSP内部对象详解

1、Out对象

主要用来向客户端输出各种格式的数据,并且管理应用服务器上的输出缓冲区,Out对象的基类是javax.servlet.jsp.JspWriter类。
Out的主要方法:
out.println(DataType);或out.print(DataType);
实例:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
<HTML>
<HEAD>
<TITLE> out对象使用实例</TITLE>
</HEAD>
<BODY>
<%
out.println(new Date().toLocaleString());
out.print(‘<BR>’);
out.print(‘测试成功’);
%>
</BODY>
</HTML>

2、Request对象

Request.setAttribute()与Request.getAttribute()方法实例(也可以使用forward建立请求关系):

主页面:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<%@ include file=’1.jsp’ %>
你刚才输入的内容是:
<%=request.getAttribute(‘gr’)%>

引入页面:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
<HTML>
<HEAD>
<TITLE> request对象使用实例</TITLE>
</HEAD>
<BODY>
<%
request.setAttribute(‘gr’,’123333′);
%>
</FORM>
</BODY>
</HTML>

Request.getParameter()方法实例

主页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
<HTML>
<HEAD>
<TITLE> request.getParameter()方法使用实例</TITLE>
</HEAD>
<BODY>
<FORM METHOD=POST ACTION=’2.jsp’>
<INPUT TYPE=’text’ NAME=’gr1′><BR>
<INPUT TYPE=’text’ NAME=’gr2′><BR>
<INPUT TYPE=’text’ NAME=’gr3′><BR>
<INPUT TYPE=’submit’ NAME=’submit’ value=’提交’>
<INPUT TYPE=’reset’ NAME=’reset’ value=’清除’>
</FORM>
</FORM>
</BODY>
</HTML>

引入页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
你刚才输入的内容是:<BR>
<%=request.getParameter(‘gr1’)%><BR>
<%=request.getParameter(‘gr2’)%><BR>
<%=request.getParameter(‘gr3′)%><BR>

Request.getParameterName()方法实例

主页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> request.getParameterName()方法使用实例</TITLE>
</HEAD>
<BODY>
<FORM METHOD=post ACTION=’2.jsp’>
<INPUT TYPE=’text’ NAME=’gr1′><BR>
<INPUT TYPE=’text’ NAME=’gr2′><BR>
<INPUT TYPE=’text’ NAME=’gr3′><BR>
<INPUT TYPE=’submit’ value=’提交’>
<INPUT TYPE=’reset’ value=’清除’>
</FORM>
</FORM>
</BODY>
</HTML>

指向页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
你刚才输入的内容是:<BR>
<%
Enumeration e=request.getParameterNames();
while(e.hasMoreElements()){
String parameterName=(String)e.nextElement();
String parametervalue=’/(String)request.getParameter(parameterName);’
out.print(‘参数名称:’+parameterName+'<BR>’);
out.print(‘参数内容:’+parameterValue+'<BR>’);
}
%>

Request.getAttributeName()方法实例

主页面:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’
%>
<HTML>
<HEAD>
<TITLE> request.getAttributeName()方法使用实例</TITLE>
</HEAD>
<BODY>
<jsp:include page=’2.jsp’ flush=’true’/>
<%
Enumeration e=request.getAttributeNames();
while(e.hasMoreElements()){
String attributeName=(String)e.nextElement();
String attributevalue=’/(String)request.getAttribute(attributeName);’
out.print(‘变量名称:’+attributeName);
out.print(‘变量内容:’+attributeValue+'<BR>’);
}
%>
</FORM>
</FORM>
</BODY>
</HTML>

转向页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<%
request.setAttribute(‘gr1′,’111’);
request.setAttribute(‘gr2′,’222’);
request.setAttribute(‘gr3′,’333′);
%>

request.getRemoteAddr()方法实例:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> request.getRemoteAddr()方法使用实例</TITLE>
</HEAD>
<BODY>
<B>你的IP地址:</B>
<B><%=request.getRemoteAddr()%></B>
</FORM>
</FORM>
</BODY>
</HTML>

3、Response对象

response.setHeader()方法网页自动刷新实例:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
<HTML>
<HEAD>
<TITLE> response刷新页面实例</TITLE>
</HEAD>
<BODY>
<%
response.setHeader(‘refresh’,’3′);
out.println(new Date().toLocaleString());
%>
</BODY>
</HTML>

4、Application对象

在JSP服务器运行时刻,仅有一个Application对象,它由服务器创建,也由服务器自动清除,
不能被用户创建和清除。我们只能创建这个Appliation对象的同步拷贝。

setAttribute(),getAttribute()和removeAttribute()方法实例:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> Application对象方法实例</TITLE>
</HEAD>
<BODY>
<%
String username=’rossini’;
String password=’126263′;
application.setAttribute(‘username’,username);
application.setAttribute(‘password’,password);
out.println(application.getAttribute(‘username’)+'<BR>’);
out.println(application.getAttribute(‘password’)+'<BR>’);
application.removeAttribute(‘password’);
out.println(application.getAttribute(‘password’)+'<BR>’);
%>
</BODY>
</HTML>

getAttributeNames()方法实例:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ import=’java.util.*’ %>
<HTML>
<HEAD>
<TITLE> Application对象方法实例</TITLE>
</HEAD>
<BODY>
<%
String username=’rossini’;
String password=’126263′;

application.setAttribute(‘username’,username);
application.setAttribute(‘password’,password);

Enumeration enum=application.getAttributeNames();
while(enum.hasMoreElements()){
String attrName=(String)enum.nextElement();
out.println(attrName+’—-‘+application.getAttribute(attrName)+'<BR>’);
}

%>
</BODY>
</HTML>

5、Session对象

当用户登陆网站,系统将为他生成一个独一无二的Session对象,用以记录改用户的个人信息
,一旦改用户退出网站,那么该Session对象将会注销。Session对象可以绑定若干个人信息或
者Java对象,不同Session对象的同名变量是不会相互干扰的。

getValue(String name)、putValue(String name)、removeValue(String name)、getValueNames()
、getCreationTime()、getId()、getLastAccessedTime()、getMaxInactiveInterval()、
setMaxInactiveInterval()方法:

主文件:

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> Session主页面</TITLE>
</HEAD>
<BODY>
<%
String username=’rossini’;
String password=’126263′;
session.putValue(‘username’,username);
session.putValue(‘password’,password);
%>
<A href=’/2.jsp’>指向第二页</A>
</BODY>
</HTML>

转向页面1

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> Session转向页面1</TITLE>
</HEAD>
<BODY>
<%
String usr=(String)session.getValue(‘username’);
String pwd=(String)session.getValue(‘password’);
%>
<%=usr%><BR>
<%=pwd%><BR>
<%out.println(‘session create:’+session.getCreationTime());%><BR>
<%out.println(‘session id:’+session.getId());%><BR>
<%out.println(‘session last access:’+session.getLastAccessedTime());%><BR>
<%out.println(‘session 原来最大休眠时间:’+session.getMaxInactiveInterval());%><BR>
<%session.setMaxInactiveInterval(session.getMaxInactiveInterval()+1);%><BR>
<%out.println(‘session 最新最大休眠时间:’+session.getMaxInactiveInterval());%><BR
<%
String []name=session.getValueNames();
out.println(‘————–‘+'<BR>’);
for(int i=0;i<name.length;i++)
{
out.println(session.getValue(name<i>)+'<BR>’);
}
%>
<%
session.removeValue(‘username’);
%>
<A href=’/3.jsp’>指向第三页</A>
</BODY>
</HTML>

转向页面2

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> Session转向页面2</TITLE>
</HEAD>
<BODY>
<%
String usr=(String)session.getValue(‘username’);
String pwd=(String)session.getValue(‘password’);
%>
<%=usr%><BR>
<%=pwd%>
</BODY>
</HTML>

invalidate()方法将会将会清除当前的session对象解除它和任何参数或者JAVA对象的绑定关系

简单的JSP计数器
实例:

主页面

<%@page language=’java’ contentType=’text/html;charset=gb2312′ %>
<HTML>
<HEAD>
<TITLE> JSP计数器 </TITLE>
</HEAD>
<BODY>
<div align=’center’><font face=’黑体’ size=’10’>你是第<jsp:include page=’11.jsp’ flush=’true’/> 位访客</font> </div>
</BODY>
</HTML>

引入页面

<%!protected int count=0;%>
<%=++count%>
JavaBean设计规范及实例
javaBean的设计规范:
一个javaBean类必须是一个公共类
一个javaBean类必须有一个空的构造函数
一个javaBean类不应有公共实例变量
持有值应该通过一组存取方法(getXxx和setXxx)来访问
实例:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部