javaEE课程设计报告

合集下载

javaee课程设计报告书

javaee课程设计报告书

软件学院课程设计报告书课程名称 Java EE 与中间件课程设计设计题目社团管理系统专业班级软件12-5班学号 1220010518 姓名王义武指导教师常戬2015 年 1 月目录1 设计时间 (3)2 设计目的 (3)3 设计任务 (3)4 设计容 (3)4.1 需求分析 (3)4.1.1 总体目标 (3)4.1.2具体目标 (4)4.1.3 系统数据建模 (4)4.1.4 系统功能建模 (4)4.1.5 数据字典 (5)4.2 总体设计 (6)4.3详细设计 (9)4.3.1模块详细设计 (9)4.3.2流程设计 (10)4.4运行与测试 (11)5 总结与展望 (14)附录 (15)参考文献 (29)成绩评定 (29)图4.2.2 数据库表users2)shetuan表表二社团表列名数据类型长度允许空文字描述 sid int 5 社团编号 sname varchar 20 Y 社团名称type varchar 20 Y 社团性质图4.2.3 数据库表shetuan3)activity表表三 activity表列名数据类型长度允许空文字描述 aid int 5 活动编号 aname varchar 20 Y 活动名称score int 10 Y 获得分数sname varchar 20 Y 参与社团place varchar 20 Y 举办地点time date 0 Y 活动时间图4.2.4 是数据库表activity4.3详细设计4.3.1模块详细设计本系统具有以下几个功能模块:用户登录模块、查看信息模块、添加社团和活动信息模块、删除社团信息模块。

1)用户登录模块流程图:图4.3.1.1 系统程序流程图N开始输入用户名和密码判断用户名和密码选择操作功能 结束Y1)登陆测试图4.4.1 登陆界面图4.4.2 管理员登陆成功界面图4.4.3 普通用户登录界面2)操作测试图4.4.4 查看用户信息图4.4.5 查看活动信息图4.4.6 查看社团信息图4.4.7 添加社团图4.4.8 删除社团图4.4.9 添加活动5 总结与展望通过本次的程序设计本次的课程设计让我对,对struts与hibernate框架的操作使用也进一步熟练,了解了项目开发的相关步骤,但也有问题如对数据的操作问题,通过muyclpse自动生成dao 包,相关配置文件的配置还不熟练,最大的问题还是类间的调用不清楚和明确。

JavaEE课程设计报告-基于Java EE身体健康管理平台

JavaEE课程设计报告-基于Java EE身体健康管理平台

《Java EE企业级开发》课程报告设计题目:基于Java EE身体健康管理平台专业:物联网工程指导教师:***学号:**********名:***成绩:评语:计算机与数据科学学院2020 年6月10 日目录1 开发介绍 (1)1.1 目的 (1)1.2 系统设计的基本要求 (2)1.3 开发工具介绍 (2)1.3.1 My Eclipse 介绍 (2)1.3.2 Oracle 介绍 (3)2 系统分析 (4)2.1系统体系结构 (4)2.1.1 设计原则 (4)2.1.2 运行架构 (4)2.2网站功能结构 (5)3 详细设计 (6)3.1 系统流程图 (6)3.2 前台功能设计 (6)3.2.1 前台主页面设计 (6)3.2.2 教师饮食管理功能设计 (7)3.2.3 教师健康日志功能设计 (8)3.2.4 教师体检管理功能设计 (9)3.2.5 疾病预测评估功能设计 (10)3.2.6 注册功能设计 (11)3.3 后台功能设计 (12)3.3.1 管理员登录功能 (12)3.3.2 管理管理员功能 (12)3.3.3 管理员管理体检结果 (13)3.3.4 管理员管理健康新闻 (14)3.3.5 管理员管理教师功能 (15)4 系统测试 (17)4.1 编写测试用例 (17)4.2 单元测试 (17)4.3 系统和集成测试 (18)5 结论 (19)摘要现代社会,随着网络技术的不断发展,网站的开发与运用变得更加广泛。

这次课程设计报告采用java语言SSH框架(Spring,Struts,Hibernate)设计并实现了面向特定群体的健康管理平台。

该网站主要有教师饮食管理、教师健康日志、教师体检管理、疾病预测评估等功能模块。

通过该网站,教师可以更好的关注自己的体检状况以及最近的身体状况,根据自身情况调整饮食,睡眠等生活习惯,并且可以及时预测高血压以及糖尿病的患病可能性大小,以便采取有效地预防措施。

javaee课程设计报告

javaee课程设计报告

javaee课程设计报告软件学院课程名称 JavaEE 与中间件设计题目社团管理系统专业班级软件12-5班学号 1220010526 姓名赵立刚指导教师常戬2015年 1 月目录1 设计时间 (1)2 设计目的 (1)3 设计任务 (1)3.1开发平台 (1)3.2设计题目 (1)4 设计内容 (2)4.1 需求分析 (2)4.2 总体设计 (2)4.2.1数据库中表的设计 ..................................................................... . (2)4.2.2项目的结构设计的设计 ..................................................................... (3)4.3 详细设计 (4)4.4 测试与分析 (17)4.4.1 测试 ..................................................................... .. (17)4.4.2 分析 ..................................................................... .. (20)4.5 附录 (21)5 总结与展望 (40)参考文献 (41)成绩评定 (42)1 设计时间2015年1月19日-2015年1月23日2 设计目的Java EE 与中间件课程设计是对所学 Java EE 与中间件课程的小结,是提高学生对所学知识综合应用能力的一种方式,是集中实践性环节之一。

要求同学们对课程中所学习到的知识综合运用,开发有一定规模的 Java Web 程序。

利用所学Java Web 程序设计知识,开发设计一套基于 Java EE 平台的小型管理系统,掌握Struts2、Spring 及 Hibernate 三大框架的配置和使用,巩固数据库基本操作,培养学生分析问题、解决实际问题能力。

JavaEE应用技术课程设计报告

JavaEE应用技术课程设计报告

大庆师范学院《Java EE应用技术》课程设计报告题目:登录系统小组成员: ;;;;;;;;;;;;;;;;;;3专业:计算机科学与信息技术班级:计算机科学与技术一班指导老师: [[[[2016年 12月 28 日一、任务描述SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。

因此希望通过本次实验充分了解SHH框架集成应用的设计理念和具体步骤;1. 熟练掌握Struts/Spring/Hibernate框架的使用2. 熟练掌握数据库的创建以及JDBC的应用3. 掌握SSH框架的集成和相关配置文件的装配二、功能需求说明本设计是图书馆管理系统的前端,可实现在数据库添加数据进行对用户的增添和对该系统的登录。

三、总体设计(一)总体功能描述在了解Java语言的基础上了解并掌握J2EE的构架及相关技术,重点掌握核心技术中最基本的Servlet、JSP、Javabean、JDBC,初步具有基于J2EE平台的软件开发能力、设计并实现小型应用系统。

(二)系统功能结构图四、数据库设计login.jsp 登录界面main.jsp增加信息删除信息查询信息create database book;use book;set names gbk;create table user_info(id int primary key auto_increment,name varchar(20),password varchar(20),mail varchar(20),sex varchar(20),address varchar(20),tel varchar(20))jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/bookername=rootjdbc.password=123456五、系统详细设计与实现(一)模块一: login.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://w /TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><link rel="stylesheet" type="text/css"href="jquery-easyui-1.5/themes/default/easyui.css"><link rel="stylesheet" type="text/css"href="jquery-easyui-1.5/themes/icon.css"><script type="text/javascript" src="jquery-easyui-1.5/jquery.min.js"></script ><script type="text/javascript"src="jquery-easyui-1.5/jquery.easyui.min.js"></script></head><body><script type="text/javascript">$(function() {$("#submit").click(function() {var username = $("#username").val();var password = $("#password").val();alert(username+password);$.post('userAction_login', {'ername' : username,'user.password' : password}, function(data) {if (data) {alert('登陆成功');window.location = 'main.jsp';} else {alert('登录失败');window.location = 'login.jsp';$("#username").val();$("#password").val();}})});$("#register").click(function() {var username = $("#username").val(); var password = $("#password").val(); alert(username+password);$.post('userAction_register', {'ername' : username,'user.password' : password}, function(data) {if (data) {alert('注册成功');window.location = 'main.jsp';} else {alert('注册失败');window.location = 'login.jsp'; $("#username").val();$("#password").val();}})});})</script><br>用户名<br><input type="text" id="username"><br><br> 密码<br><input type="text" id="password" > <br><br><input type="button" id="submit" value="登录"><input type="button" id="register" value="注册"></body></html>运行截图:(二)模块二:main.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title><link rel="stylesheet" type="text/css"href="jquery-easyui-1.5/themes/default/easyui.css"><link rel="stylesheet" type="text/css"href="jquery-easyui-1.5/themes/icon.css"><script type="text/javascript" src="jquery-easyui-1.5/jquery.min.js"></script> <script type="text/javascript"src="jquery-easyui-1.5/jquery.easyui.min.js"></script></head><body><script type="text/javascript">$(function() {$('#dg').datagrid({url : 'studentAction_getAllStudent', //urlsingleSelect : true,columns : [ [ {field : 'no',title : '学号',width : 100,//hidden : true}, {field : 'name',title : '姓名',width : 100}, {field : 'age',title : '年龄',width : 100,},{field : 'address',title : '地址',width : 100,} ] ],toolbar : [ {iconCls : 'icon-add',handler : function() {$('#dd').dialog({title: 'addStudent',width: 400,height: 200,closed: false,cache: false,href: 'add.html',modal: true,buttons:[{text:'Save',handler:function(){var name = $("#name").val();var age = $("#age").val();var address = $("#address").val();$.post('studentAction_add', {"" : name,"student.age" : age,"student.address" : address}, function(data) {if (data == 1) {alert('添加成功!');$('#dg').datagrid('reload');$('#dd').dialog('close');} else {alert('添加失败!');}})}},{text:'Close',handler:function(){$('#dd').dialog('close');} }]});}}, '-', {iconCls : 'icon-remove', //实现删除handler : function() {var row = $('#dg').datagrid('getSelected'); //选中的行if (row == null) {alert('请选中要删除的行!');} else {var no = row.no; //获取选中行的学号//alert(no);$.post('studentAction_delete', {"no" : no,}, function(data) {if (data) {$('#dg').datagrid('reload');alert('删除成功!');} else {alert('删除失败!');}})}}}, '-', {iconCls : 'icon-help',handler : function() {$('#dd').dialog({title : 'My Dialog',width : 400,height : 200,closed : false,cache : false,href : 'help.html',modal : true,buttons : [ {text : 'Close',handler : function() {$('#dd').dialog('close');}} ]});}}],onDblClickRow : function(rowIndex, rowData) {//alert(rowData);//alert();//console.log(rowData);$('#dg').datagrid('reload');},onDblClickCell : function(rowIndex, field, value) {//alert(value + field + rowIndex);/* -------------------- 获取学号 -----------------------*/var rows = $('#dg').datagrid('getRows'); // 获取rows 每一行的对象var row = rows[rowIndex]; //获取选中行的对象var no = row.no; //获取学号//alert(no);if(field == 'no'){alert('您不能修改学号!');}else{$('#dd').dialog({title: 'CellEdit',width: 400,height: 200,closed: false,cache: false,href: 'edit.html',modal: true,buttons:[{text:'Update',handler:function(){var ms = $("#ms").val();alert(field+ms);$.post('studentAction_update', {"field" : field,"no" : no,"ms" : ms}, function(data) {if (data == 1) {alert('修改成功!');$('#dg').datagrid('reload');$('#dd').dialog('close');} else {alert('修改失败!');}})//alert(no+field+ms);}}]});}},});})</script><div id="dg"></div><div id="dd"></div><div id="win"></div></body></html>运行截图:六、学习总结(一)小组分工说明jy 负责struts2技术 jdbc数据库技术yj负责ssh框架整合技术编写yj 负责spring技术 hibernate技术(二)涉及知识点struts2技术spring技术hibernate技术ssh技术整合jdbc数据库技术(三)遇到的主要难点及解决方法遇到的问题:1.地址栏中:http://localhost:8088/sshtest/user.do?act=register报错:HTTP Status 404 - Servlet action is not available原因:struts-config.xml配置文件中的请求处理器类出错了(找不到类路径)<controllerprocessorClass="com.xj.requestprocessor.MyProcessor"></controller>解决方法:<controllerprocessorClass="org.springframework.web.struts.DelegatingRequestProcessor"></controller>2.报错 :javax.servlet.ServletException: Cannot find ActionMappings orActionFormBeans collection原因: 工程里面的struts包.有损坏或某些struts包没有存在.解决办法:重新创建一个工程,并且导入struts,然后将导入的struts包copy到目前的工厂的WEB-INf/lib目录,重新部署,重新启动服务,就ok了3.报错:ng.NoSuchMethodErrororg.objectweb.asm.ClassVisitor.visit(IILjavalangString;LjavalangString;[LjavalangString;LjavalangString;)V.txt原因: 由于某些Spring和Hibernate的版本问题,其中导入包的时候,某些jar包发生了冲突.解决办法: 删除工程下面WEB-INF/lib/asm-2.2.3.jar,然后在Eclipse中刷新工程,再重新部署工程,然后重启 Tomcat.struts2,spring,hibernate是三个相互独立的框架。

《JavaEE编程课程设计》期末项目报告书-旅游信息管理系统

《JavaEE编程课程设计》期末项目报告书-旅游信息管理系统

九江学院信息科学与技术学院《JavaEE编程课程设计》项目报告书题目:旅游信息管理系统专业:软件技术班级:姓名:学号:30设计时间:2016年12月13日~ 2016年12月21日目录《JavaEE编程课程设计》项目报告书 (1)1.项目计划 (3)2.系统需求分析与功能设计 (3)3. 总体设计 (12)4. 数据库设计 (17)5. 程序模块设计 (21)6. 技术难点与分析 (25)7. 系统测试 (26)(3)界面所使用的词汇、图示、选取方式等要保持前后一致性。

旅游信息管理系统界面举例:3.3-图1 主页面3.3-图2 添加用户界面3.3-图3 景点详情界面5. 程序模块设计(设计并编写输入\输出、查询\统计、数据维护等功能模块的应用程序, 每个人设计2个以上的模块,一个组完成一个完整的系统,数据库访问,存储过程调用等作重点阐述)5.1管理员相关功能的实现管理员用户的功能包括用户管理、景点管理、旅游攻略管理和游记画册管理等模块,并且对每一个模块所包含的表的都有最高权限的查询、查看、编辑、删除和添加操作。

当管理员对某个模块的表进行添加时,如果相关信息为空的话系统会给出错误提示,否则添加信息成功。

当管理员对某个模块包含的表进行修改时,如果为空,系统给出错误提示,否则新的信息取代原有信息。

另外,管理员用户登录,在系统界面中会显示系统所有用户的编号、名称、密码和角色类型,可以对用户进行查询、增加和删除等操作。

这是普通用户类型和旅行社用户类型没有的功能。

下面5.1-图1和5.1-图2是管理员登录后的用户管理模块的功能界面和景点管理模块的功能界面:5.1-图1 用户管理模块的功能界面5.1-图2 景点管理模块的功能界面5.2普通用户相关功能的实现普通用户的功能包括景点查看、旅游攻略查看和游记画册管理等模块,当普通用户进入景点介绍模块、旅游攻略模块和游记画册模块时,可以在查询框输入要查询的信息的关键字进行目标查询,可以在目标信息后的查看进行查看详情,对景点信息、旅游攻略信息以及其他用户发布的游记等信息内容进行了解。

javaEE课设报告

javaEE课设报告

JavaEE课程设计报告目录摘要 (3)前言 (3)一、课题总体介绍 (4)1.1 课设题目 (4)1.2 课题开发的目的 (4)二、需求分析和概要设计 (5)1.项目介绍 (5)1.1编写目 (5)1.2项目背景 (5)2.任务概述 (5)2.1目标 (5)2.2运行环境 (5)2.3需求概述 (5)3.总体设计 (6)3.1处理流程 (6)3.2总体结构和模块外部设计 (6)3.3功能分配 (6)4.接口设计 (7)4.1外部接口 (7)4.2内部接口 (7)5.数据结构设计 (8)5.1逻辑结构设计 (8)5.2物理结构设计 (8)5.3数据结构与程序的关系 (8)6.运行设计 (8)6.1运行模块的组合 (8)6.2运行控制 (9)6.3运行时间 (9)7.出错处理设计 (9)7.1出错输出信息 (9)7.2出错处理对策 (9)总体设计 (9)2.3..1处理流程 (9)2.3.2总体结构和模块外部设计 (11)三、详细设计 (12)3.1功能分配 (12)3.2外部接口 (12)3.3内部接口 (12)四、数据结构设计 (13)4.1逻辑结构设计 (13)4.2总体结构和模块外部设计 (14)4.3功能分配 (14)4.4接口设计 (15)4.4.1外部接口 (15)4.4.2内部接口 (15)5.数据结构设计 (16)5.1逻辑结构设计 (16)5.2物理结构设计 (16)5.3数据结构与程序的关系 (16)六、课程设计总结 (16)七、参考文献 (17)八、附件 (17)部分重要代码: (17)6.1 采集数据GatherImpl类: (17)6.2 入库模块DBStoreImpl (23)、摘要JAVAEE开发技术是Java开发中综合性最强,Java编程应用最为广泛的一项,作为企业级的开发框架,JavaEE除了有SDK基本的包支持,还有各种基于服务器,数据库等开发的工具包,在JavaEE开发中,这些工具包很大程度上简化了开发复杂项目的开发流程。

javaee课设报告

javaee课设报告

javaee课设报告
模板
一、引言
随着互联网的快速发展,Web 应用程序的需求也在不断增长,而Java EE(Java Platform, Enterprise Edition)是企业级应用程序的开发的技术,是建立在 JAVA 技术基础上的规范,是企业级应用开发的完整解决方案。

本文以XXX组毕业设计为例,分析XXX组在Java EE开发中的技术实现,对该组设计的毕业设计应用程序进行研究、分析、总结,提出如何更好的实现网络应用程序。

二、研究内容
XXX组的毕业设计应用程序XX(系统名称)依托Java EE技术,采用了前端、后端分离技术,使用SpringMVC作为前端框架,Mybatis作为持久层框架,具体技术实现(具体技术实现内容)。

(1)XX系统前端框架实现:
XXX组主要采用SpringMVC框架实现系统前端,使用SpringMVC可以减少控制器和服务层、视图层的耦合,具体技术实现(具体实现技术内容),使得系统的结构更加清晰,维护更加容易。

(2)XX系统持久层实现:
XXX组主要采用Mybatis框架实现系统持久层。

Mybatis框架的主要作用是映射Java类和数据库表、字段的关系,在持久层使用Mybatis可以提升开发效率,更快的进行数据库查询、更新等操作,具体技术实现(具体实现技术内容)。

(3)XX系统测试:
XXX组在实现完毕。

javaEE课程设计报告

javaEE课程设计报告

课程设计课程名称:JAVAEE/.NET课程设计设计题目:校园超市商品信息管理系统学院:信息工程与自动化学院专业:计算机科学与技术年级:2011年级学生:指导教师:日期:2014-6-30——2014-7-11教务处制课程设计任务书信息工程与自动化学院计算机科学与技术专业2011 年级学生:建兴课程设计题目:校园超市商品信息管理系统课程设计主要容:本次课程设计自主完成一个系统,题目学生自定。

我设计的是一个校园超市商品信息管理系统,是一个小型系统,适用于一些小型超市,对库存商品,售出商品,日常业务进行管理。

主要采用jsp+servlet+数据库配合的方式工作。

Jsp负责页面显示,servlet处理逻辑业务,后台数据库采用mysql数据库。

用到连接数据库,对数据库的操作,servlet跳转,实现部件之间的合作,前台(jsp)获取并显示后台(数据库)数据,或者后台(数据库)获取并存储前台数据。

设计指导教师(签字):教学基层组织负责人(签字):年月日摘要本次课程设计题目有学生自定,学生可以受日常学习生活启发来设计一个系统。

这次课程设计主要要求学生掌握javaEE网络编程,老师要求学生自主完成规模不限的系统,自定题目,自主设计。

对于这次课程设计,我把它当做一次实践的机会,设计过程中希望通过跟同学讨论,提问老师等方式使自己得到提升,毕竟平时自己一个人琢磨很难解决一些问题,也很难提高技巧。

之前对于MVC编程方法的逻辑不是那么清晰,很难衔接好各个层之间的接口。

如果时间足够,希望这一次通过各种方法,在采用MVC的编程思想的前提下,自己完成一个完整的系统。

这一次我自主设计并完成了校园超市商品信息管理系统,旨在复习javaEE/.net的知识,并从这一次实践中获得技术的提升。

熟练编程中的一些技巧和编程中常见的错误每个校园都会有好几个小型的超市,虽然说是小型,但也提供了上万学生日常所需的任何商品,在我印象中在校园里的超市能找到你所需要的一切。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计课程名称: JAVAEE/.NET课程设计设计题目:校园超市商品信息管理系统学院:信息工程与自动化学院专业:计算机科学与技术年级: 2011年级学生姓名:指导教师:日期: 2014-6-30——2014-7-11 教务处制课程设计任务书信息工程与自动化学院计算机科学与技术专业 2011 年级学生姓名:张建兴课程设计题目:校园超市商品信息管理系统课程设计主要内容:本次课程设计自主完成一个系统,题目学生自定。

我设计的是一个校园超市商品信息管理系统,是一个小型系统,适用于一些小型超市,对库存商品,售出商品,日常业务进行管理。

主要采用jsp+servlet+数据库配合的方式工作。

Jsp 负责页面显示,servlet处理逻辑业务,后台数据库采用mysql数据库。

用到连接数据库,对数据库的操作,servlet跳转,实现部件之间的合作,前台(jsp)获取并显示后台(数据库)数据,或者后台(数据库)获取并存储前台数据。

设计指导教师(签字):教学基层组织负责人(签字):年月日摘要本次课程设计题目有学生自定,学生可以受日常学习生活启发来设计一个系统。

这次课程设计主要要求学生掌握javaEE网络编程,老师要求学生自主完成规模不限的系统,自定题目,自主设计。

对于这次课程设计,我把它当做一次实践的机会,设计过程中希望通过跟同学讨论,提问老师等方式使自己得到提升,毕竟平时自己一个人琢磨很难解决一些问题,也很难提高技巧。

之前对于MVC 编程方法的逻辑不是那么清晰,很难衔接好各个层之间的接口。

如果时间足够,希望这一次通过各种方法,在采用MVC的编程思想的前提下,自己完成一个完整的系统。

这一次我自主设计并完成了校园超市商品信息管理系统,旨在复习javaEE/.net的知识,并从这一次实践中获得技术的提升。

熟练编程中的一些技巧和编程中常见的错误每个校园内都会有好几个小型的超市,虽然说是小型,但也提供了上万学生日常所需的任何商品,在我印象中在校园里的超市能找到你所需要的一切。

超市的商品肯定很多,零零碎碎很繁杂,难管理,所以一个管理超市商品信息和业务的系统根由必要。

可以减轻店员的工作量,提高效率。

超市商品信息管理系统是一个规划管理超市商品的价格,库存,利润和日常的一些业务的一个小型系统,适用于一些小型超市。

它包括三个主要功能:库存商品管理,售出商品管理和日常业务管理。

在这三大功能下又各自包括对商品的添加,查询和删除等功能。

是一个小型,便捷地系统。

关键字:超市,管理商品,业务,功能目录摘要 (3)第一章系统概述 (1)1.1 课程设计背景 (1)1.2 开发工具及相关技术 (1)1.2.1 Tomcat介绍 (1)1.2.2 MySQL介绍 (1)1.2.3 Eclipse简介 (2)1.3 可行性分析 (2)1.3.1 技术可行性分析 (2)1.3.2 经济可行性分析 (2)1.3.3 操作可行性分析 (3)第二章需求分析 (3)2.1业务需求概述 (3)第三章系统设计 (4)3.1总体结构设计 (4)3.2系统数据库设计 (4)第四章编码实现 (5)第五章系统实现及操作说明 (20)第六章总结体会 (26)致谢 (27)参考文献 (27)第一章系统概述1.1课程设计背景我国超市形成于20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。

随着超市高速的发展,其经营管理也变得愈加复杂,早期的超市商品管理形式不能满足现有销售也的发展,这样就迫切地需要引入新的商品管理技术。

超市形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,如:不能有效地管理每种商品,不宜进行商品调价,盘点效率低等,而且在超市日常管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。

而且日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。

因此,在选题过程中,我们小组选择了超市商品管理系统设计题目,依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。

1.2开发工具及相关技术1.2.1 Tomcat介绍Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。

由于Tomcat本身也内含了一个HTTP 服务器,它也可以被视作一个单独的Web服务器。

1.2.2 MySQL介绍MySQL是一个开放源码的关系数据库管理系统,是一个真正的多用户、多线程SQL数据库服务器。

MySQL由于性能高、成本低、可靠性好、小巧、功能齐全、查询迅捷而且是免费的等优点,已经成为最流行的开源数据库,被广泛地应用在中小型网站中。

1.2.3 Eclipse简介Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。

Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。

由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

这种平等和一致性并不仅限于Java 开发工具。

尽管 Eclipse 是使用Java语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如C/C++、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。

Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。

基于Eclipse 的应用程序的一个突出例子是 IBM Rational Software Architect,它构成了 IBM Java 开发工具系列的基础。

1.3可行性分析1.3.1 技术可行性分析基于相对成熟的前台开发工具eclipse,运用Flex开发前台界面,其功能完全能够满足本系统的实现。

使用java语言进行后台编码,运用面向对象的思想和设计模式进行开发,后台使用简单快捷的mysql数据库,运用tomcat来部署整个程序。

这些技术在当今时代都趋于成熟,并且运用广泛,所以,本系统的实现在技术上是可行的。

1.3.2 经济可行性分析由于开发设备与人员都已聚齐,开发所用的成本主要是人力资源的支出。

并且系统所发挥的作用是科学地管理数据,大大提高了管理效率,降低了工作人员的负担,节省了管理时间,所以,本系统的实现在经济方面是可行的。

1.3.3 操作可行性分析本系统功能模块划分明确,有较强可操作性;并具有规范化的工作界面,能够让用户在很短的时间内掌握使用的方法。

进入系统后,系统的界面人性化,规范化,而且很美观,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。

而整个超市管理系统采用最友好的交互界面,简介明了,不需要太多的数据库知识。

第二章需求分析2.1业务需求概述1、售货业务售货管理是企业生产经营活动中及其重要的一环,它关系到产品质量能否得到保证,生产是否能够顺利进行,采购成本能否得到有效控制等问题。

企业现代管理理念中对企业的进货管理提出新的要求;企业进货时对供货商的选择更见慎重,双方不再是讨价还价的买卖关系,而是一种相互依存的合作伙伴关系,并且还需要认识到企业产品质量要从采购抓起,这就关系到供方的供货、服务质量。

下面是进货业务程序的主要内容:供货商的情况调查:在实施采购之前,超市首先就要对市场上各大商品供货商进行详细的调查,了解公司的具体情况,评定企业的信誉级别和公司的市场口碑,做到准确无误,采购顺利。

实施进货计划:根据供货商档案及评审结果,选定供货商;生成订货单给选定的供货商;双方就价格、数量、质量等方面洽谈磋商,直至签订合同;跟踪合同执行,安排供货进度和货物运输,做好验收入库工作。

2、库存业务:库存管理是指在生产经营中为销售和耗用而存储的各种资产。

企业存货不当都会增加不必要的费用:存货过多将导致物资的积压、存储费用增加、流动资金周转不利,并且过量的库存会掩盖管理不善的问题。

存货不足则影响企业的正常销售活动。

库存管理的目标是需求最佳存货数量,使库存的成本总额最小化。

其主要业务如下:产品入库、出库、盘库等日常处理。

科学合理地确定某库存物资的库存控制参数。

如:最佳订货批量、最大库存量、最佳缺货量、最佳订购周期等,进行严格的库存控制工作。

汇总统计各类库存数据,反应和监督储备资金占用及采购资金使用情况。

3、销售业务销售对一个企业的生存和发展是至关重要的,它不再是传统意义上的“卖东西”,它对外关系到企业产品、服务和企业形象等多方面因素,对内涉及到销售、库存、财务等信息。

此外信息化的高速发展为企业的销售工作提出了新的挑战,封闭意味着落后,超市要抓住时机,根据市场所需,引入现代化的销售管理模式,实施企业的信息化、智能化销售管理,才能使超市在激烈的市场竞争中立于不败之地第三章系统设计3.1总体结构设计系统流程图图3-1系统流程图3.2系统数据库设计属性名属性类型备注产品名称Text 说明产品名称产品价格Float 说明产品价格库存数量Int 库存产品数量商品编号Int 商品代号表3-1库存商品数据表图3-2数据库中的库存商品表属性名属性类型备注商品名称Text 说明商品名称商品编号Int 商品代号售出数量Int 已销售商品数量售出获利Float 售出所有商品数量的利润表3-2售出商品数据表属性名属性类型备注商品编号Int 售出商品的编号商品名称Text 售出商品的名称商品数量Int 售出商品的数量顾客姓名Text 购买顾客姓名顾客地址Text 购买商品顾客的地址图3-4数据库中业务表截图第四章编码实现以下代码只包含本系统部分关键代码,完整代码另附:(1)数据库连接类,内含连接数据库的方法,还有各种对数据库的操作的方法:Sqlbean:package ConnectionFactory;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import shopValue.inShopBean;import shopValue.outShopBean;import shopValue.salesBean;public class sqlbean {static Connection con;static PreparedStatement pre = null;static ResultSet rs;public sqlbean() {System.out.println("kkk");try {Class.forName("com.mysql.jdbc.Driver");con = DriverManager.getConnection("jdbc:mysql://localhost:3306/shop", "root", "636692");System.out.println(con);} catch (Exception e1) {e1.printStackTrace();}}public inShopBean searchStore_table(String sql, int id) {inShopBean isb = new inShopBean();try {new sqlbean();System.out.println(con + "KKKK");pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, id);rs = pre.executeQuery();while (rs.next()) {isb.setId(rs.getInt("id"));isb.setName(rs.getString("name"));isb.setPrice(rs.getFloat("price"));isb.setNumber(rs.getInt("number"));}} catch (SQLException e) {e.printStackTrace();}return isb;}public int insertIntoStore_table(String sql, inShopBean isb) { int count = 0;try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, isb.getId());pre.setString(2, isb.getName());pre.setFloat(3, isb.getPrice());pre.setInt(4, isb.getNumber());count=pre.executeUpdate();} catch (Exception e) {e.printStackTrace();}return count;}public int getDelete(String sql, int id) {int count = 0;try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, id);count = pre.executeUpdate();} catch (SQLException e) {e.printStackTrace();} finally {try {pre.close();con.close();} catch (SQLException e) {e.printStackTrace();}}return count;}public int getUpdateStore_table(String sql, inShopBean isb) { int count = 0;try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, isb.getId());pre.setString(2, isb.getName());pre.setFloat(3, isb.getPrice());pre.setInt(4, isb.getNumber());count = pre.executeUpdate();} catch (SQLException e) {e.printStackTrace();} finally {try {pre.close();con.close();} catch (SQLException e) {e.printStackTrace();}}return count;}public outShopBean searchSell_table(String sql, int id) { outShopBean osb = new outShopBean();try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, id);rs = pre.executeQuery();while (rs.next()) {osb.setId(rs.getInt("id"));osb.setName(rs.getString("name"));osb.setNumber(rs.getInt("number"));osb.setLirun(rs.getFloat("lirun"));}} catch (SQLException e) {e.printStackTrace();}return osb;}public salesBean searchBuseness_table(String sql, int id) { salesBean sb = new salesBean();try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);pre.setInt(1, id);rs = pre.executeQuery();while (rs.next()) {sb.setId(rs.getInt("id"));sb.setGoodsname(rs.getString("goodsname"));sb.setNumber(rs.getInt("number"));sb.setCsmname(rs.getString("csmname"));sb.setCsmaddr(rs.getString("csmaddr"));}} catch (SQLException e) {e.printStackTrace();}return sb;}public List<inShopBean> getStoreList(String sql) { List<inShopBean> list = new ArrayList<inShopBean>();try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);rs = pre.executeQuery();while (rs.next()) {inShopBean isb = new inShopBean();isb.setId(rs.getInt("id"));isb.setName(rs.getString("name"));isb.setPrice(rs.getFloat("price"));isb.setNumber(rs.getInt("number"));list.add(isb);}} catch (SQLException e) {e.printStackTrace();} finally {try {pre.close();con.close();} catch (SQLException e) {e.printStackTrace();}}return list;}public List<outShopBean> getsellList(String sql) {List<outShopBean> list = new ArrayList<outShopBean>();try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);rs = pre.executeQuery();while (rs.next()) {outShopBean osb = new outShopBean();osb.setId(rs.getInt("id"));osb.setName(rs.getString("name"));osb.setNumber(rs.getInt("number"));osb.setLirun(rs.getFloat("lirun"));list.add(osb);}} catch (SQLException e) {e.printStackTrace();} finally {try {pre.close();con.close();} catch (SQLException e) {e.printStackTrace();}}return list;}public List<salesBean> getBusenessList(String sql) { List<salesBean> list = new ArrayList<salesBean>();try {new sqlbean();pre = (PreparedStatement) con.prepareStatement(sql);rs = pre.executeQuery();while (rs.next()) {salesBean sb = new salesBean();sb.setId(rs.getInt("id"));sb.setGoodsname(rs.getString("goodsname"));sb.setNumber(rs.getInt("number"));sb.setCsmname(rs.getString("csmname"));sb.setCsmaddr(rs.getString("csmaddr"));list.add(sb);}} catch (SQLException e) {e.printStackTrace();} finally {try {pre.close();con.close();} catch (SQLException e) {e.printStackTrace();}}return list;}}(2)三种商品的值类,内含set和get方法,对数据进行设置和获取操作:Inshopbean:package shopValue;public class inShopBean {private String name;private float price;private int number;private int id;public inShopBean(){}public inShopBean(String name,float price,int number,int id){ =name;this.price=price;this.number=number;this.id=id;}public String getName(){return name;}public void setName(String name){=name;}public float getPrice(){return price;}public void setPrice(float price){this.price=price;}public int getNumber(){return number;}public void setNumber(int number){this.number=number;}public int getId(){return id;}public void setId(int id){this.id=id;}}Outshopbean:package shopValue;public class outShopBean {private String name;private float lirun;private int number;private int id;public outShopBean(){}public outShopBean(String name,float lirun,int number,int id){ =name;this.lirun=lirun;this.number=number;this.id=id;}public String getName(){return name;}public void setName(String name){=name;}public float getLirun(){return lirun;}public void setLirun(float lirun){this.lirun=lirun;}public int getNumber(){return number;}public void setNumber(int number){this.number=number;}public int getId(){return id;}public void setId(int id){this.id=id;}}Salesbean:package shopValue;public class salesBean {private String goodsname;private String csmname;private String csmaddr;private int number;private int id;public salesBean(){}public salesBean(String csmname,String goodsname,int number,int id,String csmaddr){this.goodsname=goodsname;this.csmname=csmname;this.csmaddr=csmaddr;this.number=number;this.id=id;}public String getGoodsname(){return goodsname;}public void setGoodsname(String goodsname){this.goodsname=goodsname;}public String getCsmname(){return csmname;}public void setCsmname(String csmname){this.csmname=csmname;}public String getCsmaddr(){return csmaddr;}public void setCsmaddr(String csmaddr){this.csmaddr=csmaddr;}public int getNumber(){return number;}public void setNumber(int number){this.number=number;}public int getId(){return id;}public void setId(int id){this.id=id;}}(3)库存商品查找servlet,完成查找逻辑功能package shopManage;import java.io.IOException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import shopValue.inShopBean;import ConnectionFactory.sqlbean;public class researchStoreGoods extends HttpServlet {private static final long serialVersionUID = 1L;private Connection cn;public researchStoreGoods() {super();}public void init(ServletConfig config) throws ServletException { super.init(config);try {Class.forName("com.mysql.jdbc.Driver");} catch (ClassNotFoundException e1) {e1.printStackTrace();}String url = "jdbc:mysql://localhost:3306/shop";String user = "root";String password = "636692";try {cn = DriverManager.getConnection(url, user, password);} catch (SQLException e) {e.printStackTrace();}}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");String sid=request.getParameter("id");int id=Integer.parseInt(sid);String sql="select * from store where id=?";sqlbean sBean=new sqlbean();inShopBean isb=sBean.searchStore_table(sql, id);request.setAttribute("id", isb.getId());request.setAttribute("name", isb.getName());request.setAttribute("price", isb.getPrice());request.setAttribute("number", isb.getNumber());request.getRequestDispatcher("researchstoregoods.jsp").forward(request, response);}}(4)库存商品添加servlet,完成商品添加逻辑功能package shopManage;import java.io.IOException;import java.sql.Connection;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import shopValue.inShopBean;import ConnectionFactory.sqlbean;public class AddStoreGoods extends HttpServlet {private static final long serialVersionUID = 1L;static Connection cn;public AddStoreGoods() {super();}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");doPost(request, response);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");String sid=request.getParameter("id");int id=Integer.parseInt(sid);String name=request.getParameter("name");String sprice=request.getParameter("price");float price=Float.parseFloat(sprice);String snumber=request.getParameter("number");int number=Integer.parseInt(snumber);inShopBean isb=new inShopBean();isb.setId(id);isb.setName(name);isb.setPrice(price);isb.setNumber(number);String sql="insert into store(id,name,price,number) values (?,?,?,?)";sqlbean sBean=new sqlbean();int count = sBean.insertIntoStore_table(sql, isb);System.out.println("count"+count);if (count >0) {response.sendRedirect("StoreGoodsList");} else {response.sendRedirect("error.jsp");}}}(5)库存商品删除servlet,完成删除逻辑功能package shopManage;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import shopValue.inShopBean;import ConnectionFactory.sqlbean;public class DeleteStoreGoods extends HttpServlet {private static final long serialVersionUID = 1Lpublic DeleteStoreGoods() {super();}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");doPost(request, response);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html");String sId = request.getParameter("id");int id = Integer.parseInt(sId);inShopBean isb=new inShopBean();isb.setId(id);String sql="delete from store where id=?";sqlbean sBean=new sqlbean();int count = sBean.getDelete(sql, id);if (count >=0) {response.sendRedirect("StoreGoodsList");} else {response.sendRedirect("error.jsp");}}}(6)库存商品管理页面jsp,返回商品信息列表,附有相应功能:<%@page language="java"import="java.util.*"pageEncoding="UTF-8"%> <%@page import="shopValue.inShopBean"%><%String path = request.getContextPath();String basePath =request.getScheme()+"://"+request.getServerName()+":"+request.getServ erPort()+path+"/";%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"""><html><head><meta http-equiv="Content-Type"content="text/html;charset=ISO-8859-1"><title>库存商品管理</title></head><body bgcolor="green"><center><font size="8">库存商品列表</font><hr><table><tr><td><font color="yellow"size="6">商品编号</font></td><td><font color="yellow"size="6">商品名称</font></td><td><font color="yellow"size="6">商品价格</font></td><td><font color="yellow"size="6">库存数量</font></td></tr><%List list = (List)request.getAttribute("list");for(java.util.Iterator it =list.iterator();it.hasNext();){inShopBean isb =(shopValue.inShopBean)it.next();%><tr><td><font color="yellow"size="6"><%=isb.getId() %></font></td><td><fontcolor="yellow"size="6"><%=isb.getName() %></font></td><td><fontcolor="yellow"size="6"><%=isb.getPrice() %></font></td><td><fontcolor="yellow"size="6"><%=isb.getNumber() %></font></td><td><a href="addstoregoods.jsp">添加</a><a href="researchStoreGoods?id=<%=isb.getId() %>">查找</a></td></tr><% }%></table></center></body></html>(7)库存商品查询页面jsp,返回单项商品信息:<%@page language="java"import="java.util.*"pageEncoding="UTF-8"%> <%@page import="shopValue.inShopBean"%><%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"""><html><head><meta http-equiv="Content-Type"content="text/html;charset=ISO-8859-1"><title>库存商品查询</title></head><body><center><table><tr><td><font size="6">商品编号</font></td><td><font size="6">商品名称</font></td><td><font size="6">商品价格</font></td><td><font size="6">商品数量</font></td></tr><tr><td><font size="6"><%=request.getAttribute("id")%></font></td><td><font size="6"><%=request.getAttribute("name")%></font></td><td><font size="6"><%=request.getAttribute("price")%></font></td><td><font size="6"><%=request.getAttribute("number")%></font></td><tr><td><a href="DeleteStoreGoods?id=<%=request.getAttribute("id")%>">删除</a><img src="F:\image\nn.jpg"></table></center></body></html>(8)添加库存商品页面jsp:<%@page language="java"import="java.util.*"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"""><html><head><meta http-equiv="Content-Type"content="text/html;charset=ISO-8859-1"><title>添加库存商品</title></head><body><hr><form action="AddStoreGoods"method="post"><table><tr><td>商品编号:</td><td><input type="text"name="id"></td><tr><td>商品名称</td><td><input name="name"></td></tr><tr><td>商品价格</td><td><input type="text"name="price"></td></tr><tr><td>商品数量</td><td><input type="text"name="number"></td></tr><tr><td><center><input type="submit"value="提交"><inputtype="reset"value="重置"></center></td></tr></table></form><a href="StoreGoodsList">查看</a></body></html>注:超市售出商品管理和业务管理相应的业务逻辑代码和jsp页面代码与库存商品管理的代码大同小异,所以略去,整个系统的完整代码打包另附。

相关文档
最新文档