浙江理工大学信息学院本科生创新项目总结报告——云水诗踪-西湖旅游后台管理系统

信息学院本科生创新项目总结报告

 

研究目的与意义

中华文化博大精深,源远流长,在五千多年文明发展中孕育的中华优秀传统文化,积淀着中华民族最深沉的精神追求,代表着中华民族独特的精神标识,是中华民族生生不息、发展壮大的丰厚滋养,是中国特色*植根的文化沃土,是当代中国发展的突出优势,对延续和发展中华文明、促进人类文明进步,发挥着重要作用。

在经济社会高速发展的21世纪,弘扬和发展我国的优秀传统文化更加受到重视。2017年1月,**办公厅、国务院办公厅发布《关于实施中华优秀传统文化传承发展工程的意见》,指出:“文化是民族的血脉,是人民的精神家园。文化自信是更基本、更深层、更持久的力量。中华文化独一无二的理念、智慧、气度、神韵,增添了中国人民和中华民族内心深处的自信和自豪。为建设*文化强国,增强国家文化软实力,实现中华民族伟大复兴的中国梦,实施中华优秀传统文化传承发展工程。”随着居民消费水平的不断提高,旅游文化建设进程的不断开展,我国旅游业正处于蓬勃发展阶段。出游人群规模不断扩张,年内多次出游人群比重不断提升,年内多次出游人群比重不断提升,越来越多的人群选择通过出游的方式来放松自己,领略祖国境内的大好河山和丰厚的文化底蕴,不断推动我国旅游业规模加速扩张。

在传承和发展我国优秀传统文化以及旅游业蓬勃发展的大背景下,本项目组提出将我国优秀传统文化和旅游相结合,即古典诗词和杭州西湖旅游相结合,面向广大青少年儿童,普及优秀传统文化知识,从小培养传承精神,以这种特殊的方式传承和发展诗词文化,让更多的人了解诗词,同时促进西湖旅游的发展,加快经济社会发展。

 

研究内容与总体方案

本系统采用B/S 架构,系统提供三大服务平台:公司管理系统、移动端和门户网站。

移动端使用以下几个基本模块进行开发:

1、  Activity。Activity是用户与Android应用程序交互的接口。

2、  Android Fragment 碎片,它的出现是为了更好展示UI的设计,让程序更加得到充分的展示。Fragment的出现,如程序的主界面包含多个Fragment,使得功能更加简洁明了。

3、 Broadcast Intent Receiver。其作用于消息传递,允许用户申明想要执行一个动作意图,实现了调用者和被调用者之间的解耦作用。

4、Service。开启运行在后台的服务。

5、waterfallStream。其为实现瀑布流的一个布局功能,提供用户以简洁随心的布局界面,使界面简洁美观。

云水诗踪app的后台管理系统采用SSM(SpringBoot + SpringMVC + Mybatis)的框架结构,耦合度低,复用性搞,生命周期成本低,部署快,可维护性好,有利于工程管理,可以快速开发应用而不必先考虑如何设计数据库,为高效编程奠定了基础。便于导入依赖、处理依赖冲突,其无需配置大量配置文件,不与特定数据库耦合,为高效开发奠定了基础。

数据交换格式

数据交换格式采用了Json 和变量。 Json 简单的说就是JavaScript 中的对象和数组。它是一个轻量级的数据交换负载格式,最大限度地减少了 Ajax 通讯的数据量,有利于提高响应速度,大数据情况下性能会有显著提升。通过Spring内置的Json转换器实现对Json的序列化和反序列化。

技术亮点

AR智能识景技术,带来新奇体验

云水诗踪APP结合Dumix AR技术引入西湖特色景点重塑模块。系统可以识别相应景点的图像并呈现该景点的3d模型,将景点再现在应用中。西湖诗踪通过该模块将增强现实技术与诗画西湖相结合,旨在给用户带来更加生动形象的景点观感。

GPS和高德语音导航技术,全球定位系统,使用低频讯号,纵使天候不佳仍能保持相当的讯号穿透性;全球覆盖(高达98%);三维定速定时高精度;快速、省时、高效率;应用广泛、多功能;可移动定位;为景区实时定位导航提供服务。实时的语音导航功能实现西湖的畅快游玩。

CND网站加速服务

CND(Content Delivery Network),即“内容发布与速递网络”,能为企业站点提供更快速、稳定服务的网络架构。通过DNS 负载均衡的技术,判断用户来源就近访问 cache 服务器 取得所需的内容,解决 Internet 网络拥塞状况,提高用户访问网站的响应速度,得到可靠的服务。

RBAC用户访问控制

采用基于角色的访问控制(Role Based Access Control ),对系统操作的各种权限不是直接授予具体的用户,而是在用户集合与权限集合之间建立一个角色集合。将权限与角色相关联,每一种角色对应一组相应的权限。一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。这样做的好处是,不必在每次创建用户时都进行分配权限的操作,只要分配用户相应的角色即可,而且角色的权限变更比用户的权限变更要少得多,这样将极大地简化了用户的权限管理,减少系统的开销。

授权项目分为 user(用户),和 roles(角色),resource(资源)三者关系如下

  • 一个用户可以包含另外一个或者几个角色;

  • 一个角色可以包含另外一个或者几个资源;

  • 一个资源只能被角色包含,资源不可以包含其他,也不可再分。

后台Ajax数据交互

系统后台采用基于JavaScript框架axios 的ajax请求响应,实现数据获取、实现与服务器的异步通信和满足页面局部刷新的需要,减少服务器压力和静态资源的请求次数,极大的提高了用户体验。

 

研究方法

1.文献资料法:

主要采用相关技术和原理学习、实践、整合开发出简单模型,发布测试,然后学习相关技术替换、模型升级优化,使项目更完善,更高效,更完整。

为了解当前企业对用户权限管理的主要需求,先登录一些大型Web应用项目,记录目前用户权限管理的基本方法。对用户权限管理有一个大致的了解,然后分析这个过程中可能存在的权限隐患,加以分析。再查阅相关论文,了解目前解决权限分级问题的主要方法,对这些方法进行研究,看是否存在着漏洞或可以改进的地方,并归纳这些方法是为解决什么类型的权限模型而产生的,并思考根据不同类型的应用,这些方法应该做出哪些修改。

2.行动研究法:

结合实际,在实际的学习环节中,通过个案分析和作品分析等,实现具体的功能,反复测试,及时改进研究措施。

依靠已知的相关技术开发出简单的Java Web登录注册项目,并通过简单的逻辑处理防止未登录用户使用功能,并用AJAX完善了用户体验。将项目以war打包发送到服务器上进行发布并测试。

3.经验总结法:

在实践和研究的基础上,根据课题研究重点,随时积累素材,探索有效措施,总结得失,寻找有效的提高效率和提高实际运用、实践能力的方法。

结合用户反馈和相关知识储备的提升,对项目进行重构,采用Spring Boot框架来实现。掌握JPA的增删查改和分页技术基本掌握。重构Java Web项目为Spring Boot项目并实现用户信息持久化。掌握和理解MVC设计模式、三层架构、DAO模式等设计模式,采用Spring MVC重构项目的控制层。进一步学习了JPA持久层和MyBatis框架,实现对持久层的优化。掌握Spring Security用户信息验证原理,优化用户登录和权限控制。

研究结果

DEMO地址:https://shentuzhigang.top:8443/WestLake/

浙江理工大学信息学院本科生创新项目总结报告——云水诗踪-西湖旅游后台管理系统

浙江理工大学信息学院本科生创新项目总结报告——云水诗踪-西湖旅游后台管理系统

云水诗踪App系统表现层的主要工作是处理客户的请求,控制与客户端的交互,显示请求处理的结果。

系统浏览方式采用B/S模式,系统的浏览方式采用 B/S 模式,浏览器是系统与用户直接交互的层次。使用者通过 Browser(浏览器) 向 Server(服务器)发出请求(Request),这些请求被后台传递到后台Controller(控制器)进行处理,控制器调用Service(业务层)进行业务处理后返还Json数据给网页/移动端。

移动端与后端均采用java编写,Web管理网站则是采用CSS、HTML、JQuery、Ajax、Vue技术来弥补B/S架构中用户体验的不足。前后端交互均采用Json的格式封装数据进行交互。

业务逻辑层

业务逻辑层完成云水诗踪App系统业务功能的模块,它接收Controller(控制器)的调用完成业务都处理。

业务逻辑层实现全部的业务逻辑,业务逻辑是整个系统的引擎,接收表现层(Controller)传来的请求,完成各种业务逻辑的判断和处理。业务逻辑层还能乡下调用后台业务数据的访问控制,这保证了数据库操作只能通过客户端的相关指令并通过业务层校验后。才能对业务数据进行操作,确保了业务数据的安全性。

独立的业务逻辑层能与表现层(Controller),数据访问层(Dao)相解耦,提高系统可扩展性、可维护性。

数据访问层

云水诗踪app通过数据库系统实现系统数据的永久存储,。数据访问层提供数据的查询、更新、修改、删除等功能。

 

参考文献

[1] Java从入门到精通(第4版).明日科技著.清华大学出版社

[2] Java Web从入门到精通(第3版).明日科技著.清华大学出版社

[3] 龙中华.Spring Boot实战派.电子工业出版社

[4] 王松.Spring Boot+Vue全栈开发实战.清华大学出版社

[5] 朱要光.Spring MVC+MyBatis开发从入门到项目实战.电子工业出版社

[6] [美] 凯·S.霍斯特曼著.Java核心技术卷2高级特性(原书11版).陈昊鹏译.机械工业出版社

[7] [美] 梁勇.Java语言程序设计(进阶篇).阿姆斯特丹亚特兰大州立大学著.戴开宇.复旦大学译.机械工业出版社

[8] 杨开振.《深入浅出Spring Boot 2.x》.人民邮电出版社.2018

[9] 张琪.基于角色的权限管理系统的设计与实现.电子科技大学

[10] Bootstrap 官网 https://getbootstrap.com/

[11] Spring Boot官网 https://spring.io/projects/spring-boot