亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        輕量級前后端Web 開發(fā)框架選取及應(yīng)用

        2020-09-10 07:22:44趙曉麗
        科技尚品 2020年12期

        趙曉麗

        摘 要:文章通過對前后端分離思想的理解,對后端jersey框架的闡述,以及對前端框架的對比分析,最終前端選取React+Antd框架。前后端選取框架相結(jié)合,最終搭建輕量級的前后端分離的Web開發(fā)框架,并將開發(fā)框架應(yīng)用于保險(xiǎn)行業(yè),快速開發(fā)風(fēng)勘系統(tǒng),實(shí)現(xiàn)了業(yè)務(wù)功能。

        關(guān)鍵詞:Web;Jersey;React;輕量級;前后端

        隨著信息時(shí)代的快速發(fā)展,各種計(jì)算機(jī)語言、各種信息系統(tǒng)開發(fā)方式都在變革,掌握其他語言的開發(fā)人員,要轉(zhuǎn)為Web開發(fā),而Spring+SpringMVC原理對于轉(zhuǎn)型的程序員來說,很難快速入門。以前的Java Web項(xiàng)目前后端工程整合在一起,漸漸地,許多公司開始把前后端的界限分開,前后端工程師各司其職。針對以上現(xiàn)象,如何快速搭建一個輕量級的前后端分離的Web開發(fā)框架并應(yīng)用于系統(tǒng),成為許多新人及中小公司的首選。文章首先闡述了Web前后端分離思想,其次介紹了輕量級的后端服務(wù)框架jersey,再次闡述了前端框架的選取,最后將輕量級Web框架應(yīng)用于具體保險(xiǎn)行業(yè)項(xiàng)目,快速開發(fā)了系統(tǒng)功能,使項(xiàng)目按期上線應(yīng)用。

        1 Web前后端分離思想

        目前,Web前后端分離開發(fā)架構(gòu)已漸漸成為計(jì)算機(jī)互聯(lián)網(wǎng)項(xiàng)目開發(fā)的業(yè)界標(biāo)準(zhǔn)使用方式,其核心思想就是前端的HTML頁面通過Ajax調(diào)用后端的Restuful Api服務(wù)接口,前后端使用json格式數(shù)據(jù)進(jìn)行交互,最終實(shí)現(xiàn)通信要求[1]。

        1.1 傳統(tǒng)Java Web的缺點(diǎn)

        以前的Java Web項(xiàng)目大多使用JSP作為頁面層展示數(shù)據(jù)給用戶,一般都是Java程序員前后端代碼都要編寫,效率低下,而且靜態(tài)資源和動態(tài)資源全部耦合在一起,使服務(wù)器壓力很大。目前,對互聯(lián)網(wǎng)項(xiàng)目的性能要求越來越高,原始的前后端耦合的架構(gòu)模式已不能滿足現(xiàn)代互聯(lián)網(wǎng)的開發(fā)需要,更需要尋找一種新的前后端解耦的開發(fā)方式,來提升開發(fā)效率及服務(wù)器負(fù)載能力,于是前后端分離的思想應(yīng)運(yùn)而生[2]。

        1.2 前后端分離的優(yōu)勢

        前后端分離既是一種開發(fā)模式,也是一種架構(gòu)模式,其實(shí)現(xiàn)了真正的前后端解耦。前端的Web服務(wù)器存放靜態(tài)資源(CSS、js、字體、圖片等),前端服務(wù)器負(fù)責(zé)控制頁面的引用、跳轉(zhuǎn)及路由,前端頁面異步調(diào)用后端的服務(wù)接口。后端應(yīng)用服務(wù)器使用Tomcat進(jìn)行發(fā)布,作為數(shù)據(jù)提供者,加快了整體響應(yīng)速度。前后端互不干擾,只是簡單的調(diào)用關(guān)系,前端通過Ajax調(diào)用HTTP請求來調(diào)用后端的Restful api。

        具體優(yōu)勢:前后端分工更明確;減少后端服務(wù)器的并發(fā)與負(fù)載壓力;增加代碼的易讀性和維護(hù)性;前后端并行開發(fā),改變強(qiáng)依賴關(guān)系;前端大量的組件代碼得以復(fù)用,提升開發(fā)效率;局部性能提升。前端通過對路由進(jìn)行配置,來實(shí)現(xiàn)頁面的按需加載,改善一起加載網(wǎng)站所有資源的現(xiàn)象,服務(wù)器無需解析前端頁面,在頁面交互和用戶體驗(yàn)上有所提升[3]。

        2 Web服務(wù)端輕量級jersey框架

        2.1 jersey框架簡介

        REST:表述性狀態(tài)轉(zhuǎn)移是一種跨語言、跨平臺的軟件架構(gòu)風(fēng)格,其通過超文本傳輸協(xié)議(HTTP協(xié)議)確定一組約束和屬性(GET、PUT、DELETE、POST),并使用URI協(xié)議來唯一標(biāo)識某個資源發(fā)布出來的接口。REST的簡單、輕量級特點(diǎn)與現(xiàn)行某些架構(gòu)及通信技術(shù)的復(fù)雜性形成鮮明對比,使得構(gòu)建服務(wù)和應(yīng)用變得異常簡單。

        Jersey是一個實(shí)現(xiàn)REST架構(gòu)的web service框架,開源參考實(shí)現(xiàn)用于構(gòu)建RESTful的Web service。其擴(kuò)展了JAX-RS規(guī)范,提供了更多的特性和工具,可以進(jìn)一步簡化RESTful的client和service開發(fā)。對于請求式服務(wù),如DELETE、GET請求,只要給出一個URI即可獲得請求,實(shí)現(xiàn)操作[4]。

        2.2 前端框架選取

        目前,主流前端框架有Angular、Vue、React。除此之外,還有easyui、MintUI等其他框架。

        2.3 三大主流框架比較

        Angular:Angular是一個優(yōu)秀的JavaScript開源的前端框架,使用MVC架構(gòu)模式的單頁面web應(yīng)用而設(shè)計(jì),通過指令擴(kuò)展HTML,且通過表達(dá)式將數(shù)據(jù)綁定到HTML,為開發(fā)者呈現(xiàn)一個更高層次的抽象來簡化Web應(yīng)用的開發(fā)。

        Vue:Vue.js是一套構(gòu)建web數(shù)據(jù)驅(qū)動及用戶頁面的漸進(jìn)式前端開發(fā)框架,Vue采用自底向上增量開發(fā)的設(shè)計(jì)。Vue的目標(biāo)是通過盡可能簡單的API來實(shí)現(xiàn)響應(yīng)的數(shù)據(jù)綁定和組合的視圖組件。

        React:React.js是一個開源的用于構(gòu)建前端用戶界面的JavaScript庫,React應(yīng)用程序的核心是組件,可以將按鈕、輸入框、日期控件等元素作為React組件。組件和組件之間可以嵌套組合,形成更大的組件,以供組合成頁面。

        2.4 選擇React框架及Antd組件庫

        由于React的設(shè)計(jì)思想獨(dú)特,性能出眾,代碼邏輯簡單,目前得到廣泛應(yīng)用,并已經(jīng)成為Web開發(fā)的主流工具。

        Antd基于Ant Design設(shè)計(jì)體系的React UI組件庫,主要用于研發(fā)企業(yè)級中后臺產(chǎn)品,樣式簡潔大方。

        基于以上框架比較,決定選擇React作為前端開發(fā)框架,并采用Antd組件庫[5]。

        3 開發(fā)框架前后端搭建

        3.1 通信原理

        前端開發(fā)利用React原理的Antd組件化的開發(fā)方式,后端采用Jersey框架實(shí)現(xiàn)業(yè)務(wù)功能,輕量級開發(fā)框架前后端通信原理示意圖如圖1所示。

        前端關(guān)注界面展現(xiàn),后端關(guān)注業(yè)務(wù)邏輯,前后端分工明確,職責(zé)清晰。

        3.2 前端開發(fā)環(huán)境搭建

        安裝Node.js環(huán)境(包含npm工具),利用React腳手架create-react-app創(chuàng)建簡單的項(xiàng)目工程。由于開發(fā)應(yīng)用es6語法,所以要安裝相關(guān)依賴Babel,對于各靜態(tài)資源(CSS、圖片、字體等)要安裝相應(yīng)的loader加載器,開發(fā)環(huán)境等各種資源最終要進(jìn)行打包處理,要安裝Webpack相關(guān)依賴,并配置webpack的config文件。對于按需加載、使用html模板、代表壓縮、提取css文件、自動構(gòu)建項(xiàng)目等,都要安裝相應(yīng)的依賴庫,根據(jù)需要按步驟依次進(jìn)行安裝后,開發(fā)環(huán)境基本配置完成。

        3.3 后端發(fā)布服務(wù)

        在Maven中引用jersey相關(guān)的庫,在web.xml中添加配置,引入jersey庫,同時(shí)配置資源加載器,然后完成Servlet的服務(wù)類代碼編寫,最后客戶端調(diào)用web service接口完成通信。

        3.3.1 完成Servlet服務(wù)類

        3.3.2 代碼理解

        在類上面添加了@Path("hello"),代表資源根路徑為hello;在方法hi()上面添加了兩個標(biāo)簽,@GET標(biāo)簽代表該方法接受GET類型請求;@Produces標(biāo)簽代表該方法響應(yīng)的MIME類型為json;啟動tomcat,發(fā)布服務(wù),請求/rest/hello,得到正確的響應(yīng)結(jié)果[6]。

        4 輕量級Web開發(fā)框架應(yīng)用

        基于以上java端的jersey框架和前端的React框架+Antd組件庫,搭建了一套輕量級的前后端分離的Web開發(fā)框架,應(yīng)用于某保險(xiǎn)公司某系統(tǒng),在較短時(shí)間內(nèi)快速響應(yīng)需求,實(shí)現(xiàn)了項(xiàng)目的業(yè)務(wù)功能,得到了用戶的認(rèn)可。

        5 結(jié)語

        通過對前后端分離思想的分析及前后端Web框架介紹與選取,搭建出一套輕量級的前后端開發(fā)框架,并將該框架應(yīng)用于保險(xiǎn)行業(yè)系統(tǒng),快速響應(yīng)項(xiàng)目的開發(fā)需求,順利完成了項(xiàng)目。

        參考文獻(xiàn)

        [1] 劉嵩,李文惠.JavaWEB開發(fā)前后端數(shù)據(jù)解耦合的思考[J].消費(fèi)導(dǎo)刊,2019(43):23-25.

        [2] 朱芝佚.移動主機(jī)Web服務(wù)及其應(yīng)用開發(fā)技術(shù)研究[D].大連:大連海事大學(xué),2016.

        [3] 孟祥雙.前后端分離式WEB應(yīng)用開發(fā)研究[J].電子元器件與信息技術(shù),2019(06):35-37.

        [4] 魏鋼.Web前后端分離模式下SpringMVC在高職JavaWeb教學(xué)中的研究[J].福建電腦,2019(02):44-46.

        [5] 楊穎瑩.高性能Web框架的分析與應(yīng)用[D].北京:北京郵電大學(xué),2012.

        [6] 盧長利.基于MVC模式的Web框架構(gòu)建與應(yīng)用[D].西安:西安電子科技大學(xué),2009.

        jjzz日本护士| 性猛交╳xxx乱大交| 内谢少妇xxxxx8老少交| 国产日韩A∨无码免费播放| 最新日韩人妻中文字幕一区| 极品一区二区在线视频| 精品国产av色一区二区深夜久久 | 一区二区三区国产97| 韩国日本一区二区在线| 中文字幕一精品亚洲无线一区| 成人无码区免费a片www| 亚洲日本无码一区二区在线观看| 三级国产自拍在线观看| 91spa国产无码| 一区二区av日韩免费| 亚洲视频专区一区二区三区| 老师露出两个奶球让我吃奶头| 亚洲中文无码成人影院在线播放| 亚洲精品国产熟女久久| 久久久精品亚洲一区二区国产av| 成人美女黄网站色大免费的| 国产在线精品一区二区在线看| 手机在线看片在线日韩av| 草草影院ccyy国产日本欧美| 97se亚洲国产综合自在线观看| 人妻无码一区二区三区四区| 日日噜噜噜夜夜爽爽狠狠视频| 蜜桃免费一区二区三区| 久久香蕉国产线看观看精品yw | 精品国产一区二区三区AV小说 | 亚洲国产成人va在线观看天堂| 国产精品久久久久久福利| 国产一区二区三区四区五区vm| 一片内射视频在线观看| 国产人妖直男在线视频| 国产乡下妇女做爰| 破了亲妺妺的处免费视频国产| 亚洲国产视频精品一区二区| 精品国产日韩一区2区3区| 国产成人无码一区二区在线播放| 国产精品18久久久久网站|