药品进销存储管理系统(一)_第1页
药品进销存储管理系统(一)_第2页
药品进销存储管理系统(一)_第3页
药品进销存储管理系统(一)_第4页
药品进销存储管理系统(一)_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、药品进销存储管理系统一1引言面向对象编程p具有多方面的吸引力。对管理人员,它实现了更快和更廉价的开发与维护过程。对分析与设计人员,建模处理变得更加简单,能生成明晰、易于维护的设计方案。对程序员,对象模型显得如此高雅和粗浅。此外,面向对象工具以及库的宏大威力使编程成为一项更使人愉悦的任务。每个人都可从中获益,至少外表如此。java便是实现面向对象编程的一种优秀的语言。同人类任何语言一样,java为我们提供了一种表达思想的方式。如操作得当,同其他方式相比,随着问题变得愈大和愈复杂,这种表达方式的方便性和灵敏性会显露无遗1。java汲取了+面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的

2、简洁性和便于维护性。类的封装性,继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。v形式作为如今软件行业最为流行的一种设计形式,一旦和java相结合,所产生的作用是无庸质疑的。面向对象的概念结合构造明晰的模型-视图-控制器三层构造,使得软件设计人员的思想得到进一步的解放,v形式的一个更大的优点在于明晰的构造能使得软件开发完成之后的维护和拓展变的更加轻松。v的优点表如今以下几个方面:1可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同

3、步。2视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的翻开或关闭、甚至在运行期间进展对象交换。3模型的可移植性。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。需要做的只是在新平台上对视图和控制器进展新的修改。4潜在的框架构造。可以基于此模型建立应用程序框架,不仅仅是用在设计界面的设计中。本文介绍了基于java的v形式的网上日志备忘系统的设计与实现,主要包括系统需求分析和系统的功能设计、数据库设计以及主要的java类的设计和相关的xl文件的配置。本系统主要基于java和v形式,采用struts框架实现主要功能模块的设计,采用ysql数据库实现数据构造

4、设计。重点阐述了用户登录模块、用户日志管理模块和后台管理模块的设计。2根底知识2.1java程序语言java是一种简单的、面向对象的、分布式的、可解释的、键壮的、平安的、构造中立的、可移植的、性能优异的、多线程的、动态的语言。java的开发环境有不同的版本,如sun公司的javadevelperskit,简称jdk。后来微软公司推出了支持java标准的irsftvisualj+java开发环境,简称vj+。如今流行的开发平台有elipse和jbuilder等。主要具有平台无关性、平安性、面向对象、分布式、强健性等特点12。2.2v设计形式v英文即del-vie-ntrller,即把一个应用的输

5、入、处理、输出流程按照del、vie、ntrller的方式进展别离,这样一个应用被分成三个层模型层、视图层、控制层。视图(vie)代表用户交互界面,对于eb应用来说,可以概括为htl界面,但有可能为xhtl、xl和applet3。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,v设计形式对于视图的处理仅限于视图上数据的采集和处理,以及用户的恳求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(del)处理。比方一个订单的视图只承受来自模型的数据并显示给用户,以及将用户界面的输入数据和恳求传递给控制和模型。模型(del):就是业务流程、状态的处理以及

6、业务规那么的制定。业务流程的处理过程对其它层来说是黑箱操作,模型承受视图恳求的数据,并返回最终的处理结果。业务模型的设计可以说是v最主要的核心。v设计形式告诉我们,把应用的模型按一定的规那么抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计根据。抽象与详细不能隔得太远,也不能太近。v并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和进步重用性。我们可以用对象编程来做比喻,v定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存持续化。比方将一

7、张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。控制层(ntrller)可以理解为从用户接收恳求,将模型与视图匹配在一起,共同完成用户的恳求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户恳求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层承受恳求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。2.3jspjavaserverpage基于文本的eb组件,

8、在htl代码中嵌入java代码来实现动态内容的输出的一项技术。1利于将创立内容和表示内容的代码别分开来;2标签技术更容易使人理解和使用,组件重用;3动态内容与静态内容的别离;4本质上还是servlet,在效劳器端被转换成servlet;5合适多层eb应用开发体系构造。2.4struts框架struts是采用javaservlet/javaserverpages技术,开发eb应用程序的开放源码的fraerk。采用struts能开发出基于v(del-vie-ntrller)设计形式的应用构架4。struts有如下的主要功能:包含一个ntrllerservlet,能将用户的恳求发送到相应的atin对

9、象5。jsptag库,并且在ntrllerservlet中提供关联支持,帮助开发员创立交互式表单应用。提供了一系列实用对象:xl处理、通过javarefletinapis自动处理javabeans属性、国际化的提示和消息6。struts优点:1集中式的、基于xl的配置方式,防止了java硬编码;2提供了frbean的方式封装用户恳求的参数,使其在恳求阶段方便使用;3自定义了很多有用的标签,如beantags可以方便操作bean中的内容;htltags可以让你轻松初始化表单域等内容;4增加了表单验证功能。3系统设计3.1需求分析本系统的用户可分为管理员,注册用户和普通用户即未注册用户三类。考虑到

10、系统的平安性,本系统共分成两个界面:一个界面用于注册登录,主要进展根本资料的修改、日志分类和日志内容的管理以及查询等,进入方式为主页默认显示;另外一个界面用于后台管理员登录,主要负责审核用户权限、系统新闻维护、公告维护等。从总体上看,系统主要需要实现了以下功能:对管理员来说,包括用户管理、新闻维护、公告维护。l用户管理:管理员可以通过进入用户管理模块对用户进展相关的操作。首先从查询页面输入查询条件,结果在查询模块下方分页显示,管理员可以在查询结果中对用户进展相关操作。主要包括用户信息的阅读,注册用户的权限的审批和停用,用户的删除。l新闻维护:管理员可以对前台首页的本站新闻进展维护,包括新闻的添

11、加,修改和删除。l公告维护:管理员对首页公告进展更新。对用户来说,包括用户注册、用户登陆、阅读新闻和共享文章,以及登陆后日志分类维护,日志内容维护等。l用户注册:非注册用户要获得系统的使用权必须先进展用户注册。用户通过进入注册对自己的根本信息进展填写,提交后经过管理员审核完成,正式获得系统的使用权。l用户登陆:注册完成并且经过审核的用户须登陆后才能进入日志维护页面。该模块实现了用户的登陆和错误验证。l阅读新闻和共享文章:普通用户包括注册和非注册用户进入首页都能对新闻和注册用户发布的公开权限的文章进展阅读,通过点击标题可以查看详细内容。l日志分类维护:此模块主要对日志分类进展维护。假如是第一次进

12、入系统,写日志之前必须先添加日志分类。本模块主要实现了分类的即时添加和删除。l日志内容维护:注册用户登陆后在日志维护主页面点击分类,页面显示出此分类下的所有日志,在日志标题右边能对发布日志进展删除和修改,点击日志标题能阅读日志全文,在日志显示模块上方点击发布日志,进入日志发布页面。需求分析用例图如图3-1。图3-1需求分析用例图3.2功能划分3.2.1前台功能模块划分图3-3后台功能模块图3.2.2后台功能模块划分3.3数据库设计3.3.1数据库需求分析根据系统的需求,主要数据项和数据构造如下。l管理员信息,包括的数据项有:用户名、口令等。l用户信息,包括的数据项有:用户名、密码、真实姓名、性

13、别、联络方式、e-ail地址、 、用户简介等。l日志信息,包括的数据项有:日志编号、标题、内容、发布时间、更新时间、发布人、所属分类等。l日志类别信息,包括的数据项有:类别编号、类别名、创立用户名。l新闻信息,包括的数据项有:新闻编号、标题、内容、更新时间、转载地址等。l公告信息,包括的数据项有:公告编号、标题、内容、更新时间等。为了从多方面来保障用户个人信息和日志信息的平安性、可信性,本系统还应该建立一套机制,这套机制至少应该包括用户和后台管理的账号的平安机制、后台数据库的平安机制、用户使用过程的控制和验证机制。3.3.2数据库物理设计本系统数据库主要使用perdesigner进展逻辑设计和

14、物理设计。该软件能很直观将实体之间的关系明晰的表述出来。数据库的物理设计如图3-4。图3-4数据库的物理设计3.3.3数据库逻辑设计由于本系统是为网上日志备忘系统而设计的,因此数据库名称定为diary。根据需求分析设计了如以下图所示的数据库构造图3-5。详细的用户数据表详细信息见附录一。图3-5数据库构造3.4系统构造因为本系统的实现主要是基于java的v设计形式,所以整个软件在架构被分成了三局部,也就是v中的三个表现层:模型层,控制层和视图层。下面分别就这三个表现层对系统构造进展说明。首先是视图层。视图层简单的理解就是用户的操作界面和程序在处理完用户提交的恳求之后返回给用户的结果显示界面。本

15、系统的视图层主要是用jsp页面来实现的。jsp是java的一个网络应用组件,它通过动态jsp代码和htl语句的互相嵌套,经效劳器编译之后在阅读器上显示处理结果78。本系统的jsp页面可分为两类:完好的jsp页面和功能单一的jsp代码段。完好的jsp页面根本上规划好了整个页面的显示格局,具有独立显示结果的功能;而功能单一的jsp代码段是为了保证代码的明晰性和可重用性而独立出来的只具有单一功能的代码段,它不能被独立显示出来,而只能通过在完好的jsp页面中使用jsp动作语句inlude使之成为jsp页面的一个功能块9。本系统的jsp页面都放在ebntent文件夹下,并且根据各自功能而命名,如日记修改

16、jsp文件叫editdiary.jsp、分类编辑jsp文件叫editkind.jsp。其次是控制层。由于主要使用struts框架来实现v形式的设计,控制层主要是在ebntent下eb-inf文件夹中的eb.xl和struts-nfig.xl见附录来实现整个系统的逻辑跳转详细内容见附录。当然在这之前必须把struts的外部jar包放到eb-inf下的lib文件夹中,这样在写java类时直接继承struts的相关类便可实现商业逻辑了。再次是模型层。一个好的工程必然有一个好的软件构造,在建立java类之前,根据工程不同的功能先建立各自的类包很关键,这样能使在开发的时候不会因为找不到相关的类而晕头转向

17、10。本系统一共建立了6个包,分别是y.bean,y.da,y.atin,y.fr,y.util,y.base。下面分别对各个包里面类的作用进展简单的介绍。y.bean:主要是存放javabean类,主要包括和数据库中数据表的字段相对应的属性和赋值取值方法。为数据操作对象对数据进展操作时提供盛放数据的容器。y.da:数据操作对象包。没个类中都对应相关数据表的所有数据增删查改操作方法。y.atin:严格来说这个包里的类应该属于控制层。和struts-nfig.xl文件结合作用。该包的类全部继承自struts包中的atin类。通过复写exeute()方法来实现业务逻辑。y.fr:表单类,所有从页面

18、提交的表单,通过struts-nfig.xl文件关联后都能和此包中的类进展自动匹配。本包中类的结果类似于bean,只不过所有属性都是和表单中的参数名对应的。在创立相应的赋值取值方法之外,假如表单需要验证的话,必须复写父类的validate()方法实现表单的验证。y.util:实用工具类。辅助类包,主要放一些重复使用次数较多的类文件。如数据库连接类nn。y.base:根本类。里面存放和struts验证机制和国际化相关联的prperties文件和用来解决页面显示乱码问题的过滤器haraterendingfilter类文件。struts-nfig.xl和eb.xl文件见附录三系统需要的ysql数据库驱动类和struts外部包放在ebntent目录下的eb-inf中的lib

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论