欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

十五道tomcat面試題,為數(shù)不多的機(jī)會(huì)!

 更新時(shí)間:2021年08月11日 11:51:11   作者:Cs 挽周  
這篇文章主要介紹了十五道tomcat面試題,Tomcat的本質(zhì)是一個(gè)Servlet容器。一個(gè)Servlet能做的事情是:處理請(qǐng)求資源,并為客戶(hù)端填充response對(duì)象,需要的朋友可以參考下

一. Tomcat的缺省端口是多少,怎么修改?

  • 找到Tomcat目錄下的conf文件夾
  • 進(jìn)入conf文件夾里面找到server.xml文件
  • 打開(kāi)server.xml文件
  • 在server.xml文件里面找到下列信息
<!-- port="8080"改成你想要的端口 -->
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" uriEncoding="utf-8"/>

二. Tomcat 有哪幾種Connector 運(yùn)行模式(優(yōu)化)?

  • bio:傳統(tǒng)的Java I/O操作,同步且阻塞IO。
maxThreads="150" Tomcat使用線(xiàn)程來(lái)處理接收的每個(gè)請(qǐng)求。這個(gè)值表示Tomcat可創(chuàng)建的最大的線(xiàn)程數(shù)。默認(rèn)值200??梢愿鶕?jù)機(jī)器的時(shí)期性能和內(nèi)存大小調(diào)整,一般可以在400-500。最大可以在800左右。minSpareThreads="25" Tomcat初始化時(shí)創(chuàng)建的線(xiàn)程數(shù)。默認(rèn)值4。如果當(dāng)前沒(méi)有空閑線(xiàn)程,且沒(méi)有超過(guò)maxThreads,一次性創(chuàng)建的空閑線(xiàn)程數(shù)量。Tomcat初始化時(shí)創(chuàng)建的線(xiàn)程數(shù)量也由此值設(shè)置。maxSpareThreads="75" 一旦創(chuàng)建的線(xiàn)程超過(guò)這個(gè)值,Tomcat就會(huì)關(guān)閉不再需要的socket線(xiàn)程。默認(rèn)
值50。一旦創(chuàng)建的線(xiàn)程超過(guò)此數(shù)值,Tomcat會(huì)關(guān)閉不再需要的線(xiàn)程。線(xiàn)程數(shù)可以大致上用 “同時(shí)在線(xiàn)人數(shù)每秒用戶(hù)操作次數(shù)系統(tǒng)平均操作時(shí)間” 來(lái)計(jì)算。acceptCount="100" 指定當(dāng)所有可以使用的處理請(qǐng)求的線(xiàn)程數(shù)都被使用時(shí),可以放到處理隊(duì)列中的請(qǐng)
求數(shù),超過(guò)這個(gè)數(shù)的請(qǐng)求將不予處理。默認(rèn)值10。如果當(dāng)前可用線(xiàn)程數(shù)為0,則將請(qǐng)求放入處理隊(duì)列中。這個(gè)值限定了請(qǐng)求隊(duì)列的大小,超過(guò)這個(gè)數(shù)值的請(qǐng)求將不予處理。connectionTimeout="20000" 網(wǎng)絡(luò)連接超時(shí),默認(rèn)值20000,單位:毫秒。設(shè)置為0表示永不超時(shí),
這樣設(shè)置有隱患的。通??稍O(shè)置為30000毫秒。
  • nio:JDK1.4開(kāi)始支持,同步阻塞或同步非阻塞IO。

指定使用NIO模型來(lái)接受HTTP請(qǐng)求protocol="org.apache.coyote.http11.Http11NioProtocol" 指定使用NIO模型來(lái)接受HTTP請(qǐng)求。默認(rèn)是BlockingIO,配置為protocol="HTTP/1.1"acceptorThreadCount="2"使用NIO模型時(shí)接收線(xiàn)程的數(shù)目。

  • aio(nio.2):JDK7開(kāi)始支持,異步非阻塞IO。
  • apr:Tomcat將以JNI的形式調(diào)用Apache HTTP服務(wù)器的核心動(dòng)態(tài)鏈接庫(kù)來(lái)處理文件讀取或網(wǎng)絡(luò)傳輸操作,從而大大地 提高Tomcat對(duì)靜態(tài)文件的處理性能。
<!-- protocol 啟用 nio模式,(tomcat8默認(rèn)使用的是nio)(apr模式利用系統(tǒng)級(jí)異步io) -->
<!-- minProcessors最小空閑連接線(xiàn)程數(shù)-->
<!-- maxProcessors最大連接線(xiàn)程數(shù)-->
<!-- acceptCount允許的最大連接數(shù),應(yīng)大于等于maxProcessors-->
<!-- enableLookups 如果為true,requst.getRemoteHost會(huì)執(zhí)行DNS查找,反向解析ip對(duì)應(yīng)域名或主機(jī)名-->
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" 
connectionTimeout="20000" 
redirectPort="8443" 
maxThreads="500" 
minSpareThreads="100"
maxSpareThreads="200" 
acceptCount="200" 
enableLookups="false"/>

其他配置

  • maxHttpHeaderSize="8192" http請(qǐng)求頭信息的最大程度,超過(guò)此長(zhǎng)度的部分不予處理。一般8K。
  • URIEncoding="UTF-8" 指定Tomcat容器的URL編碼格式。
  • disableUploadTimeout="true"上傳時(shí)是否使用超時(shí)機(jī)制
  • enableLookups="false" 是否反查域名,默認(rèn)值為true。為了提高處理能力,應(yīng)設(shè)置為false
  • compression="on"打開(kāi)壓縮功能
  • compressionMinSize="10240" 啟用壓縮的輸出內(nèi)容大小,默認(rèn)為2KB
  • noCompressionUserAgents="gozilla, traviata"對(duì)于以下的瀏覽器,不啟用壓縮
  • compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 哪些資源類(lèi)型需要壓縮

三. Tomcat有幾種部署方式?

  • 直接把Web項(xiàng)目放在webapps下,Tomcat會(huì)自動(dòng)將其部署
  • 在server.xml文件上配置<Context>節(jié)點(diǎn),設(shè)置相關(guān)的屬性即可
  • 通過(guò)Catalina來(lái)進(jìn)行配置:進(jìn)入到conf\Catalina\localhost文件下,創(chuàng)建一個(gè)xml文件,該文件的名字就是站點(diǎn)的名字。編寫(xiě)XML的方式來(lái)進(jìn)行設(shè)置。

四. Tomcat容器是如何創(chuàng)建servlet類(lèi)實(shí)例?用到了什么原理?

當(dāng)容器啟動(dòng)時(shí),會(huì)讀取在webapps目錄下所有的web應(yīng)用中的web.xml文件,然后對(duì)xml文件進(jìn)行解析,并讀取servlet注冊(cè)信息。然后,將每個(gè)應(yīng)用中注冊(cè)的servlet類(lèi)都進(jìn)行加載,并通過(guò)反射的方式實(shí)例化。(有時(shí)候也是在第一次請(qǐng)求時(shí)實(shí)例化)在servlet注冊(cè)時(shí)加上如果為正數(shù),則在一開(kāi)始就實(shí)例化,如果不寫(xiě)或?yàn)樨?fù)數(shù),則第一次請(qǐng)求實(shí)例化。

五. Tomcat 如何優(yōu)化?

優(yōu)化連接配置.這里以tomcat7的參數(shù)配置為例,需要修改conf/server.xml文件,修改連接數(shù),關(guān)閉客戶(hù)端dns查詢(xún)。

參數(shù)解釋?zhuān)?/strong>

URIEncoding=”UTF-8″ :使得tomcat可以解析含有中文名的文件的url,真方便,不像apache里還有搞個(gè)mod_encoding,還要手工編譯。

  • maxSpareThreads: 如果空閑狀態(tài)的線(xiàn)程數(shù)多于設(shè)置的數(shù)目,則將這些線(xiàn)程中止,減少這個(gè)池中的線(xiàn)程總數(shù)。
  • minSpareThreads: 最小備用線(xiàn)程數(shù),tomcat啟動(dòng)時(shí)的初始化的線(xiàn)程數(shù)。
  • enableLookups: 這個(gè)功效和Apache中的HostnameLookups一樣,設(shè)為關(guān)閉。
  • connectionTimeout : connectionTimeout為網(wǎng)絡(luò)連接超時(shí)時(shí)間毫秒數(shù)。
  • maxThreads : maxThreads Tomcat使用線(xiàn)程來(lái)處理接收的每個(gè)請(qǐng)求。這個(gè)值表示Tomcat可創(chuàng)建的最大的線(xiàn)程數(shù),即最大并發(fā)數(shù)。
  • acceptCount : acceptCount是當(dāng)線(xiàn)程數(shù)達(dá)到maxThreads后,后續(xù)請(qǐng)求會(huì)被放入一個(gè)等待隊(duì)列,這個(gè)acceptCount是這個(gè)隊(duì)列的大小,如果這個(gè)隊(duì)列也滿(mǎn)了,就直接refuse connection。
  • maxProcessors與minProcessors: 在 Java中線(xiàn)程是程序運(yùn)行時(shí)的路徑,是在一個(gè)程序中與其它控制線(xiàn)程無(wú)關(guān)的、能夠獨(dú)立運(yùn)行的代碼段。它們共享相同的地址空間。多線(xiàn)程幫助程序員寫(xiě)出CPU最 大利用率的高效程序,使空閑時(shí)間保持最低,從而接受更多的請(qǐng)求。

通常Windows是1000個(gè)左右,Linux是2000個(gè)左右。

六. 內(nèi)存調(diào)優(yōu)

內(nèi)存方式的設(shè)置是在catalina.sh中,調(diào)整一下JAVA_OPTS變量即可,因?yàn)楹竺娴膯?dòng)參數(shù)會(huì)把 JAVA_OPTS作為JVM的啟動(dòng)參數(shù)來(lái)處理。

具體設(shè)置如下:

JAVA_OPTS="$JAVA_OPTS -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4"

其各項(xiàng)參數(shù)如下:

-Xmx3550m:設(shè)置JVM最大可用內(nèi)存為3550M。

-Xms3550m:設(shè)置JVM促使內(nèi)存為3550m。此值可以設(shè)置與-Xmx相同,以避免每次垃圾回收完成后JVM重新分配內(nèi)存。

-Xmn2g:設(shè)置年輕代大小為2G。整個(gè)堆大小=年輕代大小 + 年老代大小 + 持久代大小。持久代一般固定大小為64m,所以增大年輕代后,將會(huì)減小年老代大小。此值對(duì)系統(tǒng)性能影響較大,Sun官方推薦配置為整個(gè)堆的3/8。

-Xss128k:設(shè)置每個(gè)線(xiàn)程的堆棧大小。JDK5.0以后每個(gè)線(xiàn)程堆棧大小為1M,以前每個(gè)線(xiàn)程堆棧大小為256K。更具應(yīng)用的線(xiàn)程所需內(nèi)存大小進(jìn)行調(diào)整。在相同物理內(nèi)存下,減小這個(gè)值能生成更多的線(xiàn)程。但是操作系統(tǒng)對(duì)一個(gè)進(jìn)程內(nèi)的線(xiàn)程數(shù)還是有限制的,不能無(wú)限生成,經(jīng)驗(yàn)值在3000~5000左右。

-XX:NewRatio=4:設(shè)置年輕代(包括Eden和兩個(gè)Survivor區(qū))與年老代的比值(除去持久代)。設(shè)置為4,則年輕代與年老代所占比值為1:4,年輕代占整個(gè)堆棧的1/5

-XX:SurvivorRatio=4:設(shè)置年輕代中Eden區(qū)與Survivor區(qū)的大小比值。設(shè)置為4,則兩個(gè)Survivor區(qū)與一個(gè)Eden區(qū)的比值為2:4,一個(gè)Survivor區(qū)占整個(gè)年輕代的1/6

-XX:MaxPermSize=16m:設(shè)置持久代大小為16m。

-XX:MaxTenuringThreshold=0:設(shè)置垃圾最大年齡。如果設(shè)置為0的話(huà),則年輕代對(duì)象不經(jīng)過(guò)Survivor區(qū),直接進(jìn)入年老代。對(duì)于年老代比較多的應(yīng)用,可以提高效率。如果將此值設(shè)置為一個(gè)較大值,則年輕代對(duì)象會(huì)在Survivor區(qū)進(jìn)行多次復(fù)制,這樣可以增加對(duì)象再年輕代的存活時(shí)間,增加在年輕代即被回收的概論。

七. 垃圾回收策略調(diào)優(yōu)

垃圾回收的設(shè)置也是在catalina.sh中,調(diào)整JAVA_OPTS變量。

具體設(shè)置如下:

JAVA_OPTS="$JAVA_OPTS -Xmx3550m -Xms3550m -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis="100"

具體的垃圾回收策略及相應(yīng)策略的各項(xiàng)參數(shù)如下:

  • 串行收集器(JDK1.5以前主要的回收方式)

-XX:+UseSerialGC:設(shè)置串行收集器

  • 并行收集器(吞吐量?jī)?yōu)先)
示例:java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100

-XX:+UseParallelGC:選擇垃圾收集器為并行收集器。此配置僅對(duì)年輕代有效。即上述配置下,年輕代使用并發(fā)收集,而年老代仍舊使用串行收集

-XX:ParallelGCThreads=20:配置并行收集器的線(xiàn)程數(shù),即:同時(shí)多少個(gè)線(xiàn)程一起進(jìn)行垃圾回收。此值最好配置與處理器數(shù)目相等。

-XX:+UseParallelOldGC:配置年老代垃圾收集方式為并行收集。JDK6.0支持對(duì)年老代并行收集

-XX:MaxGCPauseMillis=100:設(shè)置每次年輕代垃圾回收的最長(zhǎng)時(shí)間,如果無(wú)法滿(mǎn)足此時(shí)間,JVM會(huì)自動(dòng)調(diào)整年輕代大小,以滿(mǎn)足此值。

-XX:+UseAdaptiveSizePolicy:設(shè)置此選項(xiàng)后,并行收集器會(huì)自動(dòng)選擇年輕代區(qū)大小和相應(yīng)的Survivor區(qū)比例,以達(dá)到目標(biāo)系統(tǒng)規(guī)定的最低相應(yīng)時(shí)間或者收集頻率等,此值建議使用并行收集器時(shí),一直打開(kāi)。

  • 并發(fā)收集器(響應(yīng)時(shí)間優(yōu)先)
示例:java -Xmx3550m -Xms3550m -Xmn2g -Xss128k 

-XX:+UseConcMarkSweepGC:設(shè)置年老代為并發(fā)收集。測(cè)試中配置這個(gè)以后,-XX:NewRatio=4的配置失效了,原因不明。所以,此時(shí)年輕代大小最好用-Xmn設(shè)置。

-XX:+UseParNewGC: 設(shè)置年輕代為并行收集??膳cCMS收集同時(shí)使用。JDK5.0以上,JVM會(huì)根據(jù)系統(tǒng)配置自行設(shè)置,所以無(wú)需再設(shè)置此值。

-XX:CMSFullGCsBeforeCompaction:由于并發(fā)收集器不對(duì)內(nèi)存空間進(jìn)行壓縮、整理,所以運(yùn)行一段時(shí)間以后會(huì)產(chǎn)生“碎片”,使得運(yùn)行效率降低。此值設(shè)置運(yùn)行多少次GC以后對(duì)內(nèi)存空間進(jìn)行壓縮、整理。

-XX:+UseCMSCompactAtFullCollection:打開(kāi)對(duì)年老代的壓縮。可能會(huì)影響性能,但是可以消除碎片。

八. 共享session處理

目前的處理方式有如下幾種:

  • 使用Tomcat本身的Session復(fù)制功能。方案的有點(diǎn)是配置簡(jiǎn)單,缺點(diǎn)是當(dāng)集群數(shù)量較多時(shí),Session復(fù)制的時(shí)間會(huì)比較長(zhǎng),影響響應(yīng)的效率。
  • 使用第三方來(lái)存放共享Session目前用的較多的是使用memcached來(lái)管理共享Session,借助于memcached-sesson-manager來(lái)進(jìn)行Tomcat的Session管理。
  • 使用黏性session的策略。對(duì)于會(huì)話(huà)要求不太強(qiáng)(不涉及到計(jì)費(fèi),失敗了允許重新請(qǐng)求下等)的場(chǎng)合,同一個(gè)用戶(hù)的session可以由nginx或者apache交給同一個(gè)Tomcat來(lái)處理,這就是所謂的session sticky策略,目前應(yīng)用也比較多。
  • nginx默認(rèn)不包含session sticky模塊,需要重新編譯才行(windows下我也不知道怎么重新編譯)優(yōu)點(diǎn)是處理效率高多了,缺點(diǎn)是強(qiáng)會(huì)話(huà)要求的場(chǎng)合不合適。

九. 添加JMS遠(yuǎn)程監(jiān)控

對(duì)于部署在局域網(wǎng)內(nèi)其它機(jī)器上的Tomcat,可以打開(kāi)JMX監(jiān)控端口,局域網(wǎng)其它機(jī)器就可以通過(guò)這個(gè)端口查看一些常用的參數(shù)(但一些比較復(fù)雜的功能不支持),同樣是在JVM啟動(dòng)參數(shù)中配置即可。

配置如下:

-Dcom.sun.management.jmxremote.ssl=false -
Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=192.168.71.38 設(shè)置JVM的JMS監(jiān)控監(jiān)聽(tīng)的IP地址,主要是為了防止錯(cuò)誤的監(jiān)聽(tīng)成127.0.0.1這個(gè)內(nèi)網(wǎng)地址
-Dcom.sun.management.jmxremote.port=1090 設(shè)置JVM的JMS監(jiān)控的端口
-Dcom.sun.management.jmxremote.ssl=false 設(shè)置JVM的JMS監(jiān)控不實(shí)用SSL
-Dcom.sun.management.jmxremote.authenticate=false 設(shè)置JVM的JMS監(jiān)控不需要認(rèn)證

十. 專(zhuān)業(yè)點(diǎn)的分析工具有

IBM ISA,JProfiler、probe 等,具體監(jiān)控及分析方式去網(wǎng)上搜索即可

十一. 關(guān)于Tomcat的session數(shù)目

這個(gè)可以直接從Tomcat的web管理界面去查看即可 ;或者借助于第三方工具Lambda Probe來(lái)查看,它相對(duì)于Tomcat自帶的管理稍微多了點(diǎn)功能,但也不多 ;

十二. 監(jiān)視Tomcat的內(nèi)存使用情況

使用JDK自帶的jconsole可以比較明了的看到內(nèi)存的使用情況,線(xiàn)程的狀態(tài),當(dāng)前加載的類(lèi)的總量等;JDK自帶的jvisualvm可以下載插件(如GC等),可以查看更豐富的信息。如果是分析本地的Tomcat的話(huà),還可以進(jìn)行內(nèi)存抽樣等,檢查每個(gè)類(lèi)的使用情況。

十三. 打印類(lèi)的加載情況及對(duì)象的回收情況

這個(gè)可以通過(guò)配置JVM的啟動(dòng)參數(shù),打印這些信息(到屏幕(默認(rèn)也會(huì)到catalina.log中)或者文件),

具體參數(shù)如下:

  • -XX:+PrintGC:

輸出形式:[GC 118250K->113543K(130112K), 0.0094143 secs] [Full GC121376K->10414K(130112K), 0.0650971 secs]

  • -XX:+PrintGCDetails

輸出形式:[GC [DefNew: 8614K->781K(9088K), 0.0123035 secs]118250K->113543K(130112K), 0.0124633 secs] [GC [DefNew: 8614K->8614K(9088K),

0.0000665 secs][Tenured: 112761K->10414K(121024K), 0.0433488 secs] 121376K-10414K(130112K), 0.0436268 secs]

  • -XX:+PrintGCTimeStamps
  • -XX:+PrintGC:PrintGCTimeStamps可與上面兩個(gè)混合使用。

輸出形式:11.851: [GC 98328K->93620K(130112K), 0.0082960 secs]

  • -XX:+PrintGCApplicationConcurrentTime:打印每次垃圾回收前,程序未中斷的執(zhí)行時(shí)間。 可與上面混合使用。

輸出形式:Application time: 0.5291524 seconds

  • -XX:+PrintGCApplicationStoppedTime:打印垃圾回收期間程序暫停的時(shí)間??膳c上面混合使用。

輸出形式:Total time for which application threads were stopped: 0.0468229 seconds

  • -XX:PrintHeapAtGC: 打印GC前后的詳細(xì)堆棧信息
  • -Xloggc:filename:與上面幾個(gè)配合使用,把相關(guān)日志信息記錄到文件以便分析
  • -verbose:class 監(jiān)視加載的類(lèi)的情況
  • -verbose:gc 在虛擬機(jī)發(fā)生內(nèi)存回收時(shí)在輸出設(shè)備顯示信息
  • -verbose:jni 輸出native方法調(diào)用的相關(guān)情況,一般用于診斷jni調(diào)用錯(cuò)誤信息

十四. Tomcat一個(gè)請(qǐng)求的完整過(guò)程

Ng:(nginx)
upstream yy_001{
server 10.99.99.99:8080;
server 10.99.99.100:8080;
hash $**;
healthcheck_enabled;
healthcheck_delay 3000;
healthcheck_timeout 1000;
healthcheck_failcount 2;
healthcheck_send 'GET /healthcheck.html HTTP/1.0' 'Host: wo.com'
'Connection: close';
}
server {
include base.conf;
server_name wo.de.tian;
...
location /yy/ {
proxy_pass http://yy_001;
}

首先 dns 解析 wo.de.tian機(jī)器,一般是ng服務(wù)器ip地址,然后 ng根據(jù)server的配置,尋找路徑為 yy/的機(jī)器列表,ip和端口,最后 選擇其中一臺(tái)機(jī)器進(jìn)行訪(fǎng)問(wèn)。

下面為詳細(xì)過(guò)程

1.請(qǐng)求被發(fā)送到本機(jī)端口8080,被在那里偵聽(tīng)的Coyote HTTP/1.1 Connector獲得

2.Connector把該請(qǐng)求交給它所在的Service的Engine來(lái)處理,并等待來(lái)自Engine的回應(yīng)

3.Engine獲得請(qǐng)求localhost/yy/index.jsp,匹配它所擁有的所有虛擬主機(jī)Host

4.Engine匹配到名為localhost的Host(即使匹配不到也把請(qǐng)求交給該Host處理,因?yàn)樵揌ost被定義為該Engine的默認(rèn)主機(jī))

5.localhost Host獲得請(qǐng)求/yy/index.jsp,匹配它所擁有的所有Context

6.Host匹配到路徑為/yy的Context(如果匹配不到就把該請(qǐng)求交給路徑名為”“的Context去處理)

7.path=”/yy”的Context獲得請(qǐng)求/index.jsp,在它的mapping table中尋找對(duì)應(yīng)的servlet

8.Context匹配到URL PATTERN為*.jsp的servlet,對(duì)應(yīng)于JspServlet類(lèi)

9.構(gòu)造HttpServletRequest對(duì)象和HttpServletResponse對(duì)象,作為參數(shù)調(diào)用JspServlet的doGet或doPost方法

10.Context把執(zhí)行完了之后的HttpServletResponse對(duì)象返回給HostHost

11.把HttpServletResponse對(duì)象返回給EngineEngine

12.把HttpServletResponse對(duì)象返回給ConnectorConnector

13.把HttpServletResponse對(duì)象返回給客戶(hù)browser

十五.Tomcat工作模式?

  •  Tomcat是一個(gè)JSP/Servlet容器。其作為Servlet容器,有三種工作模式:獨(dú)立的Servlet容器、進(jìn)程內(nèi)的Servlet容器和進(jìn)程外的Servlet容器。

總結(jié)

本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 解析Linux系統(tǒng)中JVM內(nèi)存2GB上限的詳解

    解析Linux系統(tǒng)中JVM內(nèi)存2GB上限的詳解

    本篇文章是對(duì)Linux系統(tǒng)中JVM內(nèi)存2GB上限進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • SpringMVC編程使用Controller接口實(shí)現(xiàn)控制器實(shí)例代碼

    SpringMVC編程使用Controller接口實(shí)現(xiàn)控制器實(shí)例代碼

    這篇文章主要介紹了SpringMVC編程使用Controller接口實(shí)現(xiàn)控制器實(shí)例代碼,具有一定參考價(jià)值,需要的朋友可以參考下。
    2017-11-11
  • SpringBoot初始教程之Servlet、Filter、Listener配置詳解

    SpringBoot初始教程之Servlet、Filter、Listener配置詳解

    本篇文章主要介紹了SpringBoot初始教程之Servlet、Filter、Listener配置詳解,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-09-09
  • Java中BigDecimal類(lèi)與int、Integer使用總結(jié)

    Java中BigDecimal類(lèi)與int、Integer使用總結(jié)

    這篇文章主要給大家介紹了關(guān)于Java中BigDecimal類(lèi)與int、Integer使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 基于Class.forName()用法及說(shuō)明

    基于Class.forName()用法及說(shuō)明

    這篇文章主要介紹了基于Class.forName()用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • SpringBoot入門(mén)教程詳解

    SpringBoot入門(mén)教程詳解

    SpringBoot?是由?Pivotal?團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化?Spring?應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。本文將詳細(xì)為大家講講SpringBoot是使用,需要的可以參考一下
    2022-06-06
  • Maven Repository倉(cāng)庫(kù)的具體使用

    Maven Repository倉(cāng)庫(kù)的具體使用

    本文主要介紹了Maven Repository倉(cāng)庫(kù)的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 初探Spring Cloud Gateway實(shí)戰(zhàn)

    初探Spring Cloud Gateway實(shí)戰(zhàn)

    這篇文章主要介紹了創(chuàng)建網(wǎng)關(guān)項(xiàng)目(Spring Cloud Gateway)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-08-08
  • java date類(lèi)與string類(lèi)實(shí)例代碼分享

    java date類(lèi)與string類(lèi)實(shí)例代碼分享

    這篇文章主要介紹了java date類(lèi)與string類(lèi)實(shí)例代碼分享,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • Spring注解@Resource和@Autowired區(qū)別對(duì)比詳解

    Spring注解@Resource和@Autowired區(qū)別對(duì)比詳解

    這篇文章主要介紹了Spring注解@Resource和@Autowired區(qū)別對(duì)比詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論