欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

Java Web技術(shù)總結(jié) - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁 » 新聞資訊 » 網(wǎng)站建設(shè) >

Java Web技術(shù)總結(jié)

發(fā)表時(shí)間:2018-6-29

發(fā)布人:葵宇科技

瀏覽次數(shù):49

這篇總結(jié)主要是基于我之前兩個(gè)系列的文章而來。主要是把重要的知識(shí)點(diǎn)用自己的話說了一遍,可能會(huì)有一些錯(cuò)誤,還望見諒和指點(diǎn)。謝謝

更多詳細(xì)內(nèi)容可以查看我的專欄文章:
#JavaWeb技術(shù)世界

https://blog.csdn.net/column/details/21850.html

#Spring與SpringMVC源碼解析
#https://blog.csdn.net/column/details/21851.html

Servlet及相關(guān)類

servlet是一個(gè)接口,它的實(shí)現(xiàn)類有GenericServlet,而httpservlet是GenericServlet的一個(gè)子類,一般我們都會(huì)使用這個(gè)類。

servletconfig是用于保存servlet配置信息的數(shù)據(jù)結(jié)構(gòu),而servletcontext則負(fù)責(zé)保持servlet的上下文,web應(yīng)用啟動(dòng)時(shí)加載web.xml信息于servletconfig中。

Jsp和ViewResolver

jsp頁面需要編譯成class文件并通過tomcat的類加載器進(jìn)行加載,形成servlet實(shí)例,請(qǐng)求到來時(shí)實(shí)際上執(zhí)行的是servlet代碼,然后最終再通過viewresolver渲染成頁面。

filter,listener

filter是過濾器,也需要在web.xml中配置,是責(zé)任鏈?zhǔn)降恼{(diào)用,在servlet執(zhí)行service方法前執(zhí)行。
listener則是監(jiān)聽器,由于容器組件都實(shí)現(xiàn)了lifecycle接口,所以可以在組件上添加監(jiān)聽器來控制生命周期。

web.xml

web.xml用來配置servlet和servlet的配置信息,listener和filter。也可以配置靜態(tài)文件的目錄等。

war包

waWAR包
WAR(Web Archive file)網(wǎng)絡(luò)應(yīng)用程序文件,是與平臺(tái)無關(guān)的文件格式,它允許將許多文件組合成一個(gè)壓縮文件。war專用在web方面 。

JAVA WEB工程,都是打成WAR包進(jìn)行發(fā)布。

典型的war包內(nèi)部結(jié)構(gòu)如下:

webapp.war

| index.jsp

|

|— images

|— META-INF

|— WEB-INF

      |   web.xml                   // WAR包的描述文件

      |

      |— classes

      |          action.class       // java類文件

      |

      |— lib

                other.jar             // 依賴的jar包

                share.jar

tomcat基礎(chǔ)

上一篇文章關(guān)于網(wǎng)絡(luò)編程和NIO已經(jīng)講過了,這里按住不表。

log4j

log4j是非常常用的日志組件,不過現(xiàn)在為了使用更通用的日志組件,一般使用slf4j來配置日志管理器,然后再介入日志源,比如log4j這樣的日志組件。

數(shù)據(jù)庫驅(qū)動(dòng)和連接池

一般我們會(huì)使用class.forname加載數(shù)據(jù)庫驅(qū)動(dòng),但是隨著Spring的發(fā)展,現(xiàn)在一般會(huì)進(jìn)行數(shù)據(jù)源DataSource這個(gè)bean的配置,bean里面填寫你的數(shù)據(jù)來源信息即可,并且在實(shí)現(xiàn)類中可以選擇支持連接池的數(shù)據(jù)源實(shí)現(xiàn)類,比如c3poDataSource,非常方便。

數(shù)據(jù)庫連接池本身和線程池類似,就是為了避免頻繁建立數(shù)據(jù)庫連接,保存了一部分連接并存放在集合里,一般可以用隊(duì)列來存放。

除此之外,還可以使用tomcat的配置文件來管理數(shù)據(jù)庫連接池,只需要簡(jiǎn)單的一些配置,就可以讓tomcat自動(dòng)管理數(shù)據(jù)庫的連接池了。
應(yīng)用需要使用的時(shí)候,通過jndi的方式訪問即可,具體方法就是調(diào)用jndi命名服務(wù)的look方法。

單元測(cè)試

單元測(cè)試是工程中必不可少的組件,maven項(xiàng)目在打包期間會(huì)自動(dòng)運(yùn)行所有單元測(cè)試。一般我們使用junit做單元測(cè)試,統(tǒng)一地在test包中分別測(cè)試service和dao層,并且使用mock方法來構(gòu)造假的數(shù)據(jù),以便跳過數(shù)據(jù)庫或者其他外部資源來完成測(cè)試。

Maven

maven是一個(gè)項(xiàng)目構(gòu)建工具,基于約定大于配置的方式,規(guī)定了一個(gè)工程各個(gè)目錄的用途,并且根據(jù)這些規(guī)則進(jìn)行編譯,測(cè)試和打包。
同時(shí)他提供了方便的包管理方式,以及快速部署的優(yōu)勢(shì)。

Git

git是分布式的代碼管理工具,比起svn有著分布式的優(yōu)勢(shì)。太過常見了,略了。

Json和xml

數(shù)據(jù)描述形式不同,json更簡(jiǎn)潔。

hibernate和mybatis

由于jdbc方式的數(shù)據(jù)庫連接和語句執(zhí)行太過繁瑣,重復(fù)代碼太多,后來提出了jdbctemplate對(duì)數(shù)據(jù)進(jìn)行bean轉(zhuǎn)換。

但是還是差強(qiáng)人意,于是轉(zhuǎn)而出現(xiàn)了hibernate這類的持久化框架。可以做到數(shù)據(jù)表和bean一一映射,程序只需要操作bean就可以完成數(shù)據(jù)庫的curd。

mybatis比hibernate更輕量級(jí),mybatis支持原生sql查詢,并且也可以使用bean映射,同時(shí)還可以自定義地配置映射對(duì)象,更加靈活,并且在多表查詢上更有優(yōu)勢(shì)。

個(gè)人公眾號(hào):程序員黃小斜

微信公眾號(hào)【程序員黃小斜】新生代青年聚集地,程序員成長(zhǎng)充電站。作者黃小斜,職業(yè)是阿里程序員,身份是斜杠青年,希望和更多的程序員交朋友,一起進(jìn)步和成長(zhǎng)!專注于分享技術(shù)、面試、職場(chǎng)等成長(zhǎng)干貨,這一次,我們一起出發(fā)。

關(guān)注公眾號(hào)后回復(fù)“2019”領(lǐng)取我這兩年整理的學(xué)習(xí)資料,涵蓋自學(xué)編程、求職面試、算法刷題、Java技術(shù)學(xué)習(xí)、計(jì)算機(jī)基礎(chǔ)和考研等8000G資料合集。

技術(shù)公眾號(hào):Java技術(shù)江湖

微信公眾號(hào)【Java技術(shù)江湖】一位阿里 Java 工程師的技術(shù)小站,專注于 Java 相關(guān)技術(shù):SSM、SpringBoot、MySQL、分布式、中間件、集群、Linux、網(wǎng)絡(luò)、多線程,偶爾講點(diǎn)Docker、ELK,同時(shí)也分享技術(shù)干貨和學(xué)習(xí)經(jīng)驗(yàn),致力于Java全棧開發(fā)!

關(guān)注公眾號(hào)后回復(fù)“PDF”即可領(lǐng)取200+頁的《Java工程師面試指南》強(qiáng)烈推薦,幾乎涵蓋所有Java工程師必知必會(huì)的知識(shí)點(diǎn)。

相關(guān)案例查看更多