大学生兼职网的设计与实现_第1页
大学生兼职网的设计与实现_第2页
大学生兼职网的设计与实现_第3页
大学生兼职网的设计与实现_第4页
大学生兼职网的设计与实现_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、广东东软学院本科毕业设计(论文)大学生兼职网的设计与实现Design And Implementation Of College Students Part-Time Job摘要 义务教育的普及,使得人们的文化水平越来也高,大学生的人数也越来越多,因为很多针对大学生需求的app,网站应运而生。很多学生为了减轻家庭的负担,都会选择谋取一些个人技能来赚取他们应得的报酬,但是苦于缺乏资源,很多人都无法找到雇主。因此英雄无用武之地。在这个方面,很多人都会去寻求一个能进行信息互享的平台去寻找自己想要的信息。大学生兼职网就是针对这个现象而开设的一个网站。用户可以登录本网站去发布,或者去检索与自己技能相关的

2、一个兼职。术业有专攻,专业的事情交给专业的人做,这将事半功倍。亦或你有工作,他有时间,那么,两者便能形成交易。通过本系统,我们将搭建一个雇主与雇员之间的合作平台,更主要的是一个信息共享专业平台。通过模块的分类,兼职职位的特点,针对个人的特征去匹配相对应的职位,扩大彼此的交际圈,解决找人难,找工作难的主要矛盾点。B/S结构作为本系统的架构模式,Java语言作为后台服务支撑开发语言,SpringBoot作为一站式解决方案框架,智能化IDE工具Idea,简单实用的Mysql数据库作为存储系统,Thymleaf为页面渲染模板引擎,搭配LayUi为后台静态页面框架,ajax实现局部刷新功能技术,页面美观

3、舒适,快速入门,交互能力强,层次清晰分明,便于维护。 关键词: springboot mysql LayUI Jquery AjaxAbstractWith the popularization of compulsory education, peoples cultural level is getting higher and higher, and the number of college students is also increasing. Because of many apps for college students needs, websites emerge as t

4、he times require. In order to lighten the burden of the family, many students will choose to seek some personal skills to earn their deserved remuneration, but due to the lack of resources, many people are unable to find employers. So heroes have no place. In this respect, many people will seek a pl

5、atform for information sharing to find the information they want. College students part-time network is a website for this phenomenon. There is a specialty in the art industry, and the professional things are handed over to the professional people, which will double the result with half the effort.

6、Or if you have a job and he has time, then a deal can be made between the two. Through this system, we will build a cooperation platform between employers and employees, and more importantly, an information sharing professional platform.Matching the corresponding positions according to the character

7、istics of individuals, expanding their communication circle, and solving the main contradictions of finding people and jobs.B / S structure is the architecture mode of the system, Java language is the backstage service support development language, spring boot is the one-stop solution framework, int

8、elligent ide tool idea, simple and practical MySQL database is the storage system, thymelaf is the page rendering template engine, and layui is the backstage static page framework. Ajax realizes the local refresh function technology, making the page beautiful and comfortable,maintain.Keywords: sprin

9、gboot mysql LayUI Jquery Ajax目录第一章 课题背景与现状11.1 选题背景11.2 课题研究现状11.3 设计方法与研究方案21.4 研究内容2第二章 系统环境介绍32.1 MVC模式32.2 B/S结构42.3 Java42.4 开发框架介绍52.4.1 springboot框架52.4.2 LayUI框架52.4.3 Jquery库62.5 开发工具介绍62.5.1 WebStorm62.6 系统运行环境介绍6第三章 系统的分析和设计83.1 系统分析83.1.1 经济可行性分析83.1.2 技术可行性分析83.1.3 运行可行性分析93.2 系统设计93.2.

10、1 系统需求设计93.2.2 数据库设计103.3 网络现状分析15第四章 系统的实现174.1 后台模块设计174.1.1 企业管理174.1.2 公告管理功能274.1.3 留言管理284.1.4 个人信息修改294.2 前台网站模块设计314.2.1首页314.2.2 首页职位搜索264.2.3 留言功能274.2.4 人才模块29第五章 系统测试385.1 功能测试385.2 可用性测试395.3 系统用例测试395.4 性能测试405.5 测试结果分析40结论41参考文献37 致 谢38第一章 课题背景与现状1.1 选题背景 自从高考制度的产生,我国学生知识水平逐渐高等化,大学创办基

11、数越来越大,人才接纳数量也越来越庞大。根据统计,每年大学生的入学基数已达到百万级,显而易见,大量的求职需求将难以满足。在信息化时代,根本很难像传统一样去一家一家求职,询问岗位要求,找工作越来越难,人才的个人信息难以被企业或者雇主及时知晓,而招聘信息也无法立即让学生们所查阅。因此,求职使得成为当今社会一大重大问题。我们应该利用高科技去解决这个问题,让供需平衡点不再困难。 另外一方面,企业只会在他们力所能及的地方张贴广告,利用了网络的传播性与广泛性,我们基于方便大学生与企业之间形成的雇主雇员关系,推出大学生兼职网,是完全有必要的,并且基于当前形势下,学生们可以花费最短的时间去得到最为广泛的兼职信息

12、,而企业也能够查阅到相应职位所匹配的人才,这种供需关系的匹配势必会得到学生们的追捧,雇主们的大力支持。1.2 课题研究现状在古代,兼职这种模式就已经存在,雇主们不必与他人形成长期的雇佣劳动关系,而能够在短期内完成自己想要的事情,而劳动者则能在自己的空闲时间通过劳动去获得额外的一份报酬,这是一种很普遍存在的一种交易模式。但是,随着网络的普及,科技的兴起,人们为了追求便利性,开始形成网络兼职这一种模式,网络发布兼职信息,打破了以往的模式框架,超出了传统业务的局限性。它的低廉性,易用性,效果显著等等特性得到了很多人的追捧,形成了一种全新的信息发布模式。这是科技社会的一种跃进,更是一种生产力进步的标志

13、。目前,大学生在为了解决自己的生活经济需要的时候,都会选择谋取一份兼职去换取相应的金钱报酬。而网络搜寻兼职信息成为了他们的首选目标,根据市场调查,学生们在搜索信息时,网络搜索达到了90%,而企业为了解决成本,85%也会去选择发布网络兼职信息。因此,提供一个企业与学生们联系的平台势在必行。因为我们可以看见,网络兼职将成为以后的兼职模式趋势。1.3 设计方法与研究方案 本系统采用B/S架构模式,可以让用户通过网络设备,如手机,电脑等使用浏览器访问到该网站,下面是它的一些主要开发框架以及开发工具。操作系统:Windows 10开发工具:IntelliJ IDEA程序语言:Java + Html +

14、Css关系型数据库:MySql数据库可视化工具: SqlYog采用框架技术:SpringBoot框架 + MyBatis Plus + LayUi + Jquery运行环境: CentOS 71.4 研究内容本论文通过剖析论题背景,分析出该论题的研究意义,结合目前相应的开发技术,对项目进行相应的评估,得出项目的执行成功度,最后进行论题的实践,具体设计方面介绍本兼职网的落地实现设计。另外,我们还会对网站的运行时环境进行介绍,分析系统的模块化功能,数据库的具体表设计,数据字典含义,最后进行回归测试,让系统完整落地运行。最后,我们通过整个项目的回想、分析、反省、剖析整个项目的不足之处以及未来的改进之

15、处,放眼未来。第二章 系统环境介绍2.1 MVC模式数据层Model,视图层View,控制层Controller,这三个英文单词的首个字母缩写,称之为MVC模式。那么接下来,我们来对MVC模式进行解释。MVC模式,我们可以将它解释成“外观”,“机制”,“功能/数据”这三层结构。那么具体是什么意思呢,我们举个实际例子进行阐述:倘若家里的一个微波炉,那么我们将它映射到我们现在的MVC模式的话,那么他的外观层,内置转盘等就可以称之为我们的View层,而微波炉的微波产生机制也就是我们的数据层,传输的热能,电能都是供我们去使用的数据,而对这些数据产生加热的做功操作,也就是我们的核心控制器,而且这种机制广

16、泛应用在我们的很多事物中,而且非常实用。在Web开发中,这种架构模式更加常用,因为他的强大之处在于他的每一层都是独立的,我们可以在不更改他的外观上对他进行内置操作的更换,比如更换一个内在功率更大的微波产生器。反应在我们的Web开发上的话,我们不难得出,实体类即是我们的数据层,View层也是我们的可视化层,呈现给用户展示的界面,而控制器便是我们整套系统最为核心的逻辑层,负责数据的组装以及转发等功能。该流程可用图2-1表示。图2-1 控制器流程图2.2 B/S结构B/S架构,Brower/Server模式,也即是浏览器/服务器模式,这是一种自从1996年后,互联网时代崛起而兴起的一种新型用户可视化

17、交互模式。这其实也是一种特殊的C/S模式,而相应的客户端被浏览器取而代之,而由于浏览器的特殊性,使得用户对客户端的依赖性极小,不再需要安装一对一的客户端,只需要任何能浏览网络的浏览器即可。B/S模式的好处,是在于它统一了用户对客户端的依赖性,开发者可以集中精力放在服务端的研发中,所有系统核心功能都集中到服务器中,简化了系统的研发流程,使用与维护成本,同时,也不缺失传统C/S的功能,他同样也能在Web上与数据库等进行数据交互。在这里,我们简单描述下B/S架构的简单工作流程,首先,用户在浏览器上的Url地址栏上键入目标服务器的地址,或者是通过开发者为用户提供的页面表单进行数据交互,用户提交表单,将

18、数据用Get或Post请求发送到服务器上,然后服务器接收到请求,对数据进行处理,并将对请求产生回应,服务器的逻辑处理完毕后,再藉由Controller层对数据与页面进行结合渲染,响应给客户端。总结上面的,我们可以知道,B/S架构下的应用具有分布式应用的特点,他可以随时随地地去查阅,去执行我们的业务;第二,他的扩展性也很强,升级功能,客户端并不需要重新安装升级,我们只需要重心放在服务端即可,同时,维护起来也很方便,由于具有客户端统一性的特点,只需要升级客户端,即可实现所有用户都统一升级更新。另外,由于服务端部署于云端,我们也不再需要顾及丢失或者可移动性数据的不便捷。所以B/S架构是最符合我们设计

19、的架构模式。2.3 Java Java语言,自1995年开始诞生,由Sun公司推出的一款面向对象的开发语言。Java分为三种体系,JavaSE,JavaEE,JaveME,而我们本次选择的为JavaEE体系。Java是基于面向对象的思想体系进行开发的,丢弃了很多C语言或者C+语言中很难理解的指针等概念,并非常友好地为程序员们解决了垃圾回收的问题,这使得Java十分易学。另外,Java也具有可移植性好的特性,只要你安装了Java的运行环境,你就可以将你的Java应用运行在任何系统上,这使得程序员不必再针对于系统重新开发个新版本,极大程度上缩小了开发量。另外,Java也具有高性能这个特点,随着JI

20、T编译器的技术发展,使得Java的性能越来越接近与C+语言。Java设计目标其一也是为了适应动态变化的环境,而Java也恰好满足这个条件,Java能够进行运行时刻的类型检查,能够动态地加载Java类到运行环境中。因此,我们本次的开发语言选择Java来支撑我们的业务结构。2.4开发框架介绍 2.4.1 springboot框架作为一个Java开发者,我相信大家都听过SSH框架,SSM框架,但是这些整合框架都有一个让开发者很头疼的缺点,那就是需要配置很多繁琐的配置文件才能运行起Web应用,开发者浪费太多精力在这些重复劳动上,而为了解决这个痛点,Spring团队旨在“约定大于配置”这个观点,推出了一

21、个一站式方案SpringBoot框架。这个框架解放了开发者的劳动双手,从繁多的配置文件的泥沼中脱离了出来,搭建强大的Maven技术管理工程,只需要一个主函数入口,即可启动Web应用,这是开发者的福利。另外,Spring团队还为开发者带来了一个搭建神器,那就是spring initializr启动器,这是一个可定制化的搭建神器,开发者根据自己的需要进行搭建开发环境。另外,SpringBoot环境还为我们内置了Tomcat服务器,我们无需再关注外在的服务器容器,即可直接运行Web应用。同时,我们还可以将应用打包成jar包,在Java环境即可通过脚本命令启动应用。SpringBoot框架给我们带来了

22、许多便利,因此本次开发采用SpringBoot框架作为我们的开发框架。 2.4.2 LayUI框架LayUI是一款结合自身开发规范编写了一套适配多个前端界面的UI框架,他使用的是原生HTML,CSS,Js的原始组织模式,即拿即用的理念满足了大部分UI界面的使用,它的外面精简美观,体积轻盈,组件丰富,非常适合界面的快速便捷开发。而且,这款框架的学习成本比较低,只要掌握传统前端开发三大件,就能掌握该框架使用,这极大地缩短了我们对框架使用的了解时间以及上手使用时间成本。LayUi这款框架也是开源免费地,并且有专业的论坛去维护它,在使用过程中遇到什么问题都可以去论坛寻找帮助。这对于我们的设计有着极大的

23、优势,因此,我们采用LayUi作为我们的前端界面开发框架是很合适的。 2.4.3 Jquery库Jquery技术就是将Js技术进行多一层的包装,形成一个Js库,开发者可以调用里面的函数去使用Js技术,换句话说,JQuery也是一个简化语法的Js,代码简洁了,可读性以及维护也更加强壮方便了。它倡导“写得少,做的多”的理念深入人心,同时能够在代码量减少的情况下,优化Dom操作,增强事件操作和局部刷新技术Ajax的交互。简单说,Jquery也就是升级版的javaScript,另外它还兼容各种主流浏览器,因此我们选择Jquery也是当之无愧的首选。2.5 开发工具介绍 2.5.1 WebStorm在进

24、行前端页面开发时,我们使用WebStorm这款JavaScript开发工具。因为目前业界上,广大的Js开发者将它称之为“Web前端开发神器”,“最智能的前端IDE工具”等等,这些殊名并非空穴来风,而是真正来自他的强大。WebStorm的优势用一个词语来概括的话,那么就是智能。你会发现它会对业务最新技术的支持是非常及时的,而且快捷键的丰富让你爱不释手,你还可以自定义代码格式化的规范。他的过人之处还有自动代码补全,智能提示,Css重构等等许多强大功能,这对于开发者来说,就宛如拧螺丝多了电转头等,效率得到了极大的提高。而且,WebStorm还可以与其他版本控制软件进行整合,基本上负责了整套开发中的所

25、有流程,因此我们必须要善用它来提高我们的效率。2.5.2 Navicat Navicat,一套能够快速连接Db数据库的管理工具。换句话说,他是一款支持Mysql,Oraacle,PLSQL多种数据库的可视化管理工具,专门辅助开发人员进简化数据库操作和管理成本的合格软件。满足各大开发者以及中小企业的需求,它能够将用户的操作转换为相应的Sql语言去执行,屏蔽了用户直接执行Sql,比如建表,删表,添加数据库等操作,都可以用它来完成。让你以一种安全,简单的管理方式去使用你的数据库。同时,Navicat还开发出了多语言版本,全世界的开发者都可以去使用它。由于他的独特性,在全世界范围得到了广泛的推广并且使

26、用。目前也被公认为最受欢迎最好用的用户管理工具之一。2.5.3 Tomcat运行Web应用,必须要通过服务器作为中间介质作为环境载体运行它, 而根据市面上流行的服务器,如Tomcat,Resin,JBoss,WebLogic等服务器,这些服务器各有优缺点,但是应用领域各有长短,根据分析,我们得出Tomcat是最适合我们当前项目运行环境,现在下面解释他的一些特点。Tomcat是以轻量强悍的特点著称的服务器,一个服务器的内存占用量仅需要10MB左右,他可以运行JSP与Servlet技术的服务器。在SpringBoot框架中也内置了Tomcat服务器,这可得知Tomcat是在全球范围内广泛使用的We

27、b服务器。另外,Tomcat还支持我们去自定义他的一些配置项,比如负载均衡,端口连接数,端口号等等一些常用配置项,还可以直接连接数据库。由于他能处理动态请求,非常适合我们JavaWeb应用的一个运行时环境。2.5.4 IdeaIdea是一款用于可以用作多种开发语言的开发工具,他同样是jetbrains公司旗下产品。是一款以严谨著称的雅典程序员开发的。Idea工具提倡的是智能化,人性化,所以他推出了很多专门为程序员辅助开发的功能,比如代码提示功能,自动补全功能,代码重构,AI代码等,不仅如此,他还整合了许多开发时需要用到的工具,如Git,Svn,Maven等等,在Gui设计上也是富有人性化,提供

28、了多套主题。为了减少程序员的工作,他还有丰富的导航模式,编码辅助,辅助排版,代码检测,对Jsp,Xml的完美支持等。综上所述,我们此次选取的开发工具为Idea,而不是Eclipse。 2.6 系统运行环境介绍运行环境:Windows 10 Jdk1.8 Mysql社区版5.7 Tomcat8.0第三章 系统的分析和设计3.1 系统分析3.1.1 经济可行性分析 通过我们对项目的经济效益分析,我们本次项目为毕业设计,并不产生任何费用去支持我们的项目。主要运行环境只要有电脑即可,而目前的社会体系我们可以知道,基本上所有大学生都配备了一台笔记本电脑,用我们当前的电脑作为运行载体已经绰绰有余,Web服

29、务器选择开源服务器Tomcat,而Mysql社区版等均为免费软件,故本此项目研究不需要考虑经济费用,具有经济可行性。3.1.2 技术可行性分析 根据当前的互联网发展来看,本次系统完全具有技术可行性。下面开始从几个方面进行分析,其一,Java具有跨平台性,Java分为三个版本,而我们此次选择的是JavaEE体系,是完全具有研发技术条件的,能完美适配Web动态环境。其二,在技术层面来讲,我们采用的是SpringBoot一站式解决框架,无须进行多余的代码量开发,即可运行在Web环境下,我们只需要往该框架进行业务逻辑的增加即可,因此保证了此次项目的基本运行。其三,在持久化层,我们采用的是Mybatis

30、 Plus框架,这是一款在Mybatis框架上进行升级的持久化框架,从而解决我们对于数据存储方面的技术难题。其四,搭配Thymeleaf模板渲染引擎,这是一款跟Jsp技术类似的模板引擎,但是他比JSP更加容易上手,而且他的后缀名为.html,这就证明了他并不需要借用Tomcat等服务器进行渲染而可以直接在浏览器上运行。综上所述,我们只要搭配JavaWeb技术,既可以开发出本系统。3.1.3 运行可行性分析根据市面上的电脑,目前的配置都是运行内存4G以上,存储容量在500G左右,而我们的JavaWeb项目根据用不到这么多的资源,另外,只要我们的电脑安装了JRE环境,我们即可运行我们的项目。另外,

31、springboot框架内置了Tomcat服务器,我们只需要在Java环境下,用脚本命令即可启动我们的服务器应用。因此,我们的项目也具有运行可行性。综上所述,我们系统同时满足了经济可行性,技术可行性以及运行可行性,是一个可以进行系统设计的项目。3.2 系统设计3.2.1 系统需求设计本系统分为兼职网前台与管理系统后台两大区域模块,兼职网前台是供学生用户进行兼职信息浏览使用,后台开放了两大角色使用,一个是系统管理员,另外一个是企业用户。学生用户可以在网站前台查看信息,以及对兼职留言,企业用户可以在后台发布兼职信息和查看学生人才信息,而管理员则拥有系统的所有权限。比如对企业用户的增删改查,对兼职信

32、息的增删改查,对网站公告栏的增删改查以及对学生的管理等。可以查看3.2.1图大学生兼职网后台前台企业用户管理员可在人才板留言可在兼职网上留言可查看兼职网公告 查找人才兼职信息管理用户管理兼职信息管理人才管理公告管理图3.2.1 系统图3.2.2 数据库设计数据库的设计是非常严谨的,所以我们在进行表设计之前一定要明确我们的开发规范以及设计规范: 1) 命名规范:Java中的实体类命名规则有驼峰式,那么其实数据库字段名义也有相应的规范。当实体类用驼峰式表示时,我们数据库字段应该用下划线“_”去分割两个语义单词,举个例子,userName为实体类的名称时,我们数据库字段的定义应该为“user_nam

33、e”,这是为了让语义更加明确所定义的一种规范,另外,我们在设计表字段时,一定要严格按照语义进行翻译后,进行命名,不可出现中式英文等拙劣命名,做到见名知义,否则这将在极大程度上降低数据库字段的可读性,提高了维护成本。第二,我们在命名时,一定要避免使用关键字或者保留字。众所周知,Java或者Mysql在为了以后的发展中,保留了某些字段,这就代表了我们在命名时,应当尽量避免使用它们,否则会在开发过程中遇到各种各样的奇怪问题。最后,在命名的时候,应该尽量保持精简的特点,不适用过长字段,不超过32个字符。2) 表规范:模块化建表,是目前最为常见的一种建表规范。因此,我们在建表的时候,应当根据实际先区分好

34、模块化,如管理员表admin,公告表bulletin等,另外,数据表不可以存储过多字段,因为单表字段存储数量过多,会影响索引查询,导致查询性能不好,当系统功能有多模块时,为了使得表名看起来更见名知意,可以使用模块名作为前缀。 3) 字段规范:字段类型规范是指的长度字段类型限制,例如当字段值只有1和0值,不需要使用int类型的长度(11)这样的长度,因为它会浪费Mysql数据库的内存空间,此外,适当的类型使用适当的单位设置,也不应该使用varchar类型来存储任何东西,其次,当有一些字段类型不能为空,必须添加非空这个限制条件。这个领域是规范性。4) 索引规范:索引是优化加快搜索的利器,此外,索引

35、也用于防止脏数据和其他重要的作用,例如作为主键ID增量的插入,我们应该在一个添加索引唯一性的,这样并发情况下,数据库将会为我们加锁,保证数据的正确,而不是让程序插入的脏数据。系统数据库有九张表admin, bulletin, enterprise, follow, job_category, job_wanted,jobs,message_board,student如下表,admin表是一张用来存储管理员信息的表,表3.2.2-1 admin表名称类型大小 允许为空 备注IdInt11不允许主键user_namevarchar255允许姓名passwordvarchar255不允许密码nick

36、_namevarchar255允许昵称emailvarchar255允许邮箱mobilevarchar255允许手机号码create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除下表是公告信息的维护信息表,主要用来存储公告信息用表3.2.2-2 Bulletin表名称类型大小 允许为空 备注IdInt11不允许主键titlevarchar20不允许标题create_timedateti

37、me0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除contentvarchar255不允许内容statusInt1不允许0 禁用 1-启用sub_titlevarchar255允许副标题下表是企业用户表,负责存储企业用户的信息,权限区分于学生与管理员。表3.2.2-3 enterprise表名称类型大小 允许为空 备注IdInt11不允许主键user_namevarchar255允许姓名passwordvarc

38、har255不允许密码nick_namevarchar255允许昵称emailvarchar255允许邮箱mobilevarchar255允许手机号码create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除statusInt1不允许启用与停用 1-启用 0-停用表3.2.2-4 follow表这张表是关注表,记录学生用户关注了哪些企业信息所用名称类型大小 允许为空 备注IdInt11

39、不允许主键create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除student_idInt11不允许学生Identerprise_idint11不允许企业Idjob_category,求职分类表,记录求职分类信息表,是用来区分求职信息分类的模块表。表3.2.2-5 job_category表名称类型大小 允许为空 备注IdInt11不允许主键create_timedatetime0

40、不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除namevarchar255不允许名称Job_wanted,求职关注表,存储用户感兴趣的求职信息用,是一张中间表。表3.2.2-6 Job_wanted表名称类型大小 允许为空 备注IdInt11不允许主键create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人upd

41、ate_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除Student_idint11不允许学生IdJob_idint11不允许求职信息IdJobs表,本系统的核心表之一,用于存储企业发布兼职信息所用,通过此表,可以查询到系统中存储的所有兼职信息表3.2.2-7 Jobs表名称类型大小 允许为空 备注IdInt11不允许主键create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedIn

42、t1不允许是否被删除 0-未被删除 1-被删除category_idint11不允许学生Idtitleint11不允许求职信息Idsubtitilevarchar255允许副标题need_numint11不允许招聘人数salarydecimal10不允许工资requirementvarchar255允许要求statusInt1不允许启用与停用 1-启用 0-停用Message_board表,这个表是为了提供学生留言而用,存储留言板信息。表3.2.2-8 Message_board表名称类型大小 允许为空 备注IdInt11不允许主键create_timedatetime0不允许创建时间upda

43、te_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除contentvarchar255不允许内容userIdint11不允许留言者Idtypeint11不允许0 - 管理员 1-学生 2-企业用户jobsIdint11不允许求职文章IdstatusInt1不允许启用与停用 1-启用 0-停用Student表,我们可知道这是一张学生表,用于存储求职者的信息的表,通俗讲,也是通过网站前台进行注册登录的用户。表3.2.2-9 Student表名称

44、类型大小 允许为空 备注IdInt11不允许主键user_namevarchar255允许姓名passwordvarchar255不允许密码nick_namevarchar255允许昵称emailvarchar255允许邮箱mobilevarchar255允许手机号码create_timedatetime0不允许创建时间update_timedatetime0不允许更新时间create_byvarchar255不允许创建人update_byvarchar255允许更新人deletedInt1不允许是否被删除 0-未被删除 1-被删除statusInt1不允许启用与停用 1-启用 0-停用3.3

45、 网络现状分析由于我国的大学生人数基数较大,一般一所大学每年的学生容量都在五六万左右,因此这对于数据库的存储量有着较大的考验,因此我们做出如下分析: 1. 通过解密算法将信息加密处理存储由于系统是基于在公开服务器网上运行,大批量的学生会进行注册,因此我们应该对他们的信息进行安全加密存储,避免出现信息泄露的时候信息遗漏。提升安全等级,是一种改进策略。2. 利用分流软件分发请求流量当请求量过大时,由于服务器无法承载大批量的数据请求,会导致数服务器崩溃,所以我们应该合理分配请求资源,提高系统的可用性。Nginx服务器是我们的首选措施。因为Nginx的占用资源较小,但是性能强大,所以我们可以利用Ngi

46、nx来为我们的服务器做负载均衡。3. 使用Redis缓存由于系统的特点,数据库需要承受大量的增删改查操作,特别是企业用户在更新兼职信息的时候,数据库需要经常进行更新操作,因此我们要考虑将一些数据进行缓存,比如用户信息等,因为我们可以引入redis中间件。将用户登录的信息缓存在redis中,当用户更新操作时我们再对缓存中的信息做更新,这样子能够拦截大量的数据直接访问数据库,避免数据库被击垮,提高系统的可用性。4. 升级系统系统需要更新,功能必须进行迭代,我们需要根据目前情况,加入实用功能,比如可以增加发送短信给企业等等人性化功能,这样子能够将系统更加强大,使用人数量越来越多。第四章 系统的实现4

47、.1 后台模块设计4.1.1 企业管理企业用户管理:如图4.1,可以对企业用户进行增删改查操作,实现对发布求职信息者的信息管理,同时,还可以禁用该企业用户的登录操作,或者删除它。如果用户密码忘记了,还可以让上级管理员辅助重置密码。 图 公告管理功能 如4.2图,管理员需要维护网站的公告,时刻让来访者知道的动态,公告的内容主要分为是最近发生的事情,或者某些温馨提示等,操作跟企业管理相似。图 留言管理留言管理,主要是对学生的留言内容进行管理,通过学生们的留言,可以对兼职信息的真假起到一个辅助鉴别作用,这样子可以对发布该信息的企业用户进行操作,如图4.3,具体可以看以

48、下代码 图4.3 /* * 用户删除 */ RequestMapping(value = /removeById) ResponseBody public ResultData removeById(RequestBody MessageBoard messageBoard) if (messageBoard.getId() = null) return new ResultData(WebSiteCode.FAILED, Id不能为空!); boolean flag = messageBoardService.removeById(messageBoard.getId(); if (flag

49、) return new ResultData(WebSiteCode.SUCCESS, 删除成功!); return new ResultData(WebSiteCode.FAILED, 删除失败!); /* * 批量删除用户 */ RequestMapping(value = /removeBatch) ResponseBody public ResultData removeBatch(RequestBody List ids) if (CollectionUtils.isEmpty(ids) return new ResultData(WebSiteCode.FAILED, Id数组不

50、能为空!); boolean b = messageBoardService.removeByIds(ids); if (b) return new ResultData(WebSiteCode.SUCCESS, 删除成功!); return new ResultData(WebSiteCode.FAILED, 删除失败!); 4.1.4 个人信息修改如图4.4,我们需要进行密码,个人信息等修改,这个操作可以让我们自主编辑个人信息,具体代码可以看下面 图4.4 RequestMapping(value = /updateInfo) ResponseBody public ResultData

51、update_info(RequestBody ReqUserVo reqUserVo, HttpServletRequest request) Admin temp = new Admin(); /判断密码 if (StringUtils.isNotBlank(reqUserVo.getOldPassword() /校验密码 Admin oldUser = adminService.getById(reqUserVo.getId(); boolean b = StringUtils.equals(reqUserVo.getOldPassword(), oldUser.getPassword(); if (!b) return new ResultData(WebSiteCode.FAILED, 对不起,旧密码校验不通过!); temp.setPassword(reqUserVo.getNewPassword(); BeanUtils.copyProperties(reqUserVo, temp); if (String

温馨提示

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

评论

0/150

提交评论