Oraclr课程设计校园小商品交易系统Word格式.docx
- 文档编号:22886817
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:25
- 大小:276.48KB
Oraclr课程设计校园小商品交易系统Word格式.docx
《Oraclr课程设计校园小商品交易系统Word格式.docx》由会员分享,可在线阅读,更多相关《Oraclr课程设计校园小商品交易系统Word格式.docx(25页珍藏版)》请在冰豆网上搜索。
功能:
本系统应该实现基本的网上商品交易,通过三种不同的身份登录系统,可以执行相应的数据操作,其中最主要的功能是网上订购,商品用户和普通用户都可以实现;
关于付款或者交货,就用户私下解决,本系统可以提供双方的电话。
商品用户的主要功能是发布商品,而普通用户则订购商品,管理员则可以管理系统全部信息,主要是维护系统信息的正确性与合法性。
输入:
对于商品搜索功能,可以是按商品名称或者是价格的区域进行选择;
对于管理员维护功能,要有修改整个系统的信息。
输出:
能按要求在显示器上显示所需信息并能打印成有条理的表格。
安全与保密:
对于不同权限用户,设置不同权限,对重要数据可以考虑加密存储。
对不同身份登录也设置不同的功能。
2.2系统需求分析
1)基本信息的维护
商品基本信息管理:
包括商品基本信息的新建、修改和删除等。
商品用户信息管理:
包括商品用户信息的注册、修改密码和删除等。
普通用户信息管理:
包括普通用户信息的添加、删除和修改密码等。
2)商品发布
商品发布信息管理:
商品发布信息包括商品id,名称,价格,广告词,订购次数等。
商品发布管理功能完成商品信息增加、修改等。
分类查看:
可以根据商品名称或者价格所在区域来查看某种商品的详细信息和卖家情况。
最近更新:
商品信息的变动可以显示你的商品新鲜度。
商品订购次数:
列出当前订购量最多商品。
已有商品:
列出当前商品用户已发布的商品。
3)订购管理
商品订购管理:
商品的订购包含商品id与订购商品的用户名,而且每订购一次就将商品的订购次数加一。
查看已订购商品:
可以根据商品用户名称来查看当前用户订购商品的情况。
查找商品:
用户可以直接去商城找商品,然后输入商品号订购,更新订购表。
4)管理员管理
查看全部普通用户信息,对其进行修改与删除,更新表。
商品用户管理:
基本功能与管理普通用户一样。
商品管理:
查看全部商品信息与商品所属商品用户信息,然后对商品信息进行修改与删除。
第三章 系统设计阶段
3.1系统功能模块设计
系统开发的总体任务是实现各种信息的系统化、规范化和自动化。
3.1.1系统功能分析
系统功能分析是在系统开发的总体任务的基础上完成。
校园小商品交易系统需要完成功能主要有:
·
默认访客的浏览,包括热门商品、最近更新商品,查找商品,查看商品用户的资料。
普通用户的注册,登陆,修改自身密码,浏览热门商品、最近更新商品,查看商品用户信息,按商品名称或商品价格区域搜索商品,订购商品;
个人信息管理,查看已订购商品。
商品用户的注册、登陆、修改自身密码与个人信息,查看已订购商品,查看已发布商品,查看被订购商品的用户信息;
浏览商城,包括热门商品、最近更新商品、全部商品;
发布商品,修改拥有的商品信息。
热门商品,通过查询数据库中suser.sp表,按dinggoucishu由大到小排列出来,显示出多人订购的商品为热门;
dinggoucishu由系统自动生成,不允许任何人修改,以防虚假信息。
最近更新商品,通过查询suser.sp表,按fabudate的新旧时间排列,新时间的排在前面,fabudate是由发布商品的当前系统时间生成。
商品发布与修改,由商品用户完成,输入商品的基本信息,然后发布到商城,商品用户可以在查看拥有的商品信息那块修改商品信息。
管理员的功能,查看整个系统的信息,并可以对其进行修改;
主要是维护系统信息的规范性,文明性,而且能通过管理员查看用户的密码,避免了用户丢失密码而无法再次登陆;
对一些长期不登陆的用户进行修改删除,释放更多空间让别人注册登陆。
3.1.2系统功能模块图
对上述各功能进行集中、分块,按照结构化程序设计的要求,得到如图3-1所示的系统功能模块图。
3.2系统数据库分析设计
1、数据库设计
设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。
数据库设计一般包括如下几个步骤:
●数据库需要分析。
●数据库概念结构设计。
●数据库逻辑结构设计。
数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入,收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后而后具体设计打下基础。
管理员信息:
管理员账号,密码;
普通用户信息:
账号,密码,电话,email;
商品用户信息:
商品信息:
商品id,商品名称,商品价格,广告词,发布日期,订购次数;
普通订购信息:
订购的商品id,订购商品的用户;
商业订购信息:
订购的商品id,订购商品的商品用户;
本次设计要求使用ORACLE数据库,相对以前的SQL2000,用户的权限与表空间的分配要求就高了。
这次数据库的设计:
首先在实例ORAL数据库上建了一个kechengsheji的表空间,在表空间上创建guanli,suser,puser,sp,dinggou,sdonggou几个表,用来存储各方面的资料,guangli存放管理员的账号密码,suser存放商品用户的信息,puser存放普通用户的信息,sp存放商品的信息,dinggou存放普通用户的订购信息,sdinggou存放商品用户的订购信息。
另,创建4个用户fangke,guangli,puser,suser,赋予各个用户应该的权限,方案都是kechengsheji,例如fangke赋予select对表sp,suser的操作,suser则赋予select,update,insert对表sp,等等。
得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
例:
普通用户信息实体E-R图如图
商品信息实体E-R图如图
3.3用户界面设计
系统是使用JSP+ORACLE结合开发出来的。
本系统设计思想:
“为用户设计,而不是设计者”
本系统设计原则:
1界面简洁、操作方便并能高效率地完成工作。
2界面根据用户需求设计。
3界面能引导用户操作的功能。
1.登陆页面,个人管理页面
2.最近更新商品
3.商品搜索
4.商品发布页面,查看已有商品
5.用户注册页面
6.管理员管理
第四章系统参考源代码
主页:
<
%@pagecontentType="
text/html;
Charset=GB2312"
%>
html>
body>
head>
%@includefile="
head.txt"
/head>
tablewidth="
850"
border="
0"
bgcolor="
#CCCC99"
align="
center"
>
<
tr>
tdwidth="
120"
%if((String)session.getAttribute("
dquser"
)==null){%>
欢迎来到商店<
/td>
50"
ahref="
denglu.jsp"
/>
[登陆]<
/a>
48"
zhuce.jsp"
[注册]<
%}
else{out.print("
+120+"
"
);
out.print((String)session.getAttribute("
));
%>
欢迎来到商店<
td>
tuichu.jsp"
退出<
%=(String)session.getAttribute("
shenfen"
)%>
/>
个人管理<
%}%>
&
nbsp;
/tr>
/table>
br>
divalign="
imgsrc="
file:
///D|/image/正门.jpg"
width="
800"
height="
500"
hr/>
palign="
XXX制造|违权必究|联系电话0759-********<
/p>
p>
/body>
/html>
所含heat.Txt代码
///D|/image/海大.jpg"
96"
background="
///D|/image/top3.jpg"
index.jsp"
主页<
/div>
shangcheng.jsp"
商城<
zhao.jsp"
找商品<
gengxin.jsp"
最近更新<
remen.jsp"
热门商品<
数据库的连接,注册部分
%booleanboo=false;
Stringm="
;
if(suserid.getSname()==null)
{
m="
请输入用户名"
boo=false;
}
if(suserid.getSname()!
=null)
{
Connectioncon=null;
try{
Class.forName("
oracle.jdbc.driver.OracleDriver"
}
catch(ClassNotFoundExceptione){}
try
con=DriverManager.getConnection("
jdbc:
odbc:
suser"
"
Stringstr="
insertintosuservalues(?
?
)"
PreparedStatementpstmt=con.prepareStatement(str);
pstmt.setString(1,suserid.getSname());
pstmt.setString(2,suserid.getSname());
pstmt.setString(3,suserid.getPhone());
pstmt.setString(4,suserid.getEmail());
pstmt.execute();
pstmt.close();
con.close();
m="
用户注册成功"
boo=true;
}
catch(Exceptione1)
插入数据时出错"
boo=false;
登陆部分
%Stringm="
booleanbo=false;
Connectioncon=null;
Statementstmt=null;
ResultSetrs=null;
if(pdl.getPname()==null)
bo=false;
else
puser"
selectpname,ppasswordfrompuser"
stmt=con.createStatement();
rs=stmt.executeQuery(str);
while(rs.next())
{
Stringn1=rs.getString
(1).trim();
Stringp1=rs.getString
(2).trim();
if(n1.equals(pdl.getPname())&
p1.equals(pdl.getPpassword()))
{
m="
登陆成功"
bo=true;
rs.close();
stmt.close();
catch(SQLExceptione)
{m="
登陆失败,请重新登陆"
bo=false;
}
}
密码修改部分
%@pageimport="
java.sql.*"
jsp:
useBeanid="
pc"
class="
shitu.pbean.Pc"
scope="
request"
setPropertyname="
property="
*"
%Stringm=null;
Stringpassword=pc.getPassword();
Stringname=(String)session.getAttribute("
Stringpassword1=pc.getPassword1();
if(pc.getPassword()==null)
session.setAttribute("
m"
请输入密码"
response.sendRedirect("
pgl.jsp"
if(pc.getPassword().equals(pc.getPassword1())&
pc.getPassword()!
=null&
pc.getPassword1()!
try{
Class.forName("
con=DriverManager.getConnection("
updatepusersetppassword=?
wherepname=?
PreparedStatementstmt=con.prepareStatement(str);
stmt.setString(1,pc.getPassword());
stmt.setString(2,name);
stmt.execute();
session.setAttribute("
修改成功"
response.sendRedirect("
{out.print(e);
插入数据库出错"
else{session.setAttribute("
前后两次密码不对"
response.sendRedirect("
按价格区域搜索商品部分
%Connectioncon=null;
intid=0;
try{
Class.forName("
catch(ClassNotFoundExceptione){}
try
Stringdi=request.getParameter("
zuidi"
intzuidi=Integer.parseInt(di);
Stringgao=request.getParameter("
zuigao"
intzuigao=Integer.parseInt(gao);
con=DriverManager.getConnection("
fangke"
Stringstr="
selectsuser.suser.sname,suser.suser.phone,suser.sp.spid,suser.sp.spname,suser.sp.jiage,suser.sp.guanggaocifromsuser.sp,suser.suserwheresuser.suser.sname=suser.sp.snameandsuser.sp.jiage>
="
+zuidi+"
andsuser.sp.jiage<
+zuigao;
Statementstm=con.createStatement();
ResultSetsrs=stm.executeQuery(str);
//stm.setInt(1,id);
out.print("
tableborder=1>
+"
卖家"
卖家电话"
商品id"
商品名称"
商品价格"
广告词"
while(srs.next())
{out.print("
Stringna=srs.getString
(1);
out.print("
+na+"
Stringdianhua=srs.getString
(2);
+dianhua+"
intn=srs.getInt(3);
+n+"
Stringb=srs.getString(4);
+b+"
intc=srs.getInt(5);
+c+"
Stringj=srs.getString(6);
+j+"
con.close
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oraclr 课程设计 校园 小商品 交易系统
![提示](https://static.bdocx.com/images/bang_tan.gif)