机械工艺图纸管理系统的设计与实现毕业论文.doc_第1页
机械工艺图纸管理系统的设计与实现毕业论文.doc_第2页
机械工艺图纸管理系统的设计与实现毕业论文.doc_第3页
机械工艺图纸管理系统的设计与实现毕业论文.doc_第4页
机械工艺图纸管理系统的设计与实现毕业论文.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

毕 业 设 计( 论 文 )机械工艺图纸管理系统的设计与实现摘 要随着科技的发展, 时代的进步,工业生产管理慢慢由原始的人工管理向智能化管理转变。长沙天鹅泵业有限公司在生产水泵的过程中,由于机械图纸太多,人工管理起来比较困难,不得不考虑采用科学化的管理方式。本论文主要阐述了如何利用J2EE的Struts和Hibernate框架开发一个性能优越、可扩展性强和安全可靠稳定的机械工艺图纸管理系统。同时还论述了该机械工艺图纸管理系统具体功能的实现过程,主要包括数据库的设计,图纸管理功能、工艺卡管理功能,用户管理,角色管理,通知管理,上传功能,下载功能等等。本机械工艺图纸管理系统界面美观,简洁大方,容易操作,比较实用。关键词: Struts;Hibernate;机械工艺图纸管理系统;AbstractWith the development of science and technology and the progress of the times, industrial production management gradually changes from original artificial management to the intelligent management. Due to too many mechanical drawings, it is too difficult for Tianepump to adopt artificial management in the process of producing water pumps, so The Changsha Tianepump has to take the use of scientific management into account to manage mechanical drawings and process card. This article mainly expounds how to use J2EE s Struts and Hibernate framework to develop a secure, reliable and stable mechanical process drawings management system with superior performance and high scalability. It also discusses the implementation procedure of specific function of the system, including the design of database, the function of drawing management and process card management, the user management, the role management, the notification management, uploading and downloading, etc.The mechanical process drawings management system is artistic and succinct in interface. It is also easily-operated and practical.Keywords: Struts; Hibernate; drawing management system.目录第一章 绪 论 1 1.1 项目背景分析 1 1.2 论文的主要内容 1 1.3 论文的结构 2 第二章 相关技术简介 3 2.1 Struts2技术简介 3 2.2 hibernate技术简介 5 第三章 需求分析 9 3.1目标定义 9 3.2 系统功能需求 9 3.3可行性研究 10 3.4系统环境要求 10 第四章 概要设计 12 4.1 架构设计 12 4.2 功能模块设计 12 4.3 数据结构设计 14 4.3.1 图数据库设计规范 14 4.3.2 ER关系图设计 14 4.3.3 ER图补充 15 4.3.3 数据库表设计 17 第五章 详细设计 19 5.1 系统配置 19 5.1.1 应用层配置 19 5.1.2 数据库连接配置 22 5.2用户注册登录模块 23 5.3权限控制设计 24 5.4图纸信息管理模块的实现 25 5.4.1 设计目的 25 5.4.2 视图层设计 26 5.4.3 业务层处理 28 5.4.4 数据层处理 30 第六章 总结与展望 33 参考文献 34 致 谢 35 第一章 绪 论1.1 项目背景分析受长沙天鹅泵业股份有限公司的委托,帮忙开发一个机械工业图纸管理系统 。由于该公司加工水泵的过程中,先需要一个机械图纸,机械根据图纸上的信息描述来加工水泵的部件。由于水泵型号多,机械图纸设计工程师们工作量也就比较大,设计出来的机械工艺图纸想当多,结果给水泵加工过程造成了一个想当严重的问题。加工过程中,弄不清那个图纸对应哪一个型号的水泵了。或者是加工完某一型号的水泵之后用过了这一型号的图纸之后,隔了一段时间 又需要再加工该类型号的水泵时找不到这个型号的图纸了。不得不再次求助于机械工艺图纸设计师重新设计图纸。这显然是管理上的失误,才给工艺图纸设计师造成额外的工作。当然也不能全怪管理员了。主要是没有一个合适的管理工具。因此,开发一个合适的机械工艺图纸管理系统是很有必要的。可以减轻管理员的工作,机械图纸设计师的工作,同时也方便水泵加工过程中查找图纸的方便。1.2 论文的主要内容本文将阐述一个基于J2EE技术的机械工艺图纸管理系统的设计与实现,主要实现工艺图纸的管理(上传图纸、下载图纸、搜索查询图纸),机械工艺卡的管理(上传工艺卡、下载工艺卡、搜索查询工艺卡等)其目的是给长沙天鹅泵业有限公司提供一个图纸管理系统,方便水泵加工过程中图纸模板的查找,保证图纸的唯一性,减少公司管理层得工作量的一个信息平台。该机械工艺图纸管理系统应该具备如下功能:发布图纸信息功能,修改图纸信息功能,上传图纸功能,下载图纸功能, 搜索查询图纸功能;发布工艺卡信息功能,修改工艺卡信息功能,上传工艺卡功能,下载工艺卡功能,搜索查询工艺卡功能;用户组管理功能;用户管理功能;消息通知管理功能等。文章将首先阐述机械工艺图纸管理系统分析部分,包括可行性分析、需求分析、业务流程分析等;系统概要设计部分将主要介绍该系统的总体设计、功能设计、架构设计以及数据结构设计;系统详细设计部分将说明整个系统的数据库设计,接口设计以及几个主要功能模块的流程图与算法以及其各自的实现代码,并对实现该论坛的一些关键技术和组件进行简单的介绍;最后论文将对整个系统的设计过程与结果进行总结,总结该系统的不足之处,并对这些不足之处提出修改意见;其次就是对该系统的未来进行展望,看还有哪些技术值得改进可以使得运行效率更高。1.3 论文的结构第二章为相关技术的介绍,首先介绍本机械工艺图纸管理系统中所用的到Stuts2技术,然后在介绍Hibernate技术。第三章为整个系统需求分析,将包括系统的目标定义、系统的功能需求分析、系统的可行性分析、系统开发环境等方面进行简要介绍。第四章为概要设计,将包括系统架构设计,系统功能模块设计与数据结构设计三个大的方面。第五章为整个机械工艺图纸管理系统的详细设计,在这一章论文将列出3到4个模块进行详细讲解,其它的功能模块则进行简单说明。另外论文将详细阐述本机械工艺图纸管理系统的关键技术是如何实现的。第六章为最后一章,论文将在这一章对整个系统的开发过程中所学到的知识与经验进行总结,总结还有那些不足之处以及仍然可以进行改进的地方。第二章 相关技术简介2.1 Struts2技术简介Struts2 是一种JSP Model2模式的框架。JSP Model2 模式示意图如图2.1所示,是由sun公司又推出了一种架构模式。这个模式是结合了servlet,JSP,javabean的优点推出的一种模式。这个模式分为三部分servlet,JSP,javabean。servlet做的事情是控制到底最后显示哪个JSP页面给用户、JSP做的就是响应用户请求,把结果数据展现给用户、而javabean做的就不单单是对数据库的数据的存取了,这里复杂的业务功能和逻辑处理都交给了它处理。从它的设计结构就可以看出JSP Model2的优点。由于它在设计上很好的分工,也就是做显示的是JSP,做逻辑处理的是javabean,做控制的是servlet。这样分工以后,对我们开发人员来说,就可以很好的做自己的开发工作了,而美工人员也不必了解和看懂业务逻辑处理代码,在很大的层次上提高开发的效率。图2.1 JSP Model2 模式示意图事实上Struts2就是一个大的Servlet,所有的请求都会通过这个Servlet就行转发到相应的action 中就行处理。它是一个典型的MVC模式框架。虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts 1而言。Struts 2 与Struts1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度上来讲,Struts2没有继承Struts1的血统,而是继承WebWork的血统。或者说,WebWork衍生出了Struts2,而不是Struts1衍生了Struts2.因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:而且吸收了Struts 1和WebWork两者的优势,因此,是一个非常值得期待的框架。Apache Struts2是一个优雅的,可扩展的JAVA EE web框架。框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。Apache Struts 2即是之前大家所熟知的WebWork 2.在经历了几年的各自发展后,WebWork和Struts社区决定合二为一,也即是Struts 2。Struts2的工作流程示意图如图2.2所示。它的整个工作过程:1、当Servlet容器接收到一个Httprequest请求之后,将请求交给在web.xml中配置的过滤器StrutsPrepareAndExecuteFilter,调用它的dofilter方法。2、StrutsPrepareAndExecuteFilter询问ActionMapper,以便确定这个请求是否有对应的Action调用。3、ActionMaper返回一个描述Action调用的ActionMapping对象。4、StrutsPrepareAndExecuteFilter调用Dispatcher类的serviceAction()方法。5、Dispatcher调用ActionProxy的execute()方法。6、ActionProxy设置ActionProxy对象的执行上下文,然后调用其invoke()方法。7、ActionInvocation的invoke()方法从拦截器中查找尚未执行的拦截器,然后调用它的intercept(invocation()方法。并将自身的引用对象的引用最为参数传递给拦截器。8、拦截器完成某系预处理工作之后,反过来调用ActionInvocation的invoke()方法。ActionInvocation维护自己的状态,所以它知道哪些拦截器已经被执行了,如果还没有别执行的拦截器,就继续执行它的intercept(invocation()方法。9、如果所以的拦截器都已经执行过了,就调用Action实例的execute()方法(如果没有在struts.xml文件中设置其他方法,否则执行其他方法)。10、ActionInvocation根据Action执行返还的结果码,查找对应的Result,调用Result的execute(invocation),将结果呈现给用户。11、ActionInvocation的invoke()方法将控制权返还给拦截器映射中的最后一个拦截器,该拦截器完成所有 的后期处理工作,如此反复,知道所有的拦截器都成返回。12、ActionInvocation的invoke()方法执行完毕之后,向ActionProxy返回一个String类型的结果码,最后,ActionProxy清理状态并返回。图2.2 Struts2的工作流程示意图2.2 hibernate技术简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。 、Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSession对象称为用户session。 、SessionFactory接口:SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。 、Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。 、Transaction接口:Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。 、Query和Criteria接口: Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或原生的SQL语句两种表达方式。HQL语言是一种面向对象的查询语句,它更容易让程序员所接受,同时HQL语言还屏蔽了不同SQL语言之间的差异。 Hibernate的工作原理。Hibernate 首先进行初始化.读取Hibernate 的配置信息然后再创建Session Factory。步骤如下:1)创建Configeration类的实例。它的构造方法:将配置信息(Hibernate config.xml)读入到内存。一个Configeration 实例代表Hibernate 所有Java类到Sql数据库映射的集合。2)创建SessionFactory实例,把Configeration 对象中的所有配置信息拷贝到SessionFactory的缓存中。SessionFactory的实例代表一个数据库存储员源,创建后不再与Configeration 对象关联。缓存(cache):指Java对象的属性(通常是一些集合类型的属性占用内存空间。 SessionFactory的缓存中:Hibernate 配置信息。OR映射元数据。缓存大:重量级对象 小:轻量级对象3)调用SessionFactory创建Session的方法。1、用户自行提供JDBC连接。 Connection con=dataSource.getConnection();Session s=sessionFactory.openSession(con);2、让SessionFactory提供连接 Session s=sessionFactory.openSession();4)通过Session 接口提供的各种方法来操纵数据库访问。Hibernate 的缓存体系。一级缓存:Session 有一个内置的缓存,其中存放了被当前工作单元加载的对象。每个Session 都有自己独立的缓存,且只能被当前工作单元访问。二级缓存:SessionFactory的外置的可插拔的缓存插件。其中的数据可被多个Session共享访问。SessionFactory的内置缓存:存放了映射元数据,预定义的Sql语句。Hibernate 中Java对象的状态临时状态 (transient)。特征: (1)不处于Session 缓存中、(2)数据库中没有对象记录。Java如何进入临时状态:(1)通过new语句刚创建一个对象时、(2)当调用Session 的delete()方法,从Session 缓存中删除一个对象时。持久化状态(persisted)。特征:(1)处于Session 缓存中、(2)持久化对象数据库中设有对象记录、(3)Session 在特定时刻会保持二者同步。Java如何进入持久化状态:(1)Session 的save()把临时持久化状态、(2)Session 的load()、get()方法返回的对象、(3)Session 的find()返回的list集合中存放的对象、(4)Session 的update(),saveOrupdate()使游离持久化游离状态(detached)。特征:(1)不再位于Session 缓存中、(2)游离对象由持久化状态转变而来,数据库中可能还有对应记录。Java如何进入持久化状态游离状态:(1)Session 的close()方法、(2)Session 的evict()方法,从缓存中删除一个对象,提高性能。 所谓Hibernate的基本工作原理,换言之,也就是Hibernate大体的工作流程。其基本工作流程示意图如2-3:图2.3 Hibernate工作流程示意图其工作流程如下:1.实例化Configeration对象,读取hibernate.cfg.xml文件的配置内容,并根据相关的需求建好表或者和表建立好映射关系2.通过实例化的Configeration对象就可以建立sessionFactory实例3.通过sessionFactory实例,创建或者打开session对象。.4.得到session之后,创建事务Transation对象。5. 进行相关的持久化操作,调用save、saveOrUpdate、delete、get等方法对数据库进行增删改查操作。除了比较复杂的全文搜索外,简单的操作都可以通过hibernate封装好的session内置方法来实现。6.提交事务,对数据库数据进行更新,同步hibernate缓存和数据库的记录。7. 关闭Session对象。一旦一个事物执行结束,则关闭Session对象。释放内存服务器资源。8. 关闭SesstionFactory。SessionFactory的启动过程是非常耗时间的,所以一般不会在进行每一次数据库操作都把SessionFactory关闭,这样会严重的影响系统的性能的。系统一般在服务器第一次启动的时候实例化一个SessionFactory实例对象并存储到内存中,以后要用到得时候直接从内存中去取就行了。加快系统访问数据库的性能。所以当关闭Session对象的时候也就意味着一个数据库操作流程的结束了。第三章 需求分析3.1目标定义本系统的开发主要是由于受长沙天鹅泵业股份有限公司的委托,帮忙开发一个机械工业图纸管理系统解,解决图纸凌乱而不好管理的问题,方便长沙天鹅泵业公司管理人员管理机械图纸和工艺卡,同时也方便水泵生产过程中的技术工人,查找机械图纸和工艺卡。由于该公司加工水泵的过程中,先需要一个机械图纸,机械根据图纸上的信息描述来加工水泵的部件。由于水泵型号多,机械图纸设计工程师们工作量也就比较大,设计出来的机械工艺图纸想当多,结果给水泵加工过程造成了一个想当严重的问题。加工过程中,弄不清那个图纸对应哪一个型号的水泵了。或者是加工完某一型号的水泵之后用过了这一型号的图纸之后,隔了一段时间 又需要再加工该类型号的水泵时找不到这个型号的图纸了。不得不再次求助于机械工艺图纸设计师重新设计图纸。主要是由于没有一个合适的文件管理工具,才给工艺图纸设计师造成额外的工作。因此,受此重托,我着手开发这个机械工艺图纸管理系统。主要目的有以下几个点:1、方便机械工艺图纸的管理,避免造成图纸凌乱不堪,造成找不到机械图纸和工艺的现象,减轻管理员的工作量。2、为水泵加工技术人员提供一个性能优越的,实用且方便的机械图纸和工艺卡下载的平台。3、为图纸设计师们提供一个方便而快捷的图纸上传功能。大大减轻了设计师的工作量。3.2 系统功能需求对于这个图纸管理系统来说,主要是为了实现进行查找图纸,下载图纸,当然只有管理员,系统管理员 ,具有上传图纸的权限,已经对图纸进行增删查改等功能,对图纸进行管理。还有对工艺卡的查找,增加,删除,修改,上传,下载等功能。所以,本系统将包含如下功能:1、用户登录,退出,注册等功能。2、系统用户类别管理功能:系统管理员可以添加,修改,删除,查找用户类别等功能。3、系统用户信息管理功能:包括修改用户密码,是否将其设定为管理员,是否删除该用户,添加新用户等功能。4、权限管理功能:系统管理员可以设定每一个用户类别的系统访问权限。包括添加新的权限,删除权限,修改用户类别权限等。本系统默认分以下三种权限(限可以动态添加)。(1)、系统管理员:系统管理员主要负责本系统的管理,具有所有功能的权限。例如:权限管理(其它身份不具有这个权限);(2)、管理员:具有对图纸等信息增删改查都功能。;(2)普通会员:只具有下载查看图纸的功能。不能在系统中添加,修改,删除图纸信息 但是可以修改自己个人信息,如:登陆密码,其它个人资料信息等。还可以发布消息。这些权限 只是一个默认的值 ,现场可以根据具体需求 以系统管理员身份进入系统 动态修改,添加,删除权限。5、用户发布通知的功能:用户登录到后台可以看到最新发布的通知。用户也可以发布通知 ,修改通知,删除通知,查找通知。但是(修改和删除操作,只能增对自己的发布的通知进行操作)。通过这个通知功能,管理员上传新图纸,修改图纸 之后,就能方便的通知下大家。6、图纸管理功能:系统默认普通用户只能浏览下载图纸的功能,管理员,系统管理员才具有对图纸进行增加图纸,修改图纸信息,删除图纸,上传图纸,下载图纸的功能。7、工艺卡管理功能:系统默认普通用户只能浏览下载工艺卡的功能,管理员,系统管理员才具有对工艺卡进行增加工艺卡信息,修改工艺卡信息,删除工艺卡信息及文件,上传工艺卡,下载工艺卡的功能。3.3可行性研究技术可行性分析:Struts2、Hibernate、JSTL、OGNL、AJAX等这些技术都是经过前人无数次试验通过的,就技术层面上来讲,用它们实现一个小型的内容管理系统是搓搓有余的;而类似这种管理系统系统在互联网上已经有过相当多的成功的案例了,所以不论是就技术而言还是就系统本身而言都是具有可行性的。经济可行性分析:该小型内容管理系统全程由个人开发,所以不存在支付他人开发费用;只是时间的问题开销问题。而这系统可以给长沙天鹅泵业公司图纸管理带来极大的方便,因此在经济上是具有可行性的。3.4系统环境要求本系统在Window XP 系统上开发。可移植到多种平台上运行。是个跨平台的软件,只需要安装jdk1.5以上版本 ,mysql5 数据库 tomcat 或者jboss 等jsp服务器。开发工具:MyEclipse 7.5 。系统GUI/LOGO辅助设计工具:photoshop CS5,dreamweaver CS5。服务器至少要双核以上处理器,linux或者windows操作系统。安装了JDK1.5版本以上,tomcat或者Jboss服务器。系统性能要求必须满足同时在线的系统用户至少能承受300人。300个在线用户对图纸的查找,下载,工艺卡的查找,下载等。第四章 概要设计4.1 架构设计本机械工艺图纸管理系统采用B/S模式架构。B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix 、SQL Server或 MySQL等数据库。浏览器通过Web Server 同数据库进行数据交互。我们采用基于B/S结构的三层应用模型来实现机械工艺图纸管理系统。目前,在Internet应用体系结构中,事物处理被划分为3层,即Web BrowserInternet ServerDatabase Server。在这种体系结构中,业务的表达通过简单的Web Browser来实现,用户通过Web Browser提交表单,把信息传递给Internet Server,Internet Server根据用户的请求,分析出要求数据库服务器进行的查询,交给数据库服务器去执行,Database Server把查询的结果反馈给Internet Server,在由Internet Server用标准的HTML语言反馈给Web Browser。三层应用模型同传统的C/S(Client/Server)模型相比,提高了系统的可扩展性、安全性和可重用性。它将应用逻辑与用户界面和数据访问相剥离,这样便使系统的维护变得简单,同时可以通过采用组件技术,降低数据库服务器的负担,从而提高性能。B/S技术成本较低,一般只需安装、配备在服务器上。在客户机上的工作较少,故降低了开发及管理成本。而C/S的应用不论是安装、配备还是升级,都需要在所有的客户机上实施。B/S技术维护工作主要集中在服务器端,客户端的维护工作量十分少。而C/S结构中客户机和服务器的维护工作量都较大。Web Browser技术简明易用,一旦用户掌握了Web Browser的用法,也就掌握了使用系统上各种信息资源的钥匙。4.2 功能模块设计为了实现机械图纸和工艺卡的上传,下载,保证机械图纸和工艺卡的唯一性。根据需求分析,得出了该系统所需要实现的功能,系统功能模块示意图如图4.1所示。主要有以下几个功能模块:1、用户登录,退出,注册等功能;2、用户信息管理功能,包括修改用户密码,是否将其设定为管理员,是否删除该用户,添加用户等,查询用户等功能;3、用户类别管理功能,包括添加新的用户类别,修改用户类别,删除用户类别等;4、消息通知的发布功能,用户登录系统后可以查看其他所有用户发布的通知的功能,系统管理员还具有对通知进行删除的功能,其他用户只能删除自己发布的通知的功能;5、权限管理功能功能,系统管理员可以动态的修改用户各个类别的权限的功能,包括添加新的权限,取消,查看某个类别的权限等功能;6、图纸类别管理员功能。管理员,系统管理员可以增加机械图纸类别信息,修改机械图纸类别信息,删除机械图纸类别信息等;当图纸类别存在子目录的时候不能进行删除操作;7、机械图纸管理功能,管理员,系统管理员可以增加机械图纸信息,修改机械图纸信息,删除机械图纸信息,上传机械图纸,下载机械图纸等功能;8、机械工艺卡管理功能,管理员,系统管理员可以增加机械工艺卡信息,修改机械工艺卡信息,删除机械工艺卡信息,上传工艺卡,下载机械工艺卡等功能;机械工艺图纸管理系统图纸信息管理模块工艺卡信息管模块图纸类别管理模块用户管理管理模块用户类别管理模块权限管理模块通知信息管理模块注册登录模块图4.1 机械工艺图纸管理系统功能模块示意图4.3 数据结构设计4.3.1 图数据库设计规范在概念设计中,通常用四种方法:自顶向下:首先定义全局概念结构的框架,然后逐步细化;自底向上:首先定义各局部应用的概念结构,然后将他们集成起来,得到全局概念结构;逐步扩张: 首先定义最核心的概念结构,然后向外扩充,直至总体概念结构;混合策略: 即自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念。结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构在物理结构设计阶段首先分两步走:确定数据库的物理结构,在关系数据库中主要是指存取方法和存储结构。 对物理结构的评价是时间和空间效率.选取正确的关系模式存取方法,常用的有:存取索引方法。聚簇存取。HASH存取方法等。4.3.2 E-R关系图设计E-R完整实体图如(图4.2)图4.2 E-R完整实体图4.3.3 E-R图补充信息实体,主要属性有:ID、消息标题、消息内容、消息发布人ID、修改时间、发布时间。实体图如(图4.3)图4.3信息实体图纸类别实体,主要属性有:类别ID、类别名称;类别描述。实体图如(图4.4)图4.4图纸类别实体图纸信息实体,主要属性有:图纸ID、图纸设计者、修改时间、图纸类别ID、图纸编号、图纸名、排序、图纸描述、图纸路径。实体图如(图4.5)图4.5图纸信息实体工艺卡实体,如图4.6工艺卡实体图,主要属性有:工艺卡ID、产品型号、产品名称、工艺卡类别、工艺类别、零件号、零件名称、总页数、页序号、存储路径、工艺卡描述、材料牌号。图4.6工艺卡实体权限控制实体,主要属性:ID、控制路径、角色ID、角色描述。实体图如图4.7所示。图4.7角色实体,主要属性有:ID、角色名、角色描述。实体图如(图4.8)图4.8权限控制实体用户信息实体,主要属性有:用户ID、年龄、工号、登陆密码、职位、等级、真实姓名、登陆名、角色ID 。实体图如(图4.9)图4.9用户信息实体4.3.3 数据库表设计Infotable 用来存储信息的表。Infotable 表Mapcatetable表 用来存储工艺图纸类别的表图纸类别的表。mapCatetable 表mapinfotable 表用来存储工艺图纸信息的表。mapinfotable 表opercardtable表用来存储工艺卡的表。opercardtable表Permissiontable 表 用来存储权限的表。Permissiontable表Roletable表,用来存储角信息的表。Roletable表Usertable表,用来存储用户信息的表。Usertable表第五章 详细设计5.1 系统配置5.1.1 应用层配置本机械工艺图纸管理系统采用目前流行的Struts2框架进行开发。先来看看Struts2框架是如何配置到应用程序中的。在WEB-INF/web.xml文件的配置如下:struts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilterstruts2/*当加入这个配置到web.xml文件之后,在浏览器中敲入的访系统的所有请求路径都会经过org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter这个filter进行过滤。由这个过滤器进行转发相应的请求,进入Struts2的工作流程中。这就是算是把Struts2框架配置到程序中了。在WebRootWEB-INFclassesstruts.xml文件中的配置如下: /error.jsp/login.jsp /WEB-INF/index.jsp 其中struts.devMode配置开发模式常量,值为true,说明是开发模式,当为true时,在开发的过程中,一旦修改某个文件会自动的编译到tomcat的目录下的。不必手工编译。方便开发的工作;struts.multipart.maxSize常量用来配置控制上传文件的大小的,单位是byte; 配置权限控制访问包,但请求访问需要需要受权限控制时继承个包就可以了,就会经过这个自定义拦截器;引入其他配置文件,为了防止配置文件的臃肿,一般都把每个模块写的配置信息写到一个独立的xml文件中,方便团队开发过程中修改。在其他配置文件中配置了各个请求的访问路径及对用的处理控制器(Action)。下面是WebRootWEB-INFclassesmapinfo.xml文件的配置情况:/WEB-INF/mapInfo/list.jsp/WEB-INF/mapInfo/list.jsp/WEB-INF/mapInfo/toAdd.jspmapInfo_list/WEB-INF/mapInfo/toModify.jsp/WEB-INF/mapInfo/list.jspmapInfo_list其中在这个文件中配置了图纸管理模块的一些操作所对应的请求处理方法。class属性表示请求所对应的处理类,method属性表示请求所对应的处理方法,result表示请求的跳转页面。5.1.2 数据库连接配置服务器端程序采用Hibernate框架来访问数据库:以下是hibernate连接数据库的配置文件,该配置是针对session-factory配置的,SessionFactory是Hibernate中的一个类,这个类主要负责保存HIbernate的配置信息,以及对Session的操作。com.mysql.jdbc.Driverjdbc:mys

温馨提示

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

评论

0/150

提交评论