自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Jooby框架簡(jiǎn)化Java Web開(kāi)發(fā)流程

譯文
開(kāi)發(fā) 后端
這套框架能夠?qū)崿F(xiàn)模塊化無(wú)狀態(tài)開(kāi)發(fā)流程,從而使其更易進(jìn)行規(guī)模擴(kuò)展并提供易于上手的學(xué)習(xí)曲線及使用門檻。

【51CTO.com快譯】說(shuō)起Web開(kāi)發(fā)工作,Ruby擁有Sinatra框架而Node.js擁有Express.js。如今,Java也擁有了自己的微Web框架——Jooby。

作為Edgar Espina開(kāi)發(fā)出的成果,Jooby提供模塊化無(wú)狀態(tài)應(yīng)用程序開(kāi)發(fā)機(jī)制,且能夠使用包括Netty、Jetty以及Undertow在內(nèi)的多種NIO(即非阻塞IO)服務(wù)器。

[[162494]]

根據(jù)Espina的說(shuō)法,Jooby的核心取向在于“簡(jiǎn)化”。“盡管Java是一種簡(jiǎn)單而易于學(xué)習(xí)的編程語(yǔ)言,但利用Java構(gòu)建Web應(yīng)用程序則是一項(xiàng)艱巨的挑戰(zhàn),”他通過(guò)一封郵件指出。“Java社區(qū)已經(jīng)做出大量工作,旨在簡(jiǎn)化Web應(yīng)用程序的開(kāi)發(fā)流程……然而相較于Ruby或者Node,利用Java開(kāi)發(fā)Web應(yīng)用程序仍然比較困難。Jooby的出現(xiàn)正是為了彌合這一空白,并通過(guò)提供客觀、簡(jiǎn)單且易于學(xué)習(xí)的微Web框架簡(jiǎn)化Java環(huán)境下的Web開(kāi)發(fā)任務(wù)。”

Jooby的核心在于模塊,這些模塊的構(gòu)建目的在于從外部庫(kù)中提取功能。“這些模塊非常精簡(jiǎn)且能夠通過(guò)多種方式對(duì)外部庫(kù)進(jìn)行引導(dǎo)與配置,但它們并不會(huì)帶來(lái)新的抽象層或者通過(guò)定制化API實(shí)現(xiàn)庫(kù)內(nèi)功能的訪問(wèn)。相反,它們可以直接依原樣對(duì)各類庫(kù)組件進(jìn)行提取,”Espina表示。“這也是Jooby與其它Java Web框架之間的***差別所在。”

Jooby提供多種默認(rèn)選項(xiàng)以解決應(yīng)用程序開(kāi)發(fā)工作中的各類典型問(wèn)題,例如數(shù)據(jù)庫(kù)訪問(wèn)、驗(yàn)證、會(huì)話、模板引擎以及電子郵件等等。這使其擁有極為出色的易用性,Espina指出,“但與此同時(shí),它也擁有相當(dāng)優(yōu)秀的靈活性與模塊化程度,經(jīng)驗(yàn)豐富的用戶能夠?qū)⒉煌K進(jìn)行混合與匹配,從而滿足自身實(shí)際需要甚至編寫自己的整合方案。”

Jooby當(dāng)中的無(wú)狀態(tài)應(yīng)用程序開(kāi)發(fā)機(jī)制使其能夠在不造成任何重大影響的前提下實(shí)現(xiàn)規(guī)模擴(kuò)展,特別是在開(kāi)發(fā)人員配合頭/JWT(即JSON Web Token)驗(yàn)證機(jī)制構(gòu)建REST API的情況下。當(dāng)然,在某些用例當(dāng)中,開(kāi)發(fā)人員可能需要保存用戶信息。“對(duì)于這類用例,大家可以使用HTTP會(huì)話,”Espina解釋稱。

Jooby提供一套內(nèi)存內(nèi)HTTP會(huì)話,但開(kāi)發(fā)人員也可以選擇其它不同后端,例如Redis、HazelCast以及MongoDB。該HTTP會(huì)話的設(shè)計(jì)傾向?yàn)楸M可能精簡(jiǎn),同時(shí)要求開(kāi)發(fā)人員認(rèn)真考量是否要加以使用,因?yàn)槠渲辉试S匹配原語(yǔ)與字符串這兩類數(shù)據(jù)。

這套框架擁有兩套編程模式。其一為腳本編程模式,在這里開(kāi)發(fā)人員能夠?qū)?yīng)用程序定義并編寫為單一文件。而對(duì)于大型且復(fù)雜度較高的應(yīng)用程序,Jooby支持MVC。“在這里,大家可以將自己的應(yīng)用程序拆分為多個(gè)層,并創(chuàng)建一個(gè)或者多個(gè)控制器類,”Espina告訴我們。

Jooby面世至今已經(jīng)有大約18個(gè)月了,而其1.0.0正式版本預(yù)計(jì)將在今年年初發(fā)布。面向Java 8以及更高版本,Jooby還能夠與Nashorn項(xiàng)目協(xié)作,這意味著我們可以將Jooby擴(kuò)展至JavaScript開(kāi)發(fā)領(lǐng)域。“這是一套Java框架,因此其始終運(yùn)行在JVM之上; 但從開(kāi)發(fā)人員的角度來(lái)看,它也可以作為一套JavaScript框架發(fā)揮作用,”Espina指出,他還計(jì)劃在未來(lái)逐步加入對(duì)其它JVM語(yǔ)言的支持能力。

原文標(biāo)題:Jooby framework simplifies Java Web development

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

責(zé)任編輯:王雪燕 來(lái)源: 51CTO
相關(guān)推薦

2010-05-24 09:47:32

AjaxAjax框架

2009-06-29 15:28:00

TableModelSwing開(kāi)發(fā)

2009-06-18 12:06:30

Java Web開(kāi)發(fā)框

2009-09-03 16:52:44

Java Web開(kāi)發(fā)框

2012-10-08 14:01:54

ASP.NETWebC

2010-04-30 09:19:05

Servlet 3.0

2009-10-28 12:39:33

Java EE無(wú)框架

2009-06-25 17:14:59

JSF框架

2022-04-13 08:00:00

Hilla開(kāi)發(fā)Java

2009-05-12 09:54:09

JavaRestCoC

2013-06-04 16:59:42

iOS開(kāi)發(fā)iOS工具移動(dòng)開(kāi)發(fā)

2020-09-24 23:01:35

TensorFlow數(shù)據(jù)機(jī)器學(xué)習(xí)

2012-03-29 13:17:27

GoogleWEB

2010-11-17 12:59:52

2010-05-19 14:38:11

Web開(kāi)發(fā)框架Web層

2021-11-02 15:07:22

Web前端開(kāi)發(fā)

2011-11-25 14:29:08

JavaWeb開(kāi)源框架

2012-06-12 13:33:38

HTML5

2015-11-17 13:15:23

Apache開(kāi)發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)