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)来访问
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
package Show; import java.sql.*; public class DBconn{ private String sDBDriver='org.gjt.mm.mysql.Driver'; private String sConnStr='jdbc:mysql://10.1.1.79:3306/web?user=root&amp;password=2676141'; private Connection conn=null; private ResultSet rs=null; public DBconn(){ try{ Class.forName(sDBDriver); } catch(java.lang.ClassNotFoundException e){ System.out.println('DBconn():'+e.getMessage()); } } public String getsConnStr(){ return sConnStr; } public void setsConnStr(String sConnStr){ this.sConnStr=sConnStr; } public void executeUpdate(String sql)throws Exception{ sql=new String(sql.getBytes('GBK'),'ISO8859_1'); try{ conn=DriverManager.getConnection(sConnStr); Statement stmt=conn.createStatement(); stmt.executeUpdate(sql); conn.close(); stmt.close(); } catch(SQLException ex){ System.out.println('sql.executeUpdate:'+ex.getMessage()); } } public ResultSet executeQuery(String sql)throws Exception{ rs=null; try{ sql=new String(sql.getBytes('GBK'),'ISO8859_1'); conn=DriverManager.getConnection(sConnStr); Statement stmt=conn.createStatement(); rs=stmt.executeQuery(sql); conn.close(); stmt.close(); } catch(SQLException ex){ System.out.println('sql.executeQuery:'+ex.getMessage()); } return rs; } } |