版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
{仓库规范管理}毕业设计仓库管理系统源代码设计说明仓库管理系统StorageManagementSystem曹亚磊(CaoYalei)7前言随着科学技术的不断发展,代的要求,人们必须采取新的手段,于是信息技术进入我们的生活,计算机不再下产生的。本系统正是针对仓库部门的货物信息管理,通过对仓库基本信息﹑出入库信理工作的时效和人员主动性。库管理、报表管理。在本系统中侧重实现仓库的基本信息管理。摘要等模块组成。本系统是在以MySql作为后台数据库,以J2EE为编程语言来开发的。仓库仓库管理计算机化。关键词:仓库;管理系统;数据库AbstractTheadministrativesystemofthewarehouseisdesignedforrealizingthesystematization,standardizationandautomizationofenterprise'sproductsmanagementandimprovingefficiencyofenterprisesmanagement.Itpletelyreplacestheworkingwayofartificialmanagementoriginally,preventsfromvariouskindsofmistakesbecauseofadministrativestaffneglectandthequalityproblemofmanagementandofferespowerfultoolandmanagementwaytopletstorehousemanagementforprompt,accurate,high-efficient.Theadministrativesystemofthewarehouseisamediumandsmall-scaledatabasemanagementsystem,ithasnotonlybeautifulinterface,butalsothehighsecurityandthesimplyoperation,andmeetthedemandforstorehousemanagementbasically.Wholesystemismadeupbybasicinformation,documentinthecenter,inquirestatistics,reportformtype,setuptomaintainandmoduleofhelpingetc.TheWarehouseadministrativesystemisdesignedwithregardingMySqlasthebackstagedatabaseandregardingJ2EEasprogramminglanguage.Theadministrativesystemiseffectual,thehighdataaccuracyduringthecourseofoperating,improvesworkingefficiencyandrealizesputerizationforstorehousemanagementatthesametime.Keyword:TheWarehouse;AdministrativeSystem;TheDatabase目录摘要IABSTRACTII第1章绪论1第2章需求分析22.1仓库管理系统概述22.2系统流程图22.3数据流程图32.4仓库管理系统的角色定义5第3章总体设计63.1总体用例图63.2用例说明63.2.1用户从浏览器登录72.2.2供货商信息查询用例概述82.2.3供货商信息修改用例概述92.2.4供货商信息添加用例概述103.3功能模块图11第4章详细设计144.1ER图144.2数据库设计154.2.1数据库的逻辑设计164.3运行环境20第5章编码215.1登陆的实现215.1.1登陆action215.1.2登陆过滤器225.1.3登陆DAO235.2供货商的实现235.2.1供货商查询Action235.2.2供货商修改Action255.2.2供货商添加Action255.2.3供货商DAO26第6章测试306.1登陆测试方案306.2数据录入测试306.3查询测试306.4测试结论30第7章使用说明317.1系统功能简介317.2运行环境简介317.3系统运行与操作指南327.4操作演示327.5特色介绍35第8章总结36参考文献37致谢38翻译资料原文39翻译资料译文45第1章绪论客户通过互联网实现远程货物管理,可以与企业的ERP系统实现无缝连接。物安全,库管人员要花费大量人力物力和时间来作数据记录统计工作。开发一个可行的仓库管理系统是十分必要的。本系统以MySQL作为后台数据库,以java语言来开发的,不仅实现了仓库管理、入库管理、在库管理、出库管理、报表管理。1第2章需求分析2.1仓库管理系统概述本系统是为物流管理而设计的高效管理系统,系统功能强大,同时操作又比的时间,就能够让他们熟悉本系统。系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能有:●仓库管理各种信息的查询、统计、修改和维护,包括货物、单据查询,货物出入、职员操作统计,各种信息的修改和维护等。●打印报表的生成。●在货物管理中加入最高储备和最低储备字段,对仓库中的产品实现监控和报警。●操作日志的管理。●仓库管2库存数核对货物清单查询库存库存备份理系统的使用帮助。2.2系统流程图图2-2系统流程图2.3数据流程图统中数据的使用。数据流图简称DFDMIS输出的全过程,是设计者和用户交流的很好的工具。仔细分析调查有关仓库管理信息需求的基础上,得到如图4-1所示的本系3统所处理的数据流程。图2-3仓库管理系统数据流程图通过对企业仓库管理的内容和数据流程分析,设计数据项和数据结构如下:单位、最高限量、最低限量、备注等。注等。●入库单信息,包括的数据项有编号、货物编号、经办人编号、入库时间、入库单价、入库数量、供应商编号、仓库编号、定单状况、其它金额、备注等。●出库单信息,包括的数据项有编号、货物编号、经办人编号、出库时间、出库单价、出库数量、客户编号、仓库编号、定单状况、其它金额、备注等。号、盘点数据等。●系统日志信息,包括的数据项有用户名、操作时间、操作内容等。●用户管理信息,包括的数据项有用户名、用户密码、用户权限等。单信息基本类似,这里不再一一例举。2.4仓库管理系统的角色定义有整个系统的最高权限。4仓管部管理人员:负责仓库的出入库管理,可以根据流向单实现出/入库操作。具体权限有:●库存信息管理●库检信息维护●入库单信息维护●出库单信息维护●报表信息管理●进行密码修改、清除表信息等系统设置●客户、供应商、库房等基本信息的查询浏览等仓管部主管:●负责整个山口仓管部门的日常运作和管理工作,主要包括:部门信息维护人员信息管理●审批●报表信息管理●进行密码修改、备份数据库等系统设置5第3章总体设计3.1总体用例图提供什么功能,以及各个功能间的关系。图3-1总体用例图3.2用例说明根据上述用例图,对登陆和人员信息管理模块做了如下用例说明:3.2.1用户从浏览器登录用例概述用例名称用户登陆主题领域用例定义用户登录到系统,获得相应的界面和使用权限角色仓管员或主管业务触发用户准备开始使用系统进行业务处理或系统管理事件前置条件系统中已为该用户建立系统用户,并分配了相应权限结束条件成功条件用户登录系统,并获得相应权限失败条件1)系统中没有该用户;2)用户名、密码错误相关用例输入概述用户名、密码、角色6输出概述与用户权限相应的界面使用性备本用例使用频繁注用例备注主事件流步骤角色/系统描述数据项备注1.角色启动登录程序2.系统显示登录界面;提示输入用户标识和保密字3.角色用户名,密码,角色系统4.系统保密字不正确转到A1。界面、菜单5.分支事件流编主事件流角色条件描述数据项转去主备注号步骤号/系事件流统步骤号A14系统返回登录失登录失败信2名、密码错误,败信息息用户名和密码与角色不对应2.2.2供货商信息查询用例概述用例名称供货商信息查询主题领域供货商信息查询用例包用例定义供货商信息查询角色仓库管理人员业务触发事件进行供货商信息查询前置条件有需要查询的供货商信息记录结束条件成功条件查询到需要查询的供货商信息失败条件未查询到需要查询的供货商信息相关用例7输入概述所需查询的供货商信息输出概述查询结果使用性备注用例备注主事件流步骤角色/系统描述数据项备注6.角色进入查询界面7.系统显示查询界面8.角色输入所需查询的供货商信息9.系统查询是否成功查询成功如果查询成功转到A1如果查询不成功转到A2分支事件流编主事件流角色条件描述数据项转去主备注号步骤号/系事件流统步骤号A14系统完成供货商信息查返回成功信查询的供货2询息商信息A24系统没有完成供货商信返回失败信查询失败的2息查询息信息提示2.2.3供货商信息修改用例概述用例名称供货商信息修改主题领域供货商信息修改用例包用例定义供货商信息修改角色仓库管理人员业务触发事件进行供货商信息修改前置条件有需要修改的供货商信息记录结束条件成功条件查询到需要修改的供货商信息失败条件未查询到需要修改的供货商信息相关用例输入概述所需修改的供货商信息8输出概述修改结果使用性备注用例备注主事件流步骤角色/系统描述数据项备注10.角色进入修改界面11.系统显示修改界面12.角色输入所需修改的供货商信息13.系统修改是否成功修改成功如果修改成功转到A1如果修改不成功转到A2分支事件流编主事件流角色条件描述数据项转去主备注号步骤号/系事件流统步骤号A14系统完成供货商信息修返回成功信修改的供货2改息商信息A24系统没有完成供货商信返回失败信修改失败的2息修改息信息提示2.2.4供货商信息添加用例概述用例名称供货商信息添加主题领域供货商信息添加用例包用例定义供货商信息角色仓库管理人员业务触发事件进行供货商信息添加前置条件有需要添加的供货商信息记录结束条件成功条件查询到需要添加的供货商信息失败条件未查询到需要添加的供货商信息相关用例输入概述所需添加的供货商信息输出概述添加结果使用性备注用例备注9主事件流步骤角色/系统描述数据项备注14.角色进入添加界面15.系统显示添加界面16.角色输入所需添加的供货商信息17.系统添加是否成功添加成功如果添加成功转到A1如果添加不成功转到A2分支事件流编主事件流角色条件描述数据项转去主备注号步骤号/系事件流统步骤号A14系统完成供货商信息添返回成功信添加的供货2加息商信息A24系统没有完成供货商信返回失败信添加失败的2息添加息信息提示3.3功能模块图护等几个功能模块。图3-3总功能模块图1、仓管部信息管理模块:为仓管部主管提供对仓管部信息的管理维护的功能。10仓管部信息管理在库信息管理、图3-3-1仓管部模块图一、仓管部信息管理模块,如图所示,包括以下功能模块:1.信息和仓管人员信息的管理维护,包括对信息查询、添加、修改和删除等操作。2.在库信息管理模块:a、库存信息管理模块:为管理员提供实现对短线货物、货物信息的管理维护,包括对信息查询、添加、修改和删除等操作。b、等操作。113.(包括:产品出库单、部件出库单、礼品出库单)的操作,其中添加和删除操作后的出库货检单要交由管理部审核。4.(包括:部件入库单、产品入库单、礼品入库单)的操作、其中添加和删除操作后的入库货检单要交由管理部审核。5.报表信息查询、浏览和上交等操作。6.系统设置模块:为管理员提供实现对密码修改、清除表信息的功能、图3-3-2管理部模块图二、管理部信息管理模块,如图所示,包括以下功能模块:1、仓管部人员管理模块:为管理员提供实现对仓库部门信息的管理维护,包括对部门信息查询、添加、修改和删除等操作。2、仓库报表管理模块:为管理员提供实现对报表信息的管理维护,包括对报表的查询、浏览和删除等操作。3、仓库货检信息管理模块:为管理员提供实现对货检信息的管理维护,包括对在库货检信息、入库货检信息和出库货检信息的审核操作。4、基本信息管理模块:为管理员提供实现对基本信息进行添加、删除、查询和浏览功能、5、系统设置模块:为管理员提供实现修改密码、备份数据库和恢复数据库的功能12第4章详细设计4.1ER图ER图就是实体关系图,主要完成了对系统中数据部分设计。E-R图为实体-构成E-R图的基本要素是实体型、属性和联系。以下是系统的整个ER图:图4-1ER图4.2数据库设计数据库设计(DatabaseDesign)致可分数据库设计为5个步骤:需求分析;调查和分析用户的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量以及它们在业务活动中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。(可能是一个工厂、一个商场或者一个学校等),通过对其中住处的分类、聚集和概括,建立抽象的概念数据模型。这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。以扩充的实体—(E-R模型)联系模型方法为例,第一步先明确现实世界各部13门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。逻辑设计;主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑可能还需为各种数据处理应用领域产生相应的逻辑子模式。这一步设计的结果就是所谓“逻辑数据库。物理设计;根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构(包括文件类型、索引结构和数据的存放次序与位逻辑等)、存取方法和存取路径等。这一步设计的结果就是所谓“物理数据库。验证设计;在上述设计的基础上,收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性。一般,一个大型数据库的设计过程往往需要经过多次循环反复。当设计的某步发现问题时,可能就需要返回到前面去进行修改。因此,在做上述数据库设计时就应考虑到今后修改设计的可能性和方便性。语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出整性(EntityIntegrity):现实世界的实体是可区分的,即它们具有某种唯一性14本关系的所有主键(PrimaryKey)都不能取空值(NULL)。参照完整性(ReferentialIntegrity“主键(PrimaryKey)/外键(ForeignKey)”保证,其中ForeignKey可以取NULL值,或取其参照表中PrimaryKey的取值。用户定义的完整性(User_definedIntegrity):针对某一具体数据的约束条件,由应用环境决定。数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。4.2.1数据库的逻辑设计仓库管理系统所用的数据库是MySQL,如下是表在数据库的逻辑表示:表assembly的结构字段名注释类型长度是否主键是否不为空id编号INTEGER11√√Inbill_id入库单编号VARCHAR20Supplier_id供货商编号VARCHAR20Depot_id库房编号VARCHAR20Number数量INTEGER11Sumof_bad不合格数量INTEGER11Atcheck_date在库货检日期DATE11√In_date入库日期DATE11√Employee_id货检员编号char5表product的结构15字段名注释类型长度是否主键是否不为空id编号INTEGER11√√Makebill_id组装单编号VARCHAR20√Depot_id库房编号VARCHAR20Check_id货检编号VARCHAR20Number数量INTEGER11Sumof_bad不合格数量INTEGER11Make_date组装日期DATE11√Check_date货检日期DATE11√表assembly_product的结构字段名注释类型长度是否主键是否不为空id编号INTEGER11√√Assembly_id部件编号VARCHAR20Product_id成品编号VARCHAR20表customer的结构字段名注释类型长度是否主键是否不为空Customer_id客户编号VARCHAR20√√name姓名VARCHAR20sex性别VARCHAR20credit信誉度INTEGER11phone电话号码VARCHAR2016address地址VARCHAR20remark备注VARCHAR20表depot的结构字段名注释类型长度是否主键是否不为空Depot_id库房编号VARCHAR20√√Employee_id责任人编号VARCHAR20phone电话号码VARCHAR20address地址VARCHAR20remark备注VARCHAR20表employee的结构字段名注释类型长度是否主键是否不为空Employee_id人员编号VARCHAR20√√Inbill_id入库单编号VARCHAR20Supplier_id供货商编号VARCHAR20Depot_id库房编号VARCHAR20Number数量INTEGER11Sumof_bad不合格数量INTEGER11Atcheck_date在库货检日期DATE11√In_date入库日期DATE11√Employee_id货检员编号VARCHAR5表supplier的结构17字段名注释类型长度是否主键是否不为空Supplier_id供货商编号VARCHAR20√√name姓名VARCHAR20√sex性别VARCHAR20credit信誉度INTEGER11phone电话号码VARCHAR20address地址VARCHAR20remark备注VARCHAR20表inbill的结构字段名注释类型长度是否主键是否不为空In_id入库单编号VARCHAR20√√Depot_id库房编号VARCHAR20Refer_date入库日期DATE11Wh_id提交人编号VARCHAR20Check_date货检日期DATE11Ch_id货检人编号VARCHAR20√Audit_date审核日期DATE11√M_id主管编号VARCHAR20In_state入库单状态VARCHAR20表inlist的结构字段名注释类型长度是否主键是否不为空id编号INTEGER11√√18In_id入库单编号VARCHAR20√Assembly_id部件编号VARCHAR20√Supplier_id供货商编号VARCHAR20√Number数量INTEGER11Badnumber不合格数量INTEGER11Good_rate合格率VARCHAR20表makebill的结构字段名注释类型长度是否主键是否不为空Makebill_id组装单编号VARCHAR20√√Depot_id库房编号VARCHAR20Product_id成品编号VARCHAR20√Number数量INTEGER11Atcheck_date在库货检日期DATE11√Make_date组装日期DATE11Manager_id主管编号VARCHAR20√表outbill的结构字段名注释类型长度是否主键是否不为空Outbill_id出库单编号VARCHAR20√√Depot_id库房编号VARCHAR20Refer_date供货商编号VARCHAR20Refer_id提交人编号VARCHAR2019Audit_date审核日期DATE11Out_state出库单状态VARCHAR11Audit_id审核人编号VARCHAR20Customer_id客户编号VARCHAR20√表outlist的结构字段名注释类型长度是否主键是否不为空id编号INTEGER11√√Outbill_id出库单编号VARCHAR20√Product_id成品编号VARCHAR20√Number数量INTEGER11表report的结构字段名注释类型长度是否主键是否不为空Reportid报表编号VARCHAR20√√Reporttype报表类型VARCHAR20√Depotid库房编号VARCHAR20√beginDate起始日期DATE11√endDate结束日期DATE11√createTime创建日期DATE11√referId提交人编号VARCHAR20√checkState审核状态VARCHAR20√checkDate审核日期DATE1120AuditId审核人编号VARCHAR20表report_detail的结构字段名注释类型长度是否主键是否不为空id编号INTEGER11√√reportId报表编号VARCHAR20√Depotid库房编号VARCHAR20√goodsName货物名称VARCHAR40√goodsType货物类型VARCHAR30√allNumber总数量INTEGER11badNumber不合格数量INTEGER11checkId审核人编号VARCHAR20√4.3运行环境1.开发工具:Eclipse,2.软件环境:Tomcat6.0,JDK5.0以上,3.硬件环境:cpu:P32.0GHZ以上Memory:512M以上21第5章编码5.1登陆的实现5.1.1登陆actionimport.;import.;import.;import..Action;import..ActionForm;import..ActionForward;import..ActionMapping;import3..LoginForm;import3..;/***MyEclipseStruts*Creationdate:05-30-2009**XDocletdefinition:*@path="/login"name="loginForm"input=""scope="request"validate="true"*/publicclassLoginActionextendsAction{publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){LoginFormloginForm=(LoginForm)form;try{StringuserName=_name().trim();Stringpsw=().trim();LoginServiceloginService=newLoginService();HttpSessionsession=(true);if((userName,psw)){("username",userName);//如果登录成功把登录的名字放在session中以便在过滤器中判断return("loginSuccess");//返回到登陆成功页面}else{();("loginError","用户或者密码错误!!");22//返回到错误页面return("loginError");}}catch(Exceptione){e.printStackTrace();}returnnull;}}5.1.2登陆过滤器import.IOException;import.Filter;import.FilterChain;import.FilterConfig;import.ServletException;import.ServletRequest;import.ServletResponse;import.http.*;publicclassSecurityAndDenyimplementsFilter{publicvoiddestroy(){//注销时调用}publicvoiddoFilter(ServletRequestreq,ServletResponseresp,FilterChainchain)throwsIOException,ServletException{HttpServletRequestrequest=(HttpServletRequest)req;HttpServletResponseresponse=(HttpServletResponse)resp;HttpSessionsession=(false);//取出来session如果没有得到空值if(session==null||("username")==null){//判断是否登录过如果没有就重定向到登陆页面Stringtemp="你还没登陆请重新登陆!!";temp=.((),"utf-8");("localhost:8080?loginErr="+temp);return;}//如果登录了就进入请求页面(req,resp);}publicvoidinit(FilterConfigarg0)throwsServletException{//初始化时调用的方法}
}235.1.3登陆DAOpublicBooleanlogin(StringuserName,Stringpsw){Employeeemployee=newEmployee();(psw);(userName);Listresults=findByExample(employee);intlength=();if(length==1){returntrue;}else{returnfalse;}}5.2供货商的实现5.2.1供货商查询Actionpackage3...action;import.List;import.;import.;import..Action;import..ActionForm;import..ActionForward;import..ActionMapping;import3..PageBean;import3...;import3...;import3..;import3..;publicclassQueryActionextendsAction{publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsException{QueryFormqueryForm=(QueryForm)form;SupplierServicess=newSupplierService();24PageBeanpageBean=newPageBean();Listlist=null;//存放查出来的spplier对象StringcrrPage=("cp");intcurrentPage=();intlineSize=();Suppliersupplier=change(queryForm);if(crrPage!=null){currentPage=(crrPage);}else{intallRecorders=(supplier);(allRecorders);((allRecorders+lineSize-1)/lineSize);(allRecorders);((allRecorders+lineSize-1)/lineSize);}list=(supplier,currentPage,lineSize);(currentPage);("pageBean",pageBean);("list",list);//把查询出来的supplier对象放在request里return("supplierResult");}//把form表单里的东西转化为supplier对象publicSupplierchange(QueryFormqueryForm){Suppliersupplier=newSupplier();if(()!=null&&!().equals(""))(());if(()!=null&&!().equals(""))(());if(()!=null&&!().equals(""))(());if(()!=null&&!().equals(""))(());if(()!=null&&!().equals(""))(());if(()!=null&&!().equals(""))(());returnsupplier;}
}255.2.2供货商修改Actionimport.;import.;import..Action;import..ActionForm;import..ActionForward;import..ActionMapping;import3..;import3...;import3...;publicclassModifyActionextendsAction{publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){ModifyFormmodifyForm=(ModifyForm)form;Suppliersupplier=newSupplier();(());(());(());(());(());(());SupplierServicess=newSupplierService();try{(supplier);return("success");}catch(Exceptione){e.printStackTrace();return("error");}}}5.2.2供货商添加Actionimport.;import.;import..Action;import..ActionForm;import..ActionForward;import..ActionMapping;import3..;import3...;26import3...;publicclassAddActionextendsAction{publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){AddFormaddForm=(AddForm)form;Suppliersupplier=newSupplier();(());(());(());(());(());(());SupplierServicess=newSupplierService();try{(supplier);return("success");}catch(Exceptione){e.printStackTrace();//出现异常打印轨迹return("error");}}}5.2.3供货商DAOpackage3...dao;import.ArrayList;import.List;import.Criteria;import.LockMode;import.Query;import.Session;import.Transaction;import.;import3..;import3..;import3..;publicclassSupplierDAOextendsBaseHibernateDAO{publicstaticfinalStringNAME="name";publicstaticfinalStringADDRESS="address";publicstaticfinalStringPHONE="phone";publicstaticfinalStringCREDIT="credit";publicstaticfinalStringREMARK="remark";27publicstaticfinalStringSUPPLIERID="supplierId";publicvoidsave(SuppliertransientInstance){Transactiontransaction=null;try{Sessionsession=getSession();transaction=();(transientInstance);();();}catch(Exceptionre){}}publicvoidupDate(SuppliertransientInstance)throwsException{try{Sessionsession=getSession();Transactiontransaction=();(transientInstance);();();}catch(RuntimeExceptionre){throwre;}}publicSupplierfindById(.Stringid){try{Sessionsession=getSession();Transactiontransaction=();Supplierinstance=(Supplier)("3..",id);();returninstance;}catch(RuntimeExceptionre){throwre;}}publicintgetCount(Supplierinstance)throwsException{if(()!=null){Suppliersupplier=findById(());if(supplier!=null){return1;}else{28return0;}}else{Sessionsession=getSession();Transactiontransaction=();Criteriac=("3..").add((instance));inti=c.list().size();();();returni;}}publicListfindByExample(Supplierinstance,intcurrentPage,intlineSize)throwsException{Listlist=null;Sessionsession=getSession();if(findByProperty(SUPPLIERID,()).size()==0||findByProperty("supplierId",())==null){Examplees=(instance);Transactiontransaction=();Criteriac=("3..").add(es);c.setFirstResult((current1)*lineSize);c.setMaxResults(lineSize);list=c.list();();getSession().close();if(()==0||list==null){returnnull;}returnlist;}else{returnfindByProperty("supplierId",());}
}
}29第6章测试6.1登陆测试方案输入空账号输入不存在的账号密码输入正确的账号和错误的密码输入正确账号和空密码没有登录直接访问页面6.2数据录入测试录入一条空记录录入一条以上全部数据项非空记录录入一条以上只填必填数据项的记录录入一条以上只填非必填数据项的记录对具有外键关联的表录入一条以上检验外键约束的记录录入一条以上正确的记录录入一条以上检验其他自定义完整性约束的记录6.3查询测试正常查询一条以上记录30查询各种查非所查的记录查询各种不对应选项的查询6.4测试结论方面的综合能力都通过。第7章使用说明7.1系统功能简介统的最高权限。仓库主管负责整个山口物流公司仓管部的日常运作和管理工作,除了具有普通管理员的权利,还具有以下权利和义务,主要包括:修改、删除和查询。入库管理:查看入库单,并且具有审批的功能,以决定是否需要入库。如果没有通过审批,将不能入库。报表信息管理:打印、查看一些报表。系统设置:修改个人信息,备份和还原数据。在库管理:管理在库的物品,记录盘点信息,以及维护仓库。31退货信息管理:管理退货信息,包括客户向公司的退货,以及公司向供货商退货。仓管部管理人员:负责仓库的出入库管理,可以根据流向单实现出/入库操作;管理库内的产品,记录一些库检、盘点等信息,还可以修改个人信息等。具体权限有:基本信息管理:只可以查询客户信息,供货商信息和仓管员的信息,不能对其做任何修改或删除操作。还可以查询仓库信息。对于通过审批的入库单,不能再作修改,只能查询;对于没有通过审批的入库单,可以根据主管的批注作修改或删除的操作。对于通过审批的出库单,不能再作修改,只能查询;对于没有通过审批的出库单,可以根据主管的批注作修改或删除的操作。在库管理:查看库存信息、成品组装、在库移动、以及记录盘点信息。退货信息管理:管理退货信息,包括客户向公司的退货,以及公司向供货商退货。报表信息管理:打印、查看一些报表。系统设置:修改个人信息。7.2运行环境简介硬件环境:服务器端:推荐配置为1G内存,CPU为1700MHZ以上配置,硬盘容量为80G的32微机。通信网络:依托校园网,网络协议为HTTP、TCP/IP。软件环境:服务器端:操作系统:Windows2000XP/2003数据库服务器:MySQLServer4.1Web服务器:ApacheTomcat6.0技术架构平台:SunJ2DK1.6客户端:操作系统:Windows3浏览器:InternetExplore6.0或以上版本屏幕分辨率推荐为:1024*768或以上7.3系统运行与操作指南配置该项目,启动Tomcat服务器,打开InternetExplorer,在URL地址中输入localhost:80807.4操作演示主登陆页面7.5特色介绍(1)33的实用性。(2)界面友好,功能完善,接口丰富,具有很好的可扩充性.(3)完善的后台管理,管理员不需要懂得任何操作就可以对前台进行控制。(4)采用Browser/Server三层体系结构,使系统具有很好的可维护性和可重用性。(5)Web服务器采用的是Apache的Tomcat应用服务器,它是一个比较完善的、开放的轻量级Web普遍流行的开放标准,在中小型开发过程中较为适用。(6)更加人性化。第8章总结Internet的J2EEMVCDAO模式等方法,提高了系统的模块化和结构化,使系统更易扩展、升级和维护。性。由于每个公司的业务情况和管理方式都不一样,设计时并没考虑这些情况。虑,有待今后逐步地进行完善。34就想到了在做这个系统时,有的同学用了ACCESS,有的同学用了SQL等来建不同暗花明的欣喜境界参考文献[1]吴建,郑潮,汪杰.UML基础与Rose建模案例.北京:人民邮电出版社.2004年9月[2]黄晓东著.JAVA课程设计案例精编.河南:中国水利水电出版社.2004.7[3](美)BruceEckel著,陈昊鹏,饶若楠等译.JAVA编程思想.陕西:机械工业出版社.2005.6[4]陈玉峰.MySql数据库开发教程.北京:科学出版社.2004.4[5]PerryAnalysis&Mcgraw-Hill.2005.5[6]冀振燕.UML系统分析设计与应用案例.北京:人民邮电出版社.2005.6[7]TedHusted,CedricDumoulin,GeorgeFranciscus,DavidinAction[M].ManningPublicationsCompany.2003[8]冯燕奎,赵德奎等.JSP实用案例教程.北京:清华大学出版社.2004[9]BruceinEducation.2005.5[10]杨志波.DreamweaverMX2004标准教程.北京:中国宇航出版社.2004年第1版[11]孙卫琴.精通Struts基于MVC的JavaWeb设计与开发[M].北京:飞思科技产品研发中心.2006[12]R.M.ofInformation&FraserPublishingCompany.200435致谢助,我希望我能向他们学习,发扬那种百折不挠、孜孜不倦的对知识求索精神,的平凡而不简单来鞭策自已。最后,衷心祝愿我的老师和学友们永远幸福,快乐。36翻译资料原文OverviewofJSPTechnologyBenefitsofJSPJSPpagesaretranslatedintoservlets.So,fundamentally,anytaskJSPpagescanperformcouldalsobeacplishedbyservlets.However,thisunderlyingequivalencedoesnotmeanthatservletsandJSPpagesareequallyappropriateinallscenarios.Theissueisnotthepowerofthetechnology,itistheconvenience,productivity,andmaintainabilityofoneortheother.Afterall,anythingyoucandoonaparticularputerplatformintheJavaprogramminglanguageyoucouldalsodoinassemblylanguage.Butitstillmatterswhichyouchoose.JSPprovidesthefollowingbenefitsoverservletsalone:•ItiseasiertowriteandmaintaintheHTML.YourstaticcodeisordinaryHTML:noextrabackslashes,nodoublequotes,andnolurkingJavasyntax.•YoucanusestandardWeb-sitedevelopmenttools.EvenHTMLtoolsthatknownothingaboutJSPcanbeusedbecausetheysimplyignoretheJSPtags.•Youcandivideupyourdevelopmentteam.TheJavaprogrammerscanworkonthedynamiccode.TheWebdeveloperscanconcentrateonthepresentationlayer.Onlargeprojects,thisdivisionisveryimportant.Dependingonthesizeofyourteamandt37heplexityofyourproject,youcanenforceaweakerorstrongerseparationbetweenthestaticHTMLandthedynamiccontent.Now,thisdiscussionisnottosaythatyoushouldstopusingservletsanduseonlyJSPinstead.Bynomeans.Almostallprojectswilluseboth.Forsomerequestsinyourproject,youwilluseservlets.Forothers,youwilluseJSP.Forstillothers,youwillbinethemwiththeMVCarchitecture.Youwanttheappropriatetoolforthejob,andservlets,bythemselves,donotpleteyourtoolkit.AdvantagesofJSPOverCompetingTechnologiesAnumberofyearsago,Martywasinvitedtoattendasmall20-personindustryroundtablediscussiononsoftwaretechnology.SittingintheseatnexttoMartywasJamesGosling,inventoroftheJavaprogramminglanguage.Sittingseveralseatsawaywasahigh-levelmanagerfromaverylargesoftwarepanyinRedmond,Washington.Duringthediscussion,themoderatorbroughtupthesubjectofJini,whichatthattimewasanewJavatechnology.Themoderatoraskedthemanagerwhathethoughtofit,andthemanagerrespondedthatitwastooearlytotell,butthatitseemedtobeanexcellentidea.Hewentontosaythattheywouldkeepaneyeonit,andifitseemedtobecatchingon,theywouldfollowhispany'susual"embraceandextend"strategy.Atthispoint,Goslinglightheartedlyinterjected"Youmeandisgraceanddistend."38Now,thegrievancethatGoslingwasairingwasthathefeltthatthispanywouldtaketechnologyfromotherpaniesandsubornitfortheirownpurposes.Butguesswhat?Theshoeisontheotherfoothere.TheJavamunitydidnotinventtheideaofdesigningpagesasamixtureofstaticHTMLanddynamiccodemarkedwithspecialtags.Forexample,ColdFusiondidityearsearlier.EvenASP(aproductfromtheverysoftwarepanyoftheaforementionedmanager)popularizedthisapproachbeforeJSPcamealonganddecidedtojumponthebandwagon.Infact,JSPnotonlyadoptedthegeneralidea,itevenusedmanyofthesamespecialtagsasASPdid.So,thequestionbees:whyuseJSPinsteadofoneoftheseothertechnologies?Ourfirstresponseisthatwearenotarguingthateveryoneshould.Severalofthoseothertechnologiesarequitegoodandarereasonableoptionsinsomesituations.Inothersituations,however,JSPisclearlybetter.Hereareafewofthereasons.Versus.NETandActiveServerPages(ASP).NETiswell-designedtechnologyfromMicrosoft.isthepartthatdirectlypeteswithservletsandJSP.TheadvantagesofJSParetwofold.First,JSPisportabletomultipleoperatingsystemsandWebservers;youaren'tlockedintodeployingonWindowsandIIS.Althoughthecore.NETplatformrunsonafewnon-Windowsplatforms,theASPpartdoesnot.Youcannotexpecttodeployseriousapplicationsonmultipleserversandoperatingsystems.Forsomeapplications,thisdifferencedoesnotmatter.Forothers,itmattersgreatly.39Second,forsomeapplicationsthechoiceoftheunderlyinglanguagemattersgreatly.Forexample,although.NET'sC#languageisverywelldesignedandissimilartoJava,fewerprogrammersarefamiliarwitheitherthecoreC#syntaxorthemanyauxiliarylibraries.Inaddition,manydevelopersstillusetheoriginalversionofASP.Withthisversion,JSPhasaclearadvantageforthedynamiccode.WithJSP,thedynamicpartiswritteninJava,notVBScriptoranotherASP-specificlanguage,soJSPismorepowerfulandbettersuitedtoplexapplicationsthatrequirereusableponents.YoucouldmakethesameargumentwhenparingJSPtothepreviousversionofColdFusion;withJSPyoucanuseJavaforthe"realcode"andarenottiedtoaparticularserverproduct.However,thecurrentreleaseofColdFusioniswithinthecontextofaJ2EEserver,allowingdeveloperstoeasilymixColdFusionandservlet/JSPcode.VersusPHPPHP(arecursiveacronymfor"PHP:HypertextPreprocessor")isafree,open-source,HTML-embeddedscriptinglanguagethatissomewhatsimilartobothASPandJSP.OneadvantageofJSPisthatthedynamicpartiswritteninJava,whichalreadyhasanextensiveAPIfornetworking,databaseaccess,distributedobjects,andthelike,whereasPHPrequireslearninganentirelynew,lesswidelyusedlanguage.AsecondadvantageisthatJSPismuchmorewidelysupportedbytoolandservervendorsthanisPHP.40VersusPureServletsJSPdoesn'tprovideanycapabilitiesthatcouldn't,inprinciple,beacplishedwithservlets.Infact,JSPdocumentsareautomaticallytranslatedintoservletsbehindthescenes.Butitismoreconvenienttowrite(andtomodify!)regularHTMLthantouseazillionprintlnstatementstogeneratetheHTML.Plus,byseparatingthepresentationfromthecontent,youcanputdifferentpeopleondifferenttasks:yourWebpagedesignexpertscanbuildtheHTMLbyusingfamiliartoolsandeitherleaveplacesforyourservletprogrammerstoinsertthedynamiccontentorinvokethedynamiccontentindirectlybymeansofXMLtags.DoesthismeanthatyoucanjustlearnJSPandforgetaboutservlets?Absolutelynot!JSPdevelopersneedtoknowservletsforfourreasons:1.JSPpagesgettranslatedintoservlets.Youcan'tunderstandhowJSPworkswithoutunderstandingservlets.2.JSPconsistsofstaticHTML,special-purposeJSPtags,andJavacode.WhatkindofJavacode?Servletcode!Youcan'twritethatcodeifyoudon'tunderstandservletprogramming.3.SometasksarebetteracplishedbyservletsthanbyJSP.JSPisgoodatgeneratingpagesthatconsistoflargesectionsoffairlywellstructuredHTMLorothercharacterdata.Servletsarebetterforgeneratingbinarydata,buildingpageswithh41ighlyvariablestructure,andperformingtasks(suchasredirection)thatinvolvelittleornooutput.4.SometasksarebetteracplishedbyabinationofservletsandJSPthanbyeitherservletsorJSPalone.VersusJavaScriptJavaScript,whichispletelydistinctfromtheJavaprogramminglanguage,isnormallyusedtodynamicallygenerateHTMLontheclient,buildingpartsoftheWebpageasthebrowserloadsthedocument.ThisisausefulcapabilityanddoesnotnormallyoverlapwiththecapabilitiesofJSP(whichrunsonlyontheserver).JSPpagesstillincludeSCRIPTtagsforJavaScript,justasnormalHTMLpagesdo.Infact,JSPcanevenbeusedtodynamicallygeneratetheJavaScriptthatwillbesenttotheclient.So,JavaScriptisnotapetingtechnology;itisaplementaryone.ItisalsopossibletouseJavaScriptontheserver,mostnotablyonSunONE(formerlyiPlanet),IIS,andBroadVisionservers.However,Javaismorepowerful,flexible,reliable,andportable.VersusWebMacroorVelocityJSPisbynomeansperfect.Manypeoplehavepointedoutfeaturesthatcouldbeimproved.Thisisagoodthing,andoneoftheadvantagesofJSPisthatthespecificatio42niscontrolledbyamunitythatdrawsfrommanydifferentpanies.So,thetechnologycanincorporateimprovementsinsuccessivereleases.However,somegroupshavedevelopedalternativeJava-basedtechnologiestotrytoaddressthesedeficiencies.This,inourjudgment,isamistake.Usingathird-partytoollikeApacheStrutsthataugmentsJSPandservlettechnologyisagoodideawhenthattooladdssufficientbenefittopensatefortheadditionalplexity.ButusinganonstandardtoolthattriestoreplaceJSPisabadidea.Whenchoosingatechnology,youneedtoweighmanyfactors:standardization,portability,integration,industrysupport,andtechnicalfeatures.TheargumentsforJSPalternativeshavefocusedalmostexclusivelyonthetechnicalfeaturespart.Butportability,standardization,andintegrationarealsoveryimportant.Forexample,theservletandJSPspecificationsdefineastandarddirectorystructureforWebapplicationsandprovidestandardfiles(.warfiles)fordeployingWebapplications.AllJSP-patibleserversmustsupportthesestandards.FilterscanbesetuptoapplytoanynumberofservletsorJSPpages,butnottononstandardresources.ThesamegoesforWebapplicationsecuritysettings.Besides,thetremendousindustrysupportforJSPandservlettechnologyresultsinimprovementsthatmitigatemanyofthecriticismsofJSP.Forexample,theJSPStandardTagLibraryandtheJSP2.0expressionlanguageaddresstwoofthemostwell-foundedcriticisms:thelackofgooditerationconstructsandthedifficultyo43faccessingdynamicresultswithoutusingeitherexplicitJavacodeorverbosejsp:useBeanelements.10.4MisconceptionsAboutJSPForgettingJSPIsServer-SideTechnologyHerearesometypicalquestionsMartyhasreceived(mostofthemrepeatedly).•OurserverisrunningJDK1.4.So,howdoIputaSwingponentinaJSPpage?•HowdoIputanimageintoaJSPpage?IdonotknowtheproperJavaI/Omandstoreadimagefiles.•SinceTomcatdoesnotsupportJavaScript,howdoImakeimagesthatarehighlightedwhentheusermovesthemouseoverthem?•OurclientsuseolderbrowsersthatdonotunderstandJSP.Whatshouldwedo?•Whenourclientsuse"ViewSource"inabrowser,howcanIpreventthemfromseeingtheJSPtags?Allofthesequestionsarebasedupontheassumptionthatbrowsersknowsomethingabouttheserver-sideprocess.Buttheydonot.Thus:•ForputtingappletswithSwingponentsintoWebpages,whatmattersisthebrowser'sJavaversion—theserver'sversionisirrelevant.Ifthebrowsersupportst44heJava2platform,youusethenormalAPPLET(orJavaplug-in)tagandwoulddosoevenifyouwereusingnon-Javatechnologyontheserver.•Youdonotnee
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 资金管理风险防控管理制度
- 重点人群急救技能培训实施方案
- 实验室高温防护专项培训课件
- 基层公共卫生协管员轮训实施方案
- 水利工程竣工验收管理规程
- 生物质颗粒燃料项目可行性研究报告
- 家庭急救知识普及实施方案
- 建筑勒脚防水方案
- 印刷企业安全培训课件
- 旧街区光影夜游项目可行性研究报告
- 2026年新教材人教版九年级上册英语期中复习:Unit 1-4+期中5套测试卷汇编(含答案)
- 河北省邯郸市2025-2026学年高一上学期期中联考语文试题及答案
- ESC 2026新版心力衰竭管理指南精读
- 2026智联招聘笔试题库及答案
- 2026版《药物临床试验质量管理规范》GCP考试题库(含标准答案+解析)
- EDA技术及应用项目教程 教学大纲
- 中医护理评估
- 2025年度中国展览数据统计报告
- 2026年中考作文押题指导
- 全新版大学英语视听说教程1答案
- 地下通道工程监理实施细则
评论
0/150
提交评论