毕业设计(论文)-监理日志管理系统_第1页
毕业设计(论文)-监理日志管理系统_第2页
毕业设计(论文)-监理日志管理系统_第3页
毕业设计(论文)-监理日志管理系统_第4页
毕业设计(论文)-监理日志管理系统_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、常州信息职业技术学院 毕业设计(论文)报告常州信息职业技术学院学生毕业设计(论文)报告全套设计加扣 3012250582系 别: 软件学院 专 业: 软件技术 班 级: 软件技术/中软132 学 生 姓 名: 学 生 学 号: 设计(论文)题目: 监理日志管理系统 指 导 教 师: 设 计 地 点: 起 迄 日 期: 2014.06.182014.8.01 目 录摘 要IAbstractII第一章 绪论11.1 研究背景11.2 研究的意义11.3 研究的内容21.4 论文的组织2第二章 开发技术32.1 Struts2技术32.2 Hibernate技术42.3 JQuery技术5第三章 需

2、求分析63.1 需求说明63.2 业务流程63.2.1 前台功能说明73.2.2 后台功能说明73.3 系统一般用户的功能73.4 系统功能用例图93.5系统模块描述103.5.1 主操作界面103.5.2 用户操作界面113.5.3 管理员操作管理12第四章 系统设计134.1 系统设计134.2 数据库表设计134.3 详细业务流程图16第五章 系统实现和测试185.1 程序结构185.2 系统实现185.3 系统测试285.3.1配置测试环境285.3.2测试总结28第六章 总结与展望296.1总结296.2展望29参考文献30致谢31摘 要现在随着网络科学、个人电脑以及数据库技术的快速

3、磅礴发展,日志记录不是传统的纸质模式,已经转向网络。本系统就是面向公司员工的日志系统。是一种比较智能化的系统,它能够实现在线日志的记录,用户管理和网站管理。此系统是记录类系统,其开发的功能主要包括:通过互联网写项目日记,随时修改,调整进度。本系统的设计目的是为了满足公司员工只要通过网络就可以写项目日志,改变传统的纸质日志的模式,方便领导批阅,及信息反馈,可视图型的生成,节约资源。关键词:监理日志管理系统;Web框架技术;Mysql数据库;B/S架构;AbstractNow with the rapid development of network, computer and database,

4、 log records are not the traditional entity model, has turned to the network. This system is for the people of the log system. Is a more intelligent system, it is able to achieve the online log record, user management and website management. This system is a record type system, the function of its d

5、evelopment mainly include: through the Internet to write project diary, at any time to modify, adjust the progress.The design of the system is designed to meet the consumer as long as the network can write project logs, change the traditional.According to the survey that, with todays living standard

6、s gradually improve, web logs also occupies a very important position, more and more people like no paper, no time and space constraints whenever and wherever you like to write a written, engineering becomes simple.Key words: Supervision log management system; B/S framework; Web framework; Mysql dat

7、abase; I第一章 绪论1.1 课题研究背景 随着当今计算机网络以及数据库的快速发展。本文所介绍的系统就是面向人民群众以及方便人民群众的监理日志管理系统。是一种比较方便快捷的监理系统,它能够实现日志管理的基本功能。可以很好的实现于用户之间的互动。此系统是监理系统,其开发的功能主要包括:通过互联网购管理自己的日志,方便又快捷。 本文首先描述了日记监理系统开发背景和开发目的,然后根据系统的需求分析对系统展开了详细的设计(包括系统的结构功能以及数据库设计等),最后进行了监理系统的实现。1.2 研究的意义 本监理日志系统设计主要功能是通过网络渠道,快速记录日志,查看,搜索,提醒用户,方便用户日常工

8、作,记录工作进度,提高用户的工作效率,减少用户的人力记忆事项,减轻工作负担(1)跟传统纸上日志相比网络日志变得更快捷,而且更方便。(2)跟传统纸上日志相比网络日志大部的活动全部都在网上实施,可以实现无纸办公化系统,而且节省了纸张的开支。(3)跟传统纸上日志相比网络日志的流程更数字化、更电子化,大大提高了运作的效率,并有效地降低了成本。1.3 课题研究的内容 本系统设计这要是以一般网站运营模式主要实现在日志功能(前后台),前台主要内容包括:1. 前台会员登录、注册;2. 添加项目日志;3. 查看项目;4. 查看项目;5. 修改项目;6. 修改个人信息;后台主要内容包括:1. 查看用户;2. 修改

9、用户信息;3. 删除用户;1.4 论文的组织第一章 绪论,主要介绍了日志监理系统的研发背景,意义及主要的研究内容;第二章 开发技术,介绍了在日志监理系统的开发过程中所用到的所有技术;第三章 需求分析,详细介绍了日志监理系统统的业务需求以及具体业务流程;第四章 系统设计,详细描述了日志监理系统的数据库测试和系统管理;第五章 系统实现和测试,介绍了项目设计实现及测试和系统管理;第六章 总结和展望,总结了本次系统的开发以及对未来的展望;第2章 开发技术本章主要介绍了监理日志管理系统在开发过程中运用到的相关开发技术,主要有Struts2,Hibernate以及JQuery技术。2.1 Struts2技

10、术1. Struts2的定义Struts2是一个轻量级的MVC框架,重心在控制层和表现层,轻量级;解决的是一个请求分发。简单讲Struts2相当于一个大的Servlet,实现了页面的跳转操作。2. Struts2的原理 Struts2框架的运行流程相当相似于WebWork框架的流程,Struts2实际上就是WebWork2.2的升级版,因此,Struts2的运行流程与WebWork运行流程完全相同,如下图所示为WebWork的运行流程:图2-1 WebWork的运行流程总的来讲Struts2的运行原理有如下几个步骤:第一步:把Struts2所需要用到的jar包加入的项目的web-info/li

11、b目录下;第二步:在web.xml文件中加入,将拦截器的相关配置进去;第三步:把一个空的struts.xml配置文件建在项目src目录下;第四部:新建一个java文件编写所需要的action类;第五步:在struts.xml文件中配置相关配置的数据;第六步:编写所需要的jsp文件;第七步:部署tomcat,开启tomcat,在浏览器中测试和访问tomcat。2.2 Hibernate技术1. Hibernate的定义Hibernate是三大框架中的一个框架,主要作用是操作数据库和持久化对象的。Hibernate能够把数据库中的表,转换成我们所需要的java类,然后通过hibernate.cfg

12、.xml主配置文件实现类与表之间的相关映射关系。这样的好处在于能够间接访问数据库,简化数据访问层相关代码的编写。2. Hibernate的工作原理将类对应的配置文件以及Hibernate的配置文件配置好后,启动tomcat服务器,服务器将实例化Configeration配置文件的相关的对象,从而读取到hibernate.cfg.xml主配置文件中存在的相关配置信息,并且根据相关的配置中的数据建好映射关系,通过实例化的Configeration配置文件的相关对象从而建立sessionFactory对话工厂的实例,然后,通过sessionFactory对话工厂实例就可以创建session会话对象,

13、在session会话对象得到了以后,对数据库数据中的表进行增删改查操作。3. Hibernate的使用步骤(1)导入相关的包;(2)编写主配置文件hibernate.cfg.xml;(3)创建实体类;(4)创建也实体类相关的映射关系文件hbm.xml(hbm.xml是后缀);(5)调用Hibernate的API进行增删改查操作;2.3 JQuery技术1. JQuery的定义 JQuery是当前比较流行JavaScript库,但其实质是一个由javascript编写的一个框架。他是轻量级的javascript库,并且JQuery兼容许多浏览器,但是包括JQuery2.0在内的以及JQuery的

14、后续其他的版本将不再实现对支持IE6,IE7,IE8浏览器。2. JQuery的优势:JQuery的优势有以下几点:(1) 轻量级:所谓轻量级就是其是非常轻巧的。(2) 选择器:JQuery有独创的选择器,使用起来极其方便快捷。(3) DOM操作的封装:JQuery封装的DOMHTML的操作,使开发者编程变得更加简单快捷。(4) 事件处理机制:JQuery有非常多的事件处理函数,使得在处理事件发生方面上变得非常可靠。(5) 完善了Ajax:Ajax所有的操作都被JQuery封装到自己的库函数中,让程序员开发时不用考虑各种浏览器的兼容问题等等。第3章 需求分析本章主要对监理日志管理系统的需求说明

15、进行了详细的描述,对业务的主要流程,系统的框架结构以及系统的各个模块的功能实现进行了详细的分析,以及对非功能需求的一个简要说明。3.1 需求说明监理日志管理系统前台主要内容包括:监理日子管理系统前台登录、注册;日志展示,搜索,修改;个人信息管理;发帖和回帖和删帖;后台主要内容包括:用户管理;贴吧管理。3.2 业务流程 该系统前台的主要流程是使用账户通过登录模块进入首页,然后可以浏览个人信息,写工作日志,可以发表帖子,和对感兴趣的帖子进行回复,在个人主页中可以修改自己的相关信息。该系统后台的主要流程是系统管理员通过登录模块进入系统后台的主页,审批进行注册的用户,管理员登录需要将用户名和数据库中的

16、数据进行匹配,如果该账号存在则对密码进行比对操作,用户名密码都匹配成功即可成功登录,否则则失败。下图为整个业务的结构示意图:图3-1 系统整体结构示意图3.2.1 前台功能1. 前台页面首页:用户必须进行登陆2.用户注册:用户注册后不能立即使用账号,必须经过管理员的审批。3.日志管理:日志的增删改查操作。4.帖子管理:用户可以进行发帖,回帖,和删帖操作3.2.2 后台功能1. 管理员登录:通过管理员的登录,可以对系统的用户进行一定操作2. 管理用户信息:管理员对会员的基本信息进行有效操作(不可随意修改)。3. 帖子管理:管理员可以对不规范的帖子进行删除工作4. 注册审核:对注册的用户进行审核3

17、.3 系统用户的功能3.3.1 匿名用户 3.3.1 用户注册匿名用户必须进行注册和审核后才能使用本系统3.3.2 一般用户 一般用户为本系统的使用人员,在本系统用户可以查看自己的信息,发帖,回帖,删除帖子,添加日志,查看日志,搜索日志。图3-3 一般用户的功能示意图3.3.3 管理员用户 管理员为后台管理人员,审核注册用户,删除用户,查看用户,贴吧管理。图3-4 管理员功能示意图3.4 系统功能用例图3.4.1 用户注册用例名:会员注册简述:还未注册的用户可以注册。参与者:游客 浏览者前置条件:进入网站注册界面详细描述:a) 浏览者登录本公司网站,进入注册界面;b) 在注册界面填入相关信息,

18、包括用户名、密码、地址等个人信息;3.4.2 用户登录用例名:用户登录简述:已经注册的用户可以登录。参与者:会员前置条件:已完成注册,并进行注册详细描述:输入账号和密码进行登陆a) 进入本网站首页点击登录按钮进入登录界面b) 输入用户名和密码,验证通过后进入个人信息管理3.4.3 用户发帖用例名:发帖机简述:在登录后才可以发帖参与者:管理员和用户前置条件:已登录详细描述:a) 会员登录成功3.4.4 管理员管理用例名:管理员管理简述:管理员进行登录才可进行管理参与者:管理员前置条件:已登录后台管理员账户详细描述:a) 进入本网站后台并登录管理员帐号b) 进行相关的管理3.5模块描述3.5.1

19、主操作界面(首页) 图3-5 主操作界面功能示意图(1) 用户注册:用户输入账号(11位手机号码)、账号、密码、验证码信息。(2) 用户登录:用户输入自己的账号和密码,经过验证即可登录。(3) 日志管理:添加日志,修改日志,查看日志(4) 帖子管理:查看帖子,回复帖子3.5.2 管理员管理图3-7 管理员界面功能示意图1.用户管理区(1)用户信息:查看用户信息,和对非在职员工用户进行信息删除,节约内存。(2)审批用户:审批注册用户3.订单管理区(1)在线交流:管理所有人的帖子,发表自己的帖子第4章 系统设计本章主要详述监理日志管理系统的架构设计,对应的数据库表的设计,多表之间的联系,以及对相关

20、的模块进行详细设计分析。4.1 系统架构设计本系统应用稳定的SSH框架。通过第二章开发技术的详细说明和介绍,就简单性、可测试性和松耦合性的角度而言,可以构建一个高效、健壮、可维护和易于扩展的业务系统。典型的J2EE三层结构,分为表现层、业务逻辑层和数据服务层。三层体系就是将业务规则、数据访问及合法性校验等工作放在业务逻辑层进行处理。客户端并不是直接与数据库交互,而是通过组件Action建立连接,再由业务逻辑层与数据库交互。图4-1 基于SSH框架的系统分层架构图4.2 数据库设计数据库主要是用Mysql数据库进行设计的,以下的表均为项目所需的数据库表。根据以上手机销售系统的需求分析,数据库设计

21、如下表所示:列名数据类型长度允许空主键外键描述idINTEGER38NY主键user_nameVARCHAR50N登录账号passwordVARCHAR50N登陆密码ageINTEGER38N年龄sexINTEGER5N性别jobVARCHAR50N职称depart_idINTEGER38Y所在部门professionVARCHAR50N专业photoVARCHAR50Y照片addressVARCHAR100N住址descripteVARCHAR500Y备注typeINTEGER5N是否管理员onuseINTEGER5N是否可用educationINTEGER5Y学历前台用户表主要用于存储前台

22、用户信息。表4-1 用户表表4-2 日志表列名数据类型长度允许空主键外键描述idINTEGER38NY主键user_idINTEGER38NY登录账号create_dateDATETIME50N创建时间weatherVARCHAR50Y天气temperatureVARCHAR50Y气温job_nameVARCHAR50N工程名称job_distinctVARCHAR500Y监理工作情况job_processVARCHAR500Y工作进度unitVARCHAR500Y承包单位表4-2 帖子表列名数据类型长度允许空主键外键描述idINTEGER38NY主键user_idINTEGER38NY发起人

23、reply_msgidINTEGERE38YY回复谁root_idVARCHAR50YY回复的rootmessageVARCHAR1000N内容titleVARCHAR100N标题create_dateDATETIME50Y创建时间列名数据类型长度允许空主键外键描述idINTEGER38NY主键keywordINTEGER38Y关键字codeINTEGERE38Y编号nameVARCHAR50Y数据值表4-3 数据字典4.3 详细业务流程图描述首先用户进入主界面,在此界面用户可以浏览个人信息,写日志,修改日志,发表帖子,回复帖子,退出系统流程图如下所示:图4-2总业务系统流程图(1)通过登陆页

24、面,用户输入用户名和密码登录系统,用户包括一般用户和系统管理员用户,如果登陆失败无法进行其他的操作。用户登陆成功后,可以进行相应的操作:一般用户:查看修改个人资料,上传图片,填写日志,查看日志的审批情况。还可以在帖子模块进行发帖操作,回复帖子操作等。管理员用户:查看所有用户的信息,修改用户的信息。对日志进行审批操作。对注册的用户进行审核操作。还可以在帖子模块进行发帖操作,回复帖子操作等。14 图4-3后台系统流程图(2)第5章 系统实现与测试5.1 程序结构LogManager是项目名称,也就是项目的根目录。WebRoot为Web目录,包括JS文件、CSS样式文件和图片目录images。WEB

25、-INF目录,我们在web-info下放置前后台的jsp页面(避免用户直接访问)、lib目录及web.xml配置文件依然为固定的目录和文件。Src目录包含以下几个部分:包:配置文件包括:5.2 系统实现首先员工先注册本系统,下图5-1为本系统的注册页面:注册页面用户名的校验使用了Ajax的异步请求技术Jsp页面:function checkUsername() var username = document.getElementById(userName).value; $.ajax( url : user!findUserName.action , data: userName=+usern

26、ame,dataType: JSON, Success : function( data , msg ) if( data.success = true) alert( 用户名已存在 ); can = true; else can = false; ); Json 类代码:/public class Json implements java.io.Serializable /* * */private static final long serialVersionUID = -7278387729012279201L;private boolean success = false;/ 是否成功

27、private String msg = ;/ 提示信息private Object obj = null;/ 其他信息public String getMsg() return msg;public void setMsg(String msg) this.msg = msg;public Object getObj() return obj;public void setObj(Object obj) this.obj = obj;public boolean isSuccess() return success;public void setSuccess(boolean success

28、) this.success = success;/* * 将对象转换成JSON字符串,并响应回前台 * * param object * throws IOException */public void writeJson ( Object object ) try String json = JSON.toJSONStringWithDateFormat( object , yyyy-MM-dd HH:mm:ss );ServletActionContext.getResponse().setContentType(text/json;charset=utf-8 );System.out.

29、println( json );ServletActionContext.getResponse().getWriter().write( json );ServletActionContext.getResponse().getWriter().flush();ServletActionContext.getResponse().getWriter().close(); catch (IOException e) e.printStackTrace();图5-1监理日志管理系统 下图为本监理系统的登陆页面:图5-2 手机销售系统商品详情页面登陆页面使用验证码形式,防止穷举破解验证码代码:pr

30、ivate static Random random = new Random();/随机字体private static Font getFont(int size) /* GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); String fontList = ge.getAvailableFontFamilyNames(); for(int i=0;ifontList.length;i+) System.out.println(fontListi); int i = random.nextI

31、nt( fontList.length ); System.out.println( fontList.length ); System.out.println( i );*/ return new Font( null , Font.ITALIC | Font.BOLD , size ); /随机色private static Color getColor()int c= new int3;for(int i=0 ; i c.length ; i+ )ci = random.nextInt( 255 );return new Color( c0 , c1 , c2 );/私有化 构造函数pr

32、ivate RandomImage();/验证码public static void buildImage(String randomstring , OutputStream os , int width , int height , int size)/在内存中创建BufferedImage bi = new BufferedImage( width , height , BufferedImage.TYPE_BYTE_INDEXED);/获得图像的上下文Graphics2D g = ( Graphics2D )bi.getGraphics();/白色背景g.setColor( Color

33、.white );g.fillRect( 0 , 0 , width , height);/字体g.setFont( getFont ( size ) );String s = ;for(int i=0 ; irandomstring.length() ; i+)s = new String( randomstring.substring ( i, i+1 ) );int x = 25*i+10 , y , z;/产生 随机色Color color = getColor();g.setColor( color );/产生字体落差if(z = random.nextInt ( 10 ) ) 5

34、)y = size + z ;elseY = size - z ;System.out.println ( y = + y );g.drawString ( s , x , y );/产生干扰点for(int i = 0 ; i 100 ; i+ )int x , y ;x = random.nextInt ( width ) ;y = random.nextInt ( height ) ;Color color = getColor();g.setColor ( color ) ;g.drawOval ( x , y , 0 , 0 ) ;/产生干扰线for(int i = 0 ; i 10

35、 ; i+ )int x , y , x1 , y1;x = random.nextInt ( width ) ;y = random.nextInt ( height ) ;x1 = random.nextInt ( width ) ;y1 = random.nextInt(height);Color color = getColor();g.setColor ( color ) ;g.drawLine ( x , y , x1 , y1 ) ;g.setColor ( Color.BLACK ) ;/g.drawString(randomstring, 0, size);g.dispose

36、();try ImageIO.write ( bi , jpg , os ) ; catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();图5-4 本监理日志管理系统主页面主页面使用了框架模式,实现类似于异步刷新的效果。图5-5 监理日志管理系统个人信息页面查看本用户的信息密码使用MD5进行加密,实现图片上传功能,使用CSS技术修改上传控件按钮样式,使用图片预览控件,实现图片的上传预览。通过数据字典使用关键字典的数据填充。图5-6 监理日志管理系统用户管理页面用户管理模块只有管理员账号才能进行相关的操

37、作,可以通过名字的模糊查找相关的用户对用户信息进行相应的修改,和对用户进行删除操作。图5-7 监理日志管理系统数据字典维护页面数据字典是每个系统的必要模块,对关键字典进行维护。图5-8 监理日志管理系统待审核用户页面刚注册的用户必须经过管理员的审核才能进行使用。图5-8 监理日志管理系统日志查看模块页面查看日志模块,分为一般用户查询和管理员查看,管理员可以查看所有的用户。本模块可以进行多个条件的查询操作。查询类:public class Search /使用 struts2 的 requestpublic static String Builder(Map map,Class type)Set set = map.keySet();Iterator iterator = set.iterator();String values = null;iterator = set.iterator();String buildString = ;while(iterator.hasNext()St

温馨提示

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

评论

0/150

提交评论