| 订阅 | 在线投稿
分享
 
 
 

Jsp+JavaBean循序渐进教程(六)

2007-02-01 20:11:01  编辑来源:互联网  宽屏版  评论

这一节涉及到两个页面,一个donewuser.jsp文件用来实现记录添加操作,另一个文件listuser.jsp文件

用来显示所有的已经注册的用户信息。这两个页面都涉及到了JavaBean的具体调用,还是来看看文件吧,

对于文件中关键代码,都会添加上注释,以方便大家理解。

donewuser.jsp文件

说明:用户注册操作页面,并根据用户注册成功否显示相应的反馈信息,这个页面主要的特点就是使用了

lyf.adduser这个JavaBean的addNewUser()方法来进行记录的添加。

< %@ page contentType="text/html;charset=gb2312"%>

< % response.setHeader("Expires","0"); %>

< !--生成一个JavaBean:lyf.adduser的实例,id为adduser,生存范围为page-->

< jsp:useBean id="adduser" class="lyf.adduser" scope="page"/>

< !--设置JavaBean中各个属性的值,这会调用JavaBean中各个属性的set方法,以便JavaBean得到

正确的属性值,”*”代表进行所有属性的匹配-->

< jsp:setProperty name="adduser" property="*"/>

< html>

< head>

< meta http-equiv="Content-Language" content="zh-cn">

< meta http-equiv="Content-Type" content="text/html; charset=gb2312">

< meta name="GENERATOR" content="Microsoft FrontPage 3.0">

< meta name="ProgId" content="FrontPage.Editor.Document">

< title>用户添加< /title>

< /head>

< body bgcolor="#FFEBBD">

< div align="center">< center>

< %

//调用lyf.adduser的checkUser()方法检查是否有重复的用户名

//如果有重复就显示对应的信息

if(!adduser.checkUser())

{

//页面文字输出信息,使用jsp内置对象out的println方法,相当于asp中的response.write方法

out.println("对不起,这个用户名"+adduser.getUsername()+"已经被申请了,请重新选择!");

//return代表返回,运行时候碰到return就不会进行下面的处理了,功能相当于asp中的response.end

return;

}

%>

< %

//如果没有用户名重复的问题,调用lyf.adduser的addNewUser()方法来将用户数据添加到数据库中,并

根据数据添加成功否来显示对应的信息

if(adduser.addNewUser()){

%>

< H2>添加用户成功!

< H2>添加用户失败,请和管理员联系!

< /BODY>

< /HTML>

listuser.jsp文件

说明:用户信息列表页面,用于显示注册的所有用户信息,对数据进行了分页显示。

为了方便大家使用,采用了通用的分页代码,如果是JDBC2.0以上或者其他支持

TYPE_SCROLL_INSENSITIVE游标的数据库驱动程序,可以有更简洁的分页方法。

和前面jsp页面类似的语句就不讲解了,代表在

这个页面中导入java.sql.ResultSet的这个类库,因为Jsp页面中间要声明ResultSet;

oracle.jdbc.driver.*类库是Oracle专用的Jdbc驱动程序,让Jsp页面可以用来进行Oracle的数据库操作。

< %@ page contentType="text/html;charset=gb2312"%>

< % response.setHeader("Expires","0"); %>

< %@ page import="java.sql.ResultSet" %>

< %@ page import="oracle.jdbc.driver.*" %>

< !--生成一个JavaBean:lyf.db的实例-->

< jsp:useBean id="db" class="lyf.db" scope="request"/>

< jsp:setProperty name="db" property="*"/>

< %

java.lang.String strSQL; //SQL语句

int intPageSize; //一页显示的记录数

int intRowCount; //记录总数

int intPageCount; //总页数

int intPage; //待显示页码

java.lang.String strPage;

int i,j,k;

//设置一页显示的记录数

intPageSize = 15;

//取得待显示页码

strPage = request.getParameter("page");

if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据

intPage = 1;

}

else{//将字符串转换成整型

intPage = java.lang.Integer.parseInt(strPage);

if(intPage<1) intPage = 1;

}

//获取记录总数

strSQL = "select count(*) from user";

ResultSet result = db.executeQuery(strSQL); //执行SQL语句并取得结果集

result.next(); //记录集刚打开的时候,指针位于第一条记录之前

intRowCount = result.getInt(1);

result.close(); //关闭结果集

//记算总页数

intPageCount = (intRowCount+intPageSize-1) / intPageSize;

//调整待显示的页码

if(intPage>intPageCount) intPage = intPageCount;

strSQL="select * from user order by id desc";

//执行SQL语句并取得结果集

result = db.executeQuery(strSQL);

//将记录指针定位到待显示页的第一条记录上

i = (intPage-1) * intPageSize;

for(j=0;j

< html>

< head>

< meta http-equiv="Content-Language" content="zh-cn">

< meta http-equiv="Content-Type" content="text/html; charset=gb2312">

< meta name="GENERATOR" content="Microsoft FrontPage 3.0">

< meta name="ProgId" content="FrontPage.Editor.Document">

< title>用户列表< /title>

< /head>

< body bgcolor="#FFEBBD">

< div align="center">< center>

< table border="1"

borderColorDark="#FFFFFF" borderColorLight="#000000" cellspacing="0" height="22"

width="100%">

< tr bgcolor="#FFEBAD">

< td height="1" width="691" class="main">

第页 共页

< a href="listuser.jsp?page=0">首页

< a href="listuser.jsp?page=">上一页

上一页

< a href="listuser.jsp?page=">下一页

下一页

< a href="listuser.jsp?page=">尾页

第< input type="text" class="main" name="page" size="3" value=""

tabindex="1">页< input type="submit" class="main" value="go" name="B1" tabindex="2">

< table border="1" width="100%" cellspacing="0" bordercolorlight="#000000"

bordercolordark="#FFFFFF" class="main">

< tr bgcolor="#FFEBAD">

< td >

< div align="left">用户名

< td >

< p align="center">Email

< td >

< p align="center">主页

< td>

< p align="center">登记时间

< td>

< p align="center">说明

< tr bgcolor="#FFEBAD">

< td>

< div align="left">

< td>< div align="center">

< td>< div align="center">< font color="#0000CC">

< td>< div align="center">< font color="#FF6666">

< td>< div align="center">< font color="#0000FF">

< /table>

< /body>

< /html>

先运行程序newuser.jsp文件,进行用户注册操作,然后运行listuser.jsp文件,看看是否已经

添加到数据库中。对于具体jsp文件和class文件放在什么目录下的问题,请看具体jsp服务器软件的参考,

一个最简单的方法就是用Jbuilder4.0直接运行,因为它自带了Tomcat服务器软件。

好了,到这里Jsp+JavaBean的介绍就基本上结束了,通过上面的学习,大家应该对JavaBean如何

应用于JSP程序中有了一个基本的了解,剩下的就是在具体程序中去应用和发挥了。

这一节涉及到两个页面,一个donewuser.jsp文件用来实现记录添加操作,另一个文件listuser.jsp文件 用来显示所有的已经注册的用户信息。这两个页面都涉及到了JavaBean的具体调用,还是来看看文件吧, 对于文件中关键代码,都会添加上注释,以方便大家理解。   donewuser.jsp文件   说明:用户注册操作页面,并根据用户注册成功否显示相应的反馈信息,这个页面主要的特点就是使用了 lyf.adduser这个JavaBean的addNewUser()方法来进行记录的添加。 < %@ page contentType="text/html;charset=gb2312"%> < % response.setHeader("Expires","0"); %> < !--生成一个JavaBean:lyf.adduser的实例,id为adduser,生存范围为page--> < jsp:useBean id="adduser" class="lyf.adduser" scope="page"/>   < !--设置JavaBean中各个属性的值,这会调用JavaBean中各个属性的set方法,以便JavaBean得到 正确的属性值,”*”代表进行所有属性的匹配--> < jsp:setProperty name="adduser" property="*"/> < html> < head> < meta http-equiv="Content-Language" content="zh-cn"> < meta http-equiv="Content-Type" content="text/html; charset=gb2312"> < meta name="GENERATOR" content="Microsoft FrontPage 3.0"> < meta name="ProgId" content="FrontPage.Editor.Document"> < title>用户添加< /title> < /head> < body bgcolor="#FFEBBD"> < div align="center">< center> < %   //调用lyf.adduser的checkUser()方法检查是否有重复的用户名   //如果有重复就显示对应的信息 if(!adduser.checkUser()) {   //页面文字输出信息,使用jsp内置对象out的println方法,相当于asp中的response.write方法 out.println("对不起,这个用户名"+adduser.getUsername()+"已经被申请了,请重新选择!");   //return代表返回,运行时候碰到return就不会进行下面的处理了,功能相当于asp中的response.end return; } %> < % //如果没有用户名重复的问题,调用lyf.adduser的addNewUser()方法来将用户数据添加到数据库中,并 根据数据添加成功否来显示对应的信息 if(adduser.addNewUser()){ %> < H2>添加用户成功! < H2>添加用户失败,请和管理员联系! < /BODY> < /HTML>   listuser.jsp文件   说明:用户信息列表页面,用于显示注册的所有用户信息,对数据进行了分页显示。   为了方便大家使用,采用了通用的分页代码,如果是JDBC2.0以上或者其他支持 TYPE_SCROLL_INSENSITIVE游标的数据库驱动程序,可以有更简洁的分页方法。   和前面jsp页面类似的语句就不讲解了,代表在 这个页面中导入java.sql.ResultSet的这个类库,因为Jsp页面中间要声明ResultSet; oracle.jdbc.driver.*类库是Oracle专用的Jdbc驱动程序,让Jsp页面可以用来进行Oracle的数据库操作。 < %@ page contentType="text/html;charset=gb2312"%> < % response.setHeader("Expires","0"); %> < %@ page import="java.sql.ResultSet" %> < %@ page import="oracle.jdbc.driver.*" %> < !--生成一个JavaBean:lyf.db的实例--> < jsp:useBean id="db" class="lyf.db" scope="request"/> < jsp:setProperty name="db" property="*"/> < %   java.lang.String strSQL; //SQL语句 int intPageSize; //一页显示的记录数 int intRowCount; //记录总数 int intPageCount; //总页数 int intPage; //待显示页码 java.lang.String strPage; int i,j,k;   //设置一页显示的记录数 intPageSize = 15;   //取得待显示页码 strPage = request.getParameter("page"); if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据 intPage = 1; } else{//将字符串转换成整型 intPage = java.lang.Integer.parseInt(strPage); if(intPage<1) intPage = 1; } //获取记录总数 strSQL = "select count(*) from user"; ResultSet result = db.executeQuery(strSQL); //执行SQL语句并取得结果集 result.next(); //记录集刚打开的时候,指针位于第一条记录之前 intRowCount = result.getInt(1); result.close(); //关闭结果集   //记算总页数 intPageCount = (intRowCount+intPageSize-1) / intPageSize;   //调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount; strSQL="select * from user order by id desc";   //执行SQL语句并取得结果集 result = db.executeQuery(strSQL);   //将记录指针定位到待显示页的第一条记录上 i = (intPage-1) * intPageSize; for(j=0;j < html> < head> < meta http-equiv="Content-Language" content="zh-cn"> < meta http-equiv="Content-Type" content="text/html; charset=gb2312"> < meta name="GENERATOR" content="Microsoft FrontPage 3.0"> < meta name="ProgId" content="FrontPage.Editor.Document"> < title>用户列表< /title> < /head> < body bgcolor="#FFEBBD"> < div align="center">< center> < table border="1" borderColorDark="#FFFFFF" borderColorLight="#000000" cellspacing="0" height="22" width="100%"> < tr bgcolor="#FFEBAD"> < td height="1" width="691" class="main"> 第页 共页 < a href="listuser.jsp?page=0">首页 < a href="listuser.jsp?page=">上一页 上一页 < a href="listuser.jsp?page=">下一页 下一页 < a href="listuser.jsp?page=">尾页 第< input type="text" class="main" name="page" size="3" value="" tabindex="1">页< input type="submit" class="main" value="go" name="B1" tabindex="2"> < table border="1" width="100%" cellspacing="0" bordercolorlight="#000000" bordercolordark="#FFFFFF" class="main"> < tr bgcolor="#FFEBAD"> < td > < div align="left">用户名 < td > < p align="center">Email < td > < p align="center">主页 < td> < p align="center">登记时间 < td> < p align="center">说明 < tr bgcolor="#FFEBAD"> < td> < div align="left"> < td>< div align="center"> < td>< div align="center">< font color="#0000CC"> < td>< div align="center">< font color="#FF6666"> < td>< div align="center">< font color="#0000FF"> < /table> < /body> < /html>      先运行程序newuser.jsp文件,进行用户注册操作,然后运行listuser.jsp文件,看看是否已经 添加到数据库中。对于具体jsp文件和class文件放在什么目录下的问题,请看具体jsp服务器软件的参考, 一个最简单的方法就是用Jbuilder4.0直接运行,因为它自带了Tomcat服务器软件。   好了,到这里Jsp+JavaBean的介绍就基本上结束了,通过上面的学习,大家应该对JavaBean如何 应用于JSP程序中有了一个基本的了解,剩下的就是在具体程序中去应用和发挥了。
󰈣󰈤
 
 
 
>>返回首页<<
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号wangchaonetcn
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有