JSP网上书店系统(论文)
Amount int 11 yes 数量
表3.5书店管理员信息表,记录管理员信息bookadmin。
表3.5 管理员信息表bookadmin
字段名 数据类型 长度 允许空
说明 AdminUser varchar 20
管理员用户名 AdminPass
varchar
50
yes 管理员密码
表3.6图书分类信息表,记录图书分类信息bookclass。
表3.6 图书分类表 bookclass
字段名 数据类型 长度 允许空
说明
ID int 4
自动编号,卡类型编号
Classname
varchar
30
yes 图书类别
第4章 详细设计
4.1 系统概述
4.1.1用户界面部分
图书选购(可按分类查找图书,或者通过关键字进行查询)。 购物车功能。 查看图书详细信息。 用户注册。 用户登录。
查看用户的订单信息。 修改用户个人信息。 4.1.2 管理界面部分
现有图书管理:修改,删除,查看。 用户管理:查看,修改,删除。
订单管理:查看订单清单,更新订单付款,出货状态,删除订单。 添加新图书。 添加图书分类。
11
JSP网上书店系统(论文)
4.2 详细代码及说明
4.2.1实现bookshop.run包
1:login.java
这是一个以客户为中心的交易平台,只有成为了系统的合法用户才能够使用这个系统,因此需要检验每个用户的合法性,管理用户登录的login.java正是要完成这样的功能。
类中定义了个private属性和他们对应的setX()/getX()方法和默认构造函数和execute() getSql() 操作。
private属性分别是:
private String username; private String passwd; private boolean isadmin; private long userid=0; 重要操作:主要介绍execute() execute()操作
功能:从数据库中查询用户信息。
返回值:boolean型,如果取值成功返回true,否则,返回false。
设计思路:获得数据库连接对象Connection 对象,ResultSet对象和Statement对象 ――》调用getSql()方法获得sql语句――》执行sql语句。
程序主干部分代码:
public boolean execute() throws Exception { ??? try{
con=DataBase.getConnection(); stmt=con.createStatement(); rs = stmt.executeQuery(getSql()); }catch(Exception e){
e.printStackTrace(); }
while (rs.next()){
//登录用户名 //登录密码 //是否管理员登录 //用户ID号
12
JSP网上书店系统(论文)
if (!isadmin) {
userid = rs.getLong(\ }
flag = true; } ???}
2:op_book.java
该类主要负责图书的管理,包括图书的修改,查询,删除和添加等。 op_book类有以下属性:
private book abooks = new book(); //新的图书类
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private boolean sqlflag = true ; 是否正确
private Vector booklist; 组
private int page = 1; private int pageSize=5;
//显示的页码
//每页显示的图书数 //页面总数
//查询的记录
//显示图书列表向量数
//对接收到的数据
private int pageCount =0; 总数
public String sqlStr=\
private long recordCount =0;
op_book类有以下方法(省去了属性对应的getX()/setX()方法): book_search();完成图书查询,包括分类,关键字查询。 delete();负责图书的删除。
getOnebook();主要完成图书的单本查询,用于支持页面的“查看详细信息”。
insert();负责图书的添加。
to_String();把字符串以“ISO 8859-1”编码形式输出,使页面正常显示。
update();负责修改图书信息。
13
JSP网上书店系统(论文)
getRequest();负责接受页面传递过来的参数,分解并将参数存放到abooks对象中。
重要操作:主要介绍getRequest() getRequest()方法
功能:负责从页面接受表单数据并分解,设置abooks对象相应属性。 参数设计:页面传递的Request对象,其中包括表单数据。 返回值:boolean型,true表示成功,否则返回false。
设计思想:获取页面传递的Request对象—》分解Request对象—》获取表单参数值—》把参数值设置成图书对象abooks相对应的属性值。
程序主干代码: public
getRequest(javax.servlet.http.HttpServletRequest newrequest) {
???
request = newrequest; String
abooks.setBookName(to_String(BookName));
String request.getParameter(\
abooks.setAuthor(to_String(author));
String request.getParameter(\
abooks.setPublish(to_String(publish));
String request.getParameter(\
abooks.setBookClass(bc); String request.getParameter(\
bookno
=
bookclass
=
publish
=
author
=
BookName
=
request.getParameter(\
boolean
14
JSP网上书店系统(论文)
abooks.setBookNo(to_String(bookno));
String request.getParameter(\
abooks.setPicture(to_String(picture));
price
Float(request.getParameter(\
abooks.setPrice(price); amount
=
new
Integer(request.getParameter(\
abooks.setAmount(amount); String request.getParameter(\
abooks.setContent(to_String(Content));
??.. }
3:op_user.java:
为了使用上的方便,我们把对用户的管理,包括用户的添加,删除,修改,查询等集合成一个管理类。
该类具有以下属性:
private user user = new user(); 用户对象
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private Vector userlist; private int page = 1; private int pageSize=8;
//显示用户列表向量数组
//显示的页码 //每页显示的图书数 //页面总数
//查询的记录总数 //出错信息提示 //注册后返回的用户名 //新的
Content
= =new
picture
=
private int pageCount =0;
private long recordCount =0; private String message = \ private String username = \
15