一、系统功能需求
基于Oracle数据库,实现一个网上书城系统,在该系统中实现用户登陆、用户注册、图书浏览、图书添加和查找等功能,因时间的关系,本设计要求实现的功能作了简化,要求实现的核收功能包括图书展现、添加、删除等。
1.1 图书展现
用户打开首页后,从数据库中读取数据,将图书信息展现在首页,如下图:
1.2 用户登录
在首页中,用户登录框中输入用户名和口令,从数据库中读取已存在的用户名和口令,比对成功后,进入用户界面。如:管理员登录后,可进入管理员界面,在其中展现数据库中图书信息,进行管理员相关操作,类似于下图:
1.3 用户注册
在首页中,设计“用户注册”链接,类似于下图:
打开用户注册界面,在其中接受用户输入,并将用户数据存入数据库中。
1.4 添加图书
在打开的添加图书页面中,打开图书添加页面,在其中输入图书信息,并提交写入数据库,类似于下图:
1.5 图书删除
在管理员界面中,选中指定图书,点击图书删除按钮,实现将指定图书数据删除,类似于下图:
二、系统设计
2.1 系统结构设计
本设计需实现的是一个简化版网上书城系统,系统总体结构采用B/S结构,如下图:
2.2 数据库设计
请根据以上功能描述,抽取出功能相关数据项,设计对应的数据库。
三、系统实现
3.1 图书展现实现
在首页或管理员首页中展现图书基本信息,当用户打开首页时,可看到图书的基本信息,包括书名、简要介绍和图片等。
<style type="text/css">
<!--
.STYLE13 {
font-size: 36px;
font-weight: bold;
font-family: "宋体";
color: #0033CC;
}
.STYLE15 {color: #660000}
-->
</style>
<table width="795" height="62" border="1" bgcolor="#FFFFFF">
<tr>
<th colspan="4" align="center" valign="middle" bgcolor="#FFFFFF" scope="col"><h1 align="center" class="STYLE13">智慧书店</h1></th>
</tr>
<tr bordercolor="#000000" bgcolor="#FFFFFF">
<td width="84" bordercolor="#000000"><div align="center">科技</div></td>
<td width="93" bordercolor="#000000"><div align="center" class="STYLE15">名著</div></td>
<td width="96" bordercolor="#000000"><div align="center">艺术</div></td>
<td width="494" align="center" valign="middle"> <div align="center">
<form name="form1" method="post" action="">
<label>站内搜索:
<input type="text" name="textfield">
</label>
<label>
<input type="submit" name="Submit" value="提交">
</label>
</form>
</div></td>
</tr>
</table>
<table width="794" height="253" border="1" bordercolor="#000000" bgcolor="#FFFFFF">
<tr bgcolor="#FFFFFF">
<th height="23" colspan="5" scope="col"><div align="right">欢迎光临!</div></th>
</tr>
<tr>
<td width="185" rowspan="3"><div align="center"><img src="300.jpg" width="73" height="95"></div></td>
<td width="188" height="36">书名:水浒传</td>
<td width="4" rowspan="6" bgcolor="#FFFFFF"> </td>
<td width="194" rowspan="3"><div align="center"><img src="b24cc8c00097c3d479c85fe12d1ba3da_0_1_300_300.jpg" width="73" height="95"></div></td>
<td width="189">书名:三国演义</td>
</tr>
<tr>
<td height="34">作者:施耐庵</td>
<td>作者:罗贯中</td>
</tr>
<tr>
<td>价格:54元</td>
<td>价格:58元</td>
</tr>
<tr>
<td rowspan="3"><div align="center"><img src="t01548b8f3eb70e1447.jpg" width="114" height="95"></div></td>
<td height="35">书名:西游记</td>
<td rowspan="3"><div align="center"><img src="3561effa27b04ddfbfab9769cb27594b.jpeg" width="119" height="95"></div></td>
<td>书名:红楼梦</td>
</tr>
<tr>
<td height="39">作者:吴承恩</td>
<td>作者:曹雪芹</td>
</tr>
<tr>
<td height="33">价格:49元</td>
<td>价格:55元</td>
</tr>
</table>
<p> </p>
结果展示:
3.2 用户登录实现
在首页中,设置登录窗口,在其中输入用户名和口令后,可以完成用户登录操作。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.STYLE1 {
font-family: "宋体";
font-size: xx-large;
}
.STYLE3 {font-size: 36px}
.STYLE7 {font-size: medium}
-->
</style>
</head>
<body>
<div align="center">
<p class="STYLE1"><span class="STYLE3">欢迎来到智慧书店</span></p>
<p class="STYLE1"><img src="file:///C|/Users/26480/Desktop/图书馆/23222016_d270a37d4e_small.jpg" width="177" height="143" /></p>
<p align="center" class="STYLE1"><span class="STYLE7">输入账号:
<input type="text" >
<BR>
输入密码:
<input type="password" >
</span><BR>
<span class="STYLE8">
<input name="submit" type="submit" value="登录" />
</span>
<input type="submit" value="注册">
</p>
</div>
</body>
</html>
结果展示:
3.3 用户注册实现
在首页中,设置注册按钮或界面,用户可以在注册界面输入用户名、口令等基础用户信息,实现用户注册。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
body {
margin-right: 600px;
}
.STYLE1 {
font-size: xx-large;
font-family: "新宋体";
}
-->
</style></head>
<body>
<div align="center" class="STYLE1">
<div align="center"> 用户注册 </div>
</div>
<p>账号信息:</p>
<p>账号:
<input type="text" name="textfield" />
(不含空格,长度为4-10位)
</p>
<p>密码:
<input type="text" name="textfield2" />
(不含空格,长度为4-10位)</p>
<p>确认:
<input type="text" name="textfield3" />
(再次输入密码)
</p>
<p>姓名:
<input type="text" name="textfield4" />
</p>
<p>性别:
<input type="radio" name="radiobutton" value="radiobutton" />
男
<input type="radio" name="radiobutton" value="radiobutton" />
女</p>
<p>电话:
<input type="text" name="textfield6" />
(正确填写9位数字)
</p>
<p>地址:
<input type="text" name="textfield7" />
(请输入详细地址)
</p>
<form id="form1" name="form1" method="post" action="">
<div align="center">
<input type="submit" name="Submit" value="提交" />
<input type="submit" name="Submit2" value="重置" />
</div>
</form>
<p align="center"> </p>
</body>
</html>
结果展示:
完成后,到后台数据库,查询对应表中数据。
后台数据:
3.4 添加图书实现
设置图书添加按钮或界面,用户可以在此界面中录入图书相关信息,包括书名、作者、价格、简要介绍和图片等,完成图书信息的添加。
<%@ page language="java" import="java.sql.*" pageEncoding="gb2312"%>
<html>
<body>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:lib","scott","testdb");
Statement stat = conn.createStatement();
String sql = "INSERT INTO libb(BNO,BNAME,AUTHOR,PRICE) VALUES((1,'水浒传','施耐庵',54),(2,'三国演义','罗贯中',58),(3,'西游记','吴承恩',49),(4,'红楼梦','曹雪芹',55))";
int i = stat.executeUpdate(sql);
out.println("成功添加" + i + "行");
stat.close();
conn.close();
%>
</body>
</html>
结果展示:
完成后,到后台数据库,查询对应表中数据。
后台数据:
3.5 图书删除实现
在图书展示页面,设置单选或多选功能,用户可以选中指定的图书,点击删除功能按钮后,完成指定图书数据的删除。
<%@ page language="java" import="java.sql.*" pageEncoding="gb2312"%>
<html>
<body>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:lib","scott","testdb");
Statement stat = conn.createStatement();
String sql = "DELETE FROM T_STUDENT WHERE BNAME='水浒传'";
int i = stat.executeUpdate(sql);
out.println("成功删除" + i + "行");
stat.close();
conn.close();
%>
</body>
</html>
结果展示:
完成后测试,到后台数据库,查询对应表中数据。
后台数据:
四、总结
基于Oracle数据库,我设计并实现了一个简化的网上书城系统。该系统专注于满足用户的核心需求,包括用户登陆、注册,以及图书的浏览、添加和删除等功能。虽然时间有限导致系统功能有所简化,但已涵盖了书城运营的基本要素。用户可以通过该系统方便地浏览图书信息,进行图书的添加和删除操作,提升购物体验。