国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

大學(xué)生旅游服務(wù)平臺設(shè)計與實現(xiàn)

2019-09-10 07:22張昕宇楊清文劉蘭梁弼
現(xiàn)代信息科技 2019年1期
關(guān)鍵詞:大學(xué)生

張昕宇 楊清文 劉蘭 梁弼

摘? 要:隨著旅游業(yè)的快速發(fā)展,喜歡旅游的大學(xué)生越來越多,但大學(xué)生的時間和經(jīng)濟(jì)有限。為了幫助大學(xué)生旅游愛好者用盡量少的時間和盡量低的成本獲得優(yōu)質(zhì)的旅游體驗,本文采用SSM(Spring+SpringMVC+MyBatis)及HTML5等技術(shù)來開發(fā)面向大學(xué)生的旅游服務(wù)平臺。實踐證明,所開發(fā)的平臺具有良好的可擴(kuò)展性和可維護(hù)性,并且大學(xué)生體驗良好。

關(guān)鍵詞:大學(xué)生;旅游服務(wù)平臺;SSM;HTML5

中圖分類號:TP311.52? ? ? 文獻(xiàn)標(biāo)識碼:A 文章編號:2096-4706(2019)01-0016-03

Design and Implementation of Tourism Service Platform for College Students

ZHANG Xinyu,YANG Qingwen,LIU Lan,LIANG Bi

(School of Intelligent Manufacturing,Sichuan University of Arts and Science,Dazhou? 635000,China)

Abstract:With the rapid development of tourism,more and more college students like tourism,but their travel time and economy are limited. In order to help college students’tourism enthusiasts obtain high-quality tourism experience with as little time and as little cost as possible,this paper develop a set of tourism service platform for college students using SSM(Spring MVC + Spring + MyBatis),HTML5 and other technology. Practice has proved that the platform developed in this paper has good scalability and maintainability,and college students have a good experience.

Keywords:college students;tourism platform;SSM;HTML5

0? 引? 言

隨著旅游業(yè)和社會經(jīng)濟(jì)的迅速發(fā)展,大學(xué)生已成為我國旅游業(yè)消費(fèi)群體的重要組成部分,但由于旅游消費(fèi)水平和出游時間有限,大部分學(xué)生在選擇旅游產(chǎn)品和確定旅游目的地時都會猶豫不決[1]。為了向大學(xué)生旅游愛好者提供更劃算、更優(yōu)質(zhì)的旅游體驗,開發(fā)專門面向大學(xué)生的旅游服務(wù)平臺十分必要。本文采用多層架構(gòu)模式來設(shè)計該平臺,并將其劃分為五層(即表示層、控制層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層、數(shù)據(jù)庫層)。前端使用HTML5+CSS3、JS、Ajax等技術(shù)來設(shè)計,后臺則使用SSM框架技術(shù)實現(xiàn),前后臺之間的數(shù)據(jù)通信則在jQuery中使用Ajax來向后臺發(fā)送異步請求,并通過JSON來接收后臺返回的數(shù)據(jù),再通過jQuery顯示輸出。這可以效增強(qiáng)前后臺數(shù)據(jù)的通信能力,提高平臺的響應(yīng)速度,進(jìn)而增強(qiáng)用戶體驗。

1? 技術(shù)簡介

1.1? Spring

Spring是Java中應(yīng)用最廣的應(yīng)用程序框架,它的基本理念包括IoC(Inversion of Control 控制反轉(zhuǎn))和AOP(Aspect Oriented Programming 面向切面編程)[2]。傳統(tǒng)Java程序設(shè)計中,開發(fā)人員直接在對象內(nèi)部通過new創(chuàng)建對象,是程序主動去創(chuàng)建依賴對象;而IoC有專門容器來創(chuàng)建這些對象,即由IoC容器來控制對象的創(chuàng)建。AOP是通過預(yù)編譯方式和運(yùn)行期動態(tài)代理實現(xiàn)程序功能的統(tǒng)一維護(hù)的一種技術(shù),利用AOP可以對業(yè)務(wù)邏輯的各個部分進(jìn)行隔離,從而使得業(yè)務(wù)邏輯各部分之間的耦合度降低。

1.2? Spring MVC

Spring MVC是模型-視圖-控制器(MVC)的Web框架建立在中央前端控制器,它負(fù)責(zé)發(fā)送每個請求到合適的處理程序,使用視圖來返回響應(yīng)結(jié)果[3]。它是Spring產(chǎn)品組合的一部分,具有Spring IoC容器緊密結(jié)合Spring松耦合等特點,因此擁有Spring的所有優(yōu)點。Spring MVC框架并不知道使用的視圖,所以不會強(qiáng)迫開發(fā)者只使用JSP技術(shù)。它分離了控制器、模型對象、過濾器以及處理程序?qū)ο蟮慕巧?,這種分離使其更容易進(jìn)行定制。

1.3? MyBatis

MyBatis是一款優(yōu)秀的持久層框架,它支持定制化SQL、存儲過程以及高級映射,避免了幾乎所有的JDBC代碼和手動設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis可以使用簡單的XML或注解來配置和映射原生信息,將接口和Java的POJOs(Plain Ordinary Java Objects,普通的Java對象)映射到數(shù)據(jù)庫表。相對Hibernate和Apache OJB等“一站式”O(jiān)RM解決方案而言,MyBatis是一種“半自動化”的ORM實現(xiàn)[4]。

1.4? HTML5

HTML5是萬維網(wǎng)的核心語言、標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用超文本標(biāo)記語言(HTML)的第五次重大修改。HTML5的設(shè)計目的是為了在移動設(shè)備上支持多媒體,新的語法特征被引進(jìn)以支持這一點,如video、audio和canvas標(biāo)記。HTML5還引進(jìn)了新的功能,可以真正改變用戶與文檔的交互方式[5]。HTML5被認(rèn)為是HTML,CSS和JavaScript結(jié)合的產(chǎn)物,這三者都是可靠的技術(shù),并且在HTML5規(guī)范下組織為一個整體,HTML負(fù)責(zé)結(jié)構(gòu),CSS負(fù)責(zé)在屏幕上呈現(xiàn)該結(jié)構(gòu)和內(nèi)容,而JavaScript負(fù)責(zé)其余一些極為重要的工作。

2? 平臺設(shè)計

2.1? 平臺功能設(shè)計

本文設(shè)計的大學(xué)生旅游服務(wù)平臺分為前臺和后臺兩部分,前臺為大學(xué)生用戶提供各種服務(wù),包括旅游景點欣賞、旅游產(chǎn)品展示、旅游產(chǎn)品購買、個人信息管理等功能;后臺用于對平臺中數(shù)據(jù)進(jìn)行管理,包括用戶選購、支付退款、產(chǎn)品信息、旅游景點等信息管理,具體功能劃分如圖1所示。

其中,前臺的旅游產(chǎn)品展示模塊用來向用戶展示當(dāng)前熱門的旅游產(chǎn)品,讓用戶能快速挑選到自己希望購買的產(chǎn)品,為節(jié)省用戶時間。旅游景點欣賞模塊可以使用戶提前欣賞到各地的旅游信息,并訂購到自己感興趣的旅游產(chǎn)品;旅游推薦模塊中設(shè)計了四種推薦方式,第一,熱門推薦,通過記錄用戶點擊次數(shù),將點擊率高的景點顯示在主頁;第二,用戶偏好推薦,通過記錄用戶歷史的選擇偏好來進(jìn)行旅游產(chǎn)品的推薦;第三,熱門城市推薦,通過記錄城市的點擊率,向用戶推薦點擊率高的城市景點;第四,基于物品的的協(xié)同過濾推薦,根據(jù)所有用戶的歷史偏好數(shù)據(jù),計算物品之間的相似性,然后把與用戶喜歡的物品類似的產(chǎn)品推薦給用戶,建立每個用戶的私人定制。后臺的景點管理模塊完成對后臺景點數(shù)據(jù)的增刪改查操作,社區(qū)管理模塊用于用戶社區(qū)信息操作,其主要功能包括置頂、加精、刪除、管理用戶發(fā)表的帖子。

2.2? 平臺架構(gòu)設(shè)計

本文設(shè)計的大學(xué)生旅游服務(wù)平臺采用五層架構(gòu)模式設(shè)計,其架構(gòu)設(shè)計如圖2所示[6]。

由圖2可知,表示層通過頁面Page的方式讓用戶發(fā)送請求給后臺,并將后臺傳輸?shù)臄?shù)據(jù)實時展現(xiàn)給用戶,從而實現(xiàn)數(shù)據(jù)可視化,該層功能主要通過Ajax、HTML5等技術(shù)來實現(xiàn)??刂茖油ㄟ^控制器Controller來接收并處理表示層傳輸?shù)恼埱笮畔?,同時也負(fù)責(zé)會話管理,以及將業(yè)務(wù)邏輯層處理后的結(jié)果返回給表示層,該層功能主要由Spring MVC技術(shù)負(fù)責(zé)完成。業(yè)務(wù)邏輯層主要負(fù)責(zé)處理系統(tǒng)的實際業(yè)務(wù)邏輯功能,如用戶選購功能、用戶管理功能等,這些功能通過Spring相關(guān)技術(shù)來實現(xiàn),并使用Spring IoC有效管理這些功能所對應(yīng)的業(yè)務(wù)Bean。數(shù)據(jù)持久層完成對象關(guān)系映射,實現(xiàn)數(shù)據(jù)持久化,并負(fù)責(zé)對后臺數(shù)據(jù)進(jìn)行CRUD操作,該層功能使用MyBatis技術(shù)來實現(xiàn)。數(shù)據(jù)庫層負(fù)責(zé)本平臺數(shù)據(jù)的管理功能,它通過MySQL數(shù)據(jù)庫工具來實現(xiàn)。

3? 平臺實現(xiàn)

3.1? 表示層

本文設(shè)計的大學(xué)生旅游服務(wù)平臺前端頁面使用HTML5+ CSS3、JS以及Ajax技術(shù)實現(xiàn),通過Ajax發(fā)送異步請求,獲得從后臺返回的數(shù)據(jù),并在前端頁面進(jìn)行加載。其中,旅游產(chǎn)品數(shù)據(jù)加載將相關(guān)數(shù)據(jù)從后臺數(shù)據(jù)庫取出,然后通過Ajax和jQuery將相應(yīng)的數(shù)據(jù)加載到頁面中,以獲得顯示效果,其實現(xiàn)過程的核心代碼如下。

$.ajax({ url: "/love/index/index.do", type: 'POST',? data:{ "async":true },

success: function(data){ if (data.code == "0") { analysis(data); }

else {? Alert(data.msg); } }, error : function() { alert(“failWS”); } });

3.2? 控制層

本文設(shè)計的大學(xué)生旅游服務(wù)平臺的控制層使用Spring MVC框架來實現(xiàn),該層的主要功能是接收來自前端的請求并完成對數(shù)據(jù)的控制轉(zhuǎn)發(fā)。以下是主頁請求數(shù)據(jù)的關(guān)鍵代碼。

@PostMapping("index") @ResponseBody

public ResultVO index(@RequestParam(value="async",required=false) boolean async){

return ResultVOUtil.success(tyerService.listHot()); }

3.3? 業(yè)務(wù)邏輯層

本文設(shè)計的大學(xué)生旅游服務(wù)平臺的業(yè)務(wù)邏輯層使用Spring注入的方式,減少了XML配置和Java代碼,同時利用Spring IOC容器自動管理這些業(yè)務(wù)邏輯Bean,其中處理用戶注冊的主要代碼如下。

@Service? public class UserService{

@Autowired? private UserMapper userMapper;

public void regist(UserRegisterForm userRegister Form){

userMapper.regist(userRegisterForm); } }

3.4? 數(shù)據(jù)持久層

本文設(shè)計的大學(xué)生旅游服務(wù)平臺的數(shù)據(jù)持久層使用MyBatis來實現(xiàn),通過在XML文件中進(jìn)行配置,實現(xiàn)對象與數(shù)據(jù)庫中表的自動映射,使用SQL語句對數(shù)據(jù)庫中數(shù)據(jù)進(jìn)行增刪改查,完成數(shù)據(jù)持久化操作。以下為用戶管理的映射配置核心代碼[7]。

<mapper namespace="net.messi.travel.mapper.UserMapper"

<resultMap type="net.messi.travel.dataobj.User" id="userMap">

<id property="id" column="id"/>

<result property="username" column=" username"/>......</resultMap>

<select id="getUserByPhone" parameterType= "String" resultType="user">

select * from user where phone=#{phone}</select>......</select>

<insert id="regist" parameterType="userRegisterForm"> insert into user

values(null,#{username},#{password},#{phone},#{email},#{isAdmin},null,null)

</insert> ……</mapper>

3.5? 數(shù)據(jù)庫層

本文設(shè)計的大學(xué)生旅游服務(wù)平臺使用MySQL數(shù)據(jù)庫系統(tǒng)來存儲和管理相關(guān)數(shù)據(jù),主要數(shù)據(jù)表包括:輪播廣告表carouselAds、bank表bankinfo、日程表daytrip、feesofdescriptioon費(fèi)用說明、homoter行程表、hot熱度表、orders訂單表、playways熱門活動表、recommend推薦表、startdate起始日期表、tyer旅游產(chǎn)品表、user用戶表、warmprompt溫馨提示表等。

4? 效果展示

上述所有功能實現(xiàn)后便得到了大學(xué)生旅游服務(wù)平臺,其總體效果如圖3所示。

5? 結(jié)? 論

本文使用SSM、HTML5、Ajax等技術(shù)開發(fā)了面向大學(xué)生的旅游服務(wù)平臺,此平臺為在校大學(xué)生旅游愛好者提供實惠的旅游產(chǎn)品和優(yōu)質(zhì)的旅游攻略。同時,平臺采用多層架構(gòu)模式進(jìn)行設(shè)計,提高了系統(tǒng)的可擴(kuò)展性和可維護(hù)性。并且平臺前端界面設(shè)計友好,頁面板塊劃分清晰,方便用戶瀏覽,可以有效提高用戶體驗。

參考文獻(xiàn):

[1] 李亞娟,王海峰.基于移動平臺的旅游系統(tǒng)的開發(fā)與設(shè)計 [J].電子設(shè)計工程,2018,26(17):85-89.

[2] 梁弼,王光瓊,鄧小清.基于Spring框架的Web應(yīng)用輕量級3S解決方案 [J].西華大學(xué)學(xué)報(自然科學(xué)版),2018,37(3):78-82.

[3] Liang B.The study and application of the new control layer for enterprise-class web applications [J].Journal of Computers,2017,28(6):151-162.

[4] 王梓,夏凱.基于SSM框架的水質(zhì)監(jiān)測數(shù)據(jù)管理系統(tǒng)研究 [J].計算機(jī)時代,2018(7):25-27+31.

[5] 王媛.基于HTML5技術(shù)的時空聯(lián)合目標(biāo)軌跡動態(tài)可視化技術(shù) [J].科學(xué)技術(shù)與工程,2018,18(29):98-103.

[6] Liang B. Study on a Novel and Lightweight Five-layer Architecture and Its Application [C]// ICEESE2016,中國廣東廣州,2016:246-251.

[7] 梁弼.一種簡捷的數(shù)據(jù)持久層解決方案 [J].現(xiàn)代電子技術(shù),2016,39(14):84-86+91.

猜你喜歡
大學(xué)生
第十六屆大學(xué)生年度人物
大學(xué)生就業(yè)趨勢
大學(xué)生“雙創(chuàng)”進(jìn)行時
暑假調(diào)查 45%的大學(xué)生僅給自己放十天假
黨中央給大學(xué)生留下啥印象?
新學(xué)期大學(xué)生網(wǎng)球裝備精選
崇仁县| 沈丘县| 昂仁县| 平谷区| 通渭县| 玉山县| 宣城市| 永平县| 泰兴市| 天门市| 临泽县| 信丰县| 康乐县| 乐清市| 新密市| 隆昌县| 韩城市| 湘西| 瑞丽市| 乡城县| 湖南省| 大冶市| 阿拉善盟| 乳源| 滕州市| 抚顺县| 大姚县| 厦门市| 盐津县| 大丰市| 天等县| 正宁县| 清新县| 石楼县| 衡东县| 宝兴县| 五家渠市| 靖州| 罗江县| 紫金县| 新郑市|