武汉理工大学华夏学院课程设计课程名称JSP程序设计课程设计题目网上书店系统班级计算机1121姓名学号成绩指导教师刘春燕2015 年6 月29 日至2015年7月3 日课程设计任务书设计题目:网上书店系统设计目的:1.掌握JSP WEB程序设计的基本工作原理;2.培养基本掌握JSP WEB应用开发的基本思路和方法;3.培养学生分析,解决问题的能力;4.提高学生的科技论文写作能力;设计任务:(在规定的时间内完成下列任务)1、分析各功能模块的需求;2、要求使用JSP,SERVLET,SQL等动态网页开发工具;3、提出合理的设计方案;4、功能要求完整;5、每人至少完成对数据库的增删改查的操作具体要完成的任务是:A.用户登录,利用函数检查账号和密码输入的完整性;B.书店管理,当用户登录成功后,通过该功能模块进入新书录入,书目查询,信息修改,旧书删除界面。
C.新书录入,在此界面输入新书的详细信息D.书目查询,根据书名查询书的信息。
此功能可扩充。
E.信息修改,通过此界面根据书名修改书本信息F.旧书删除,根据书名删除该书信息时间安排6月29日布置课程设计任务,确定设计题目;6月30 日查阅资料、准备程序,上机调试程序、书写课程设计报告;至7月2 日7月3日提交课程设计报告及相关文档具体要求1.课程设计报告按统一通用格式书写,具体格式要求请在网络上查阅;2.每位学生应独立完成各自的任务且每天至少在设计室工作半天;指导教师签名:15 年6月25日教研室主任(或责任教师)签名:15 年6月25日目录1 概述 (1)JSP简介和运行原理 (1)开发背景 (1)2 需求分析 (2)系统需求 (2)功能模块图 (2)3 数据库设计 (3)数据库需求分析 (3)数据库逻辑结构设计 (4)4 详细设计 (5)系统概述 (5)4.1.1用户界面部分 (5)4.1.2管理界面部分 (5)详细代码及说明 (5)用户登录程序设计 (5)书店管理程序设计 (6)5 系统测试 (9)登录界面 (9)书店管理界面 (9)新书录入界面 (10)书目查询界面 (11)信息修改界面 (11)旧书删除界面 (12)6 总结 (13)参考文献 (13)致谢 (14)1 概述JSP简介和运行原理JSP(Java Server Pages)是由Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准,JSP技术在Servlet技术基础上发展起来的,它正在飞速发展中,现已成为Java服务器编程的重要组成部分。
它虽然还未成型,但是它必将和J2EE(Java 2 Enterprise Edition)一起发展。
JSP是结合markup(HTML和XML)和Java代码来处理一种动态页面。
每一页第一次被调用时,通过JSP引擎自动被编译成Servlet,然后被执行,以后每次调用时,执行编译过的Servlet。
JSP提供了多种方式访问Java class、Servlet、Applets和Web Server,因此,Web应用的功能可以分成多个明确定义公用接口的组件,通过JSP将它们结合在一起。
在JSP第一次获得来自于客户端浏览器的请求时,JSP文件将被JSP引擎(JSP engine)转换成一个Servlet,即将”.jsp”文件编译成Java Class文件。
当Servlet引擎接收到请求后,如果设置了使用最新的JSP,它就会去找JSP文件,检查该文件在上次编译后是否改动过。
如果改动过,就会重新编译生成新的Servlet,最终将请求转交给编译好的Servlet引擎执行。
开发背景随着网络与计算机信息技术的发展,信息技术作为工具被引入商务活动的领域从而产生了电子商务。
电子商务就是利用信息技术将商务活动的各实体通过互联网络结合从而实现商务活动过程。
目前,网上书店在国际互联网上可以实现的商务已经多样化,可以完成从最基本的信息展示、信息发布功能到在线交易、在线客户服务、在线网站管理功能等,可以说,传统书店所具备的功能几乎都可以在互联网上进行电子化的高效动作。
作为一个虚拟的商店,网上商店具有很多新的特性,以下这些是它的优势:其营业成本完全有理由比传统意义上的商店低得多,不需支持昂贵的店铺租金,花费浩大的装修,不需要将大笔的流动资金作为货物而沉积在店里,可依靠“零库存”管理,缩速资金周转的周期,可以加速周期。
网上商店更容易开拓全场市场,国际互联网实现24小时营业,不需要营业员,网上商店可以被设置成一个自动售货机。
通过网上购物,购物者足不出户,可以节省很多时间,给消费者带来利润和便利。
2 需求分析系统需求本系统是一个中小型的电子商务系统----网上书店,可以为各类用户提供方便的在线买书环境,符合目前国内流行的电子商务模式。
管理员可以通过用户管理、定单管理、商品管理等管理功能来对系统进行维护更新。
具体要完成的任务是:1.用户登录,利用函数检查账号和密码输入的完整性;2.书店管理,当用户登录成功后,通过该功能模块进入新书录入,书目查询,信息修改,旧书删除界面。
3.新书录入,在此界面输入新书的详细信息4.书目查询,根据书名查询书的信息。
此功能可扩充。
5.信息修改,通过此界面根据书名修改书本信息6.旧书删除,根据书名删除该书信息功能模块图按照系统的需求要求,可以把系统功能进行分解,以便按照每个功能模块的要求分别实现对应的功能。
系统总体结构如下图1-1所示:图1-1系统结构图用户可以修改部分图书信息,像书名、价格、类别这样的信息都能作修改;用户还可以删除、添加书本信息。
3 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。
合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
数据库需求分析针对本系统功能分析,总结出如下的需求信息。
1.用户,包括数据项:用户ID、用户名、密码。
2.图书,包括数据项:图书编号、图书名、价格、图书介绍。
用户登录的E-R图如图3-1所示:图3-1 用户实体E-R图图如图3-2所示:图书的E-R数据库逻辑结构设计网上书店数据库中各个表的设计结果如下所示。
图书信息表如图3-3:字段名数据类型长度允许空说明name int4书名bookclass varchar255图书类别author varchar100yes图书作者bookNo varchar100yes书号price tinyint1yes价格表3-3图书信息表shudian用户信息表如图3-4:字段名数据类型长度允许空说明username varchar4no用户名password varchar100no密码表3-4用户信息表user-info4 详细设计系统概述4.1.1用户界面部分1.用户注册2.用户登录4.1.2管理界面部分图书管理:1.新书录入2.书目查询3.信息修改4.旧书删除详细代码及说明4.2.1 用户登录程序设计这是一个以客户为中心的交易平台,只有成为了系统的合法用户才能够使用这个系统,因此需要检验每个用户的合法性,管理用户登录的和正是要完成这样的功能。
1.<%@ page language="java" import=".*" pageEncoding="UTF-8"%><%@ page import=".*" %><%String path = ();String basePath = ()+":quals(Password))result="密码错误";elseresult="登陆成功";();();();return result;}%><%String UserNm=("username");String UserPasswd=("userPasswd");String strCheckLogin=CheckLogin(UserNm,UserPasswd);if("登陆成功")){("UserNm",UserNm);("UserPasswd",UserPasswd);("");}%><!DOCTYPE HTML PUBLIC "-3C">--></head><body><center><font size=5 color=blue><b>用户登录</b></font><hr><form action="" method="post" name="frmLogin">用户名称:<input name="username"><p></p>用户密码:<input name="userPasswd" type=password><p></p><input type="Submit" value="登录" onclick=""></form></center></body></html>4.2.2 书店管理程序设计管理员对书店的管理操作,包括:新书录入、书目查询、信息修改、旧书删除。
新书录入包括和page contentType="text/html;charset=GB2312" import=".*"%><%@ page import=".*" %><%String path = ();String basePath = ()+":3C"%><%@ page import=".*"%><%String path = ();String basePath = ()+":3C"%><%@ page import=".*"%>String path = ();String basePath = ()+":3C" pageEncoding="utf-8"%><%@ page import =".*"%><%String path = ();String basePath = ()+":3C" pageEncoding="utf-8"%><%@ page import =".*"%><%String path = ();String basePath = ()+":3C " %><%@ page import=".* "%><%String path = ();String basePath = ()+":3Cdel" pageEncoding="utf-8"%><%String path = ();String basePath = ()+":3Cdeldeldel" %><HTML><BODY ><%!boolean query(String name)throws Exception{("");String url="jdbc:;DatabaseName=bookstore";String username="sa";String password="123456";Connection conn = (url,username,password);String sql="select * from shudian where name like "+"'"+name+"%"+"'";Statement stmt = ();ResultSet rs=(sql);int nam=0;while()) nam++ ;();if(nam>0)return true;elsereturn false ;}%><%!String del(String name)throws Exception{if(query(name)){try {("");String url="jdbc:;DatabaseName=bookstore";String username="sa";String password="123456";Connection conn = (url,username,password);Statement sql=();quals("删除成功"))("del", "删除成功");elseif(del(name).equals("删除失败"))("del","删除失败");else("del","没有这个学号");("");%></BODY></HTML>5 系统测试登录界面书店管理界面新书录入界面书目查询界面信息修改界面旧书删除界面6 总结利用这次课程设计学会了JSP和SQLServer在WEB应用的一些基本知识,并通过网上书店的程序对JSP的运用进行了深化,JSP与SQLServer结合的模式,在电子商务上应用十分灵活,不过要真正掌握好它们却并不是一件容易的事情,在实际应用的WEB开发中,还有很多关于安全方面的问题需要考虑。