亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

服務端常規知識詳解

2019-11-14 15:11:16
字體:
來源:轉載
供稿:網友

1.前言

公司老項目的后臺,均是基于sPRing框架搭建,其中還用到了log4j.jar等開源架包。在新項目中,則是spring和hibernate框架均有使用,利用了hibernate框架,來實現持久化,簡化sql操作等。Hibernate配置文件可以有兩種格式,一種是 hibernate.properties,另一種是 hibernate.cfg.xml。后者稍微方便一些,當增加hbm映射文件的時候,可以直接在 hibernate.cfg.xml 里面增加,不必像 hibernate.properties 必須在初始化代碼中加入。我們新項目中使用的是hibernate.cfg.xml格式。不過在本文中不將細述,后續有機會再補上。

公司項目中,中間件主要有tomcat,webshpere,WebLogic。以下,將對項目中spring基本配置,log4j的配置,還有中間件的相關參數配置做一個初步的介紹。

2.spring配置——以老GIS項目為例子

GISV13中的配置涉及到了SpringMVC,IOC,AOP, Quartz方面的配置。配置的實現是通過注記配置和XML配置來合作實現。這里,我將按照Spring的配置流程,將其他幾個方面的配置融合其中,來進行全面解析。

2.1SpringMVC的配置

2.1.1.web.xml的配置

   Web程序中,當中間件啟動時,中間件會首先讀取web.xml中的配置。在web.xml中可以配置監聽器,過濾器,servlet映射等等。在Spring框架中,我們主要需配置容器初始化時讀取的spring容器配置文件的路徑以及springMVC中的分發器DispatcherServlet。

在GISV13的web.xml中,我們定義了如下內容:

         

              

InitGISConfigServlet定義了容器啟動時,首先要運行這個方法。然后servletname為MVC的這部分便是定義了springMVC的分發器以及此servlet所對應的加載配置文件的路徑。在web.xml中可以配置多個這樣的servlet。截圖中這段xml的配置是指,當后綴名為.htm時,則觸動springMVC的分發器。關于此servlet的配置在/WEB-INF/classes/applicationContext-servlet.xml地址下。Servlet的配置文件有其默認的地址,此處為顯示表示。

2.1.2.servlet的配置文件

 

首先,在配置文件中需要定義springMVC的引用空間以及配置格式兩項。

2.1.2.1配置Controller

為了支持注解格式,添加了如下配置:

 

此配置會在配置文件被容器加載時,掃面添加了注解的代碼,完成MVC的相關配置。在GISV13中,運用了@Controller, @Service來定義控制層以及DAO中的實現層,通過@RequestMapping來進行URL與Controller之間的關聯。

2.1.2.2配置Model和View

在SpringMVC中通過Controller返回的數據會被包裝在ModelAndView這個類里。此類中包含有返回的具體數據以及返回的數據指向的URL。

在GISV13中與此相關的配置為:

 

此配置中為ModelAndView中的url默認添加了一個前綴,以及為url所指向的文件名后面添加了文件格式,即將返回的url轉換成/home/url/file.jsp的樣式。

同時此配置中也定義了視圖和視圖解譯器:視圖為org.springframework.web.servlet.view.JstlView,視圖解譯器為:org.springframework.web.servlet.view.InternalResourceViewResolver。

其實InternalResourceViewResolver默認的視圖便是JstlView。此處不配置也可以。

視圖解譯器有很多種,根據不同的視圖以及用途而定。SpringMVC中支持對PDF,XML還有上傳下載文件等視圖的支持。

2.2.IOC的配置

在GISV13中,IOC相關的配置也是通過注解和XML共同完成的。與容器相關的配置地址在web.xml中已經配成,在容器啟動時便會進行加裝。這里我們針對利用了IOC的ORM來進行講解。

2.2.1.定義JDBC.properties文件

此處主要有兩項:

 

數據庫驅動以及數據庫地址。

2.2.2配置數據庫連接

對于不同的數據庫,spring配置數據庫時會引用不同的類,GISV13支持的數據庫是Oracle,所以此處引用的類是BasicDataSource。具體配置如下:

 

此配置為容器啟動時,實例化BasicDataSource類,property中的每一個對象均為對象初始化時的屬性配置,這些屬性包含了驅動類型,連接地址,最大連接數等。在之前配置的jdbc.properties中的類容,可在此處直接使用。

2.2.3.使用數據庫

在系統代碼中,通過@Autowired,將實例化后的對象,在容器初始化時注入到注解所對應的對象中。

 

便可以將spring中包含了數據庫配置而自動實例化好后的jdbc對象注入到注解對象中。我們一般使用的是JdbcTemplate類,此類將數據庫操作進行了淺包裝,至此增刪查改以及存儲過程的調用等,避免了代碼中多次使用容錯機制等重復代碼。

2.3.AOP的配置

AOP是Spring的一大亮點,其涉及到的概念非常多,比如切入點,增強,橫切面等等。在使用驗證等功能中常需使用該配置。在GISV13里也使用了此功能,主要是為了數據庫事務管理而使用的。在Spring中,AOP的實現可以通過一般性XML配置,aspectJ的配置還有注解配置等來實現。結合系統,我將AspectJ的配置來大致講解下。

2.3.1.配置事物管理類

 

此類中主要定義了事務管理所關聯的數據庫。DataSource的配置在上一章已描述。

2.3.2配置增強類容

 

此類中定義了增強的類容,即織入到目標對象(Target)代碼中的內容。Attributes里定義了該增強所對應的操作。比如當方法名以find開頭是,事務管理的類型為只讀。事務管理的屬性中還能設置傳播特性,以及事物隔離性等。如果不設置,此處的轉播特性為::PROPGATION_REQUIRED。這個配置項的意思是說當我調用service層的方法的時候開啟一個事務(具體調用那一層的方法開始創建事務,要看aop的配置),那么在調用這個service層里面的其他的方法的時候,如果當前方法產生了事務就用當前方法產生的事務,否則就創建一個新的事務。這個工作使由Spring來幫助我們完成的。

2.3.3.定義織入點和切面

 

首先定義織入點,該配置中的意思是當在cn.com.*包下以一直到dao包中以Manager結束的類中的所有方法。

然后定義了切面,該切面首先關聯了織入點,其次關聯了增強類。即,在滿足織入條件下的方法中加上增強的類容,該增強的類容在4.2中已經描述。

2.4.SpringQuartz的配置

Spring3.0以后自帶的task,可以將它看成一個輕量級的Quartz,而且使用起來比Quartz簡單許多,能夠完成任務的定時觸發。

2.4.1作業類配置

 

定義一個作業類。Value中為需要觸發的類的引用地址。

2.4.2 觸發配置

觸發條件分為兩種,簡單條件和復雜的條件。

2.4.2.1 簡單觸發配置

 

可以配置觸發延遲時間和觸發間隔時間。其中ref為需要觸發的類的配置(bean)名。

2.4.2.2 復雜觸發配置

 

復雜配置中可以配置具體觸發的時間等。

3.Log4j的配置

常見的支持日志的開源項目比較多,主要有:Log4j,Jul,Jcl,Slf4j,Logback等。但是,log4j以其悠久的歷史,廣泛的應用,支持多種語言及平臺,強大的功能,占據了主導的地位。

3.1依賴的包

一般需要log4j-1.2.13.jar和commons-logging-1.1.1.jar兩個架包。但是,log4j-1.2.13.jar是必須的,commons-logging-1.1.1.jar并不是必須的。

Commons-loggin的目的是為“所有的java日志實現”提供一個統一的接口,它自身的日志功能平常弱(只有一個簡單的SimpleLog), 所以一般不會單獨使用它。但是,幾乎所有用到Log4j的項目一般也同時會用到commons-loggin。這樣做主要是為了避免自身項目與Log4j綁定的太緊密。另外, “同時使用commons- logging和Log4j”,可以提供一個統一的日志接口,簡單了操作,同時避免項目與某個日志實現系統緊密耦合,如此可以自動選擇適當的日志實現系統。

3.2 web.xml中配置

在web.xml中需要配置log4j的配置文件地址,以及監聽啟動項。

 

 

3.3 log4j.properties配置

Log4j中可以配置日志的輸出級別,輸出格式,日志路徑日志名,時間格式等。

3.3.1日志等級

日志等級:

ERROR:雖然發生錯誤事件,但仍然不影響系統的繼續運行。

WARN:會出現潛在錯誤的情形。

INFO:消息在粗粒度級別上突出強調應用程序的運行過程。

DEBUG:細粒度信息事件對調試應用程序是非常有幫助的。

3.3.2 appender配置

 

 其中:
org.apache.log4j.ConsoleAppender(控制臺)。
org.apache.log4j.FileAppender(文件)。
org.apache.log4j.DailyRollingFileAppender(每天產生一個日志文件)。
org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件)。
org.apache.log4j.WriterAppender(將日志信息以流格式發送到任意指定的地方)。

3.3.3 Threshold配置

Layout:
  org.apache.log4j.HTMLLayout(以HTML表格形式布局)。
  org.apache.log4j.PatternLayout(可以靈活地指定布局模式)。
  org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串)。
  org.apache.log4j.TTCCLayout(包含日志產生的時間、線程、類別等等信息)。

3.3.4 打印格式

Log4J采用的是類似C語言中的printf函數的打印格式格式化日志信息的

%m 輸出代碼中指定的消息

%p 輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL

%r 輸出自應用啟動到輸出該log信息耗費的毫秒數

%c 輸出所屬的類目,通常就是所在類的全名

%t 輸出產生該日志事件的線程名

%n 輸出一個回車換行符,Windows平臺為“/r/n”,Unix平臺為“/n”,也就是一跳消息占用一行

%d 輸出日志時間點的日期或時間,緊跟一對花括號進行自定義格式

 %c 輸出所屬的類目,通常就是所在類的全名

 %l 精確到行

%x 輸出對齊

3.3.5輸出的路徑地址

在web.xml中,定義了項目名:

 

在log4j.properties中定義了輸入日志路徑:

 

3.4代碼中使用

首先引用:

 

然后實例化:

最后使用:

4.中間件配置——以tomcat為例

Tomcat中我們一般進行的配置有:端口,回話連接數,線程數,編碼格式,文件壓縮,內存大小等。

4.1 server.xml的配置

 

4.2 內存設置

在catalina.bat文件中可以增加tomcat的內存數,避免space heap問題。

 

                                                             ——歡迎轉載,但保留版權,請于明顯處標明出處:http://www.49028c.com/naaoveGIS/

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩亚洲一区二| 国产成人福利网站| 日韩国产中文字幕| 亚洲综合社区网| 久久影视电视剧免费网站清宫辞电视| 日韩中文字幕第一页| 亚洲经典中文字幕| 欧美日韩亚洲成人| 欧美三级免费观看| 欧美日韩一区免费| 91久久精品久久国产性色也91| 国产精品久久久久999| 亚洲字幕一区二区| 日韩成人在线网站| 久久久免费在线观看| 日韩极品精品视频免费观看| 亚洲自拍偷拍网址| 午夜美女久久久久爽久久| 国产精品久久久久久久久久久不卡| 亚洲欧美一区二区三区久久| 日韩中文字幕在线免费观看| 久久久97精品| 国产精品高清在线观看| 国产精品黄色影片导航在线观看| 欧美日韩在线观看视频| x99av成人免费| 久久成人人人人精品欧| 国产69久久精品成人看| 成人免费网站在线观看| 国产精品日韩欧美综合| 狠狠爱在线视频一区| 国产精品香蕉在线观看| 国产精品直播网红| 亚洲色图偷窥自拍| 国产精品极品美女粉嫩高清在线| 亚洲精品福利在线观看| 亚洲精选中文字幕| 成人免费xxxxx在线观看| 97免费视频在线| 国产最新精品视频| 国产精品一区二区女厕厕| 国产精品免费看久久久香蕉| 亚洲人午夜精品| 亚洲风情亚aⅴ在线发布| 午夜精品久久久久久久久久久久久| 亚洲日本中文字幕免费在线不卡| 亚洲xxx视频| 久久成人精品一区二区三区| 亚洲欧美中文另类| 欧美亚洲免费电影| 亚洲精品在线不卡| 97色伦亚洲国产| 97国产精品视频| 国产精品一香蕉国产线看观看| 日韩一区二区av| 国产在线精品成人一区二区三区| 欧美精品在线视频观看| 欧美激情中文网| 亚洲欧美三级在线| 国产视频一区在线| 欧美国产视频日韩| 亚洲精品av在线播放| 欧美黄色三级网站| 久久精品中文字幕| 日韩av中文字幕在线免费观看| 国产这里只有精品| 欧美性理论片在线观看片免费| 国产精品久久久久久av福利软件| 一区二区三区视频免费在线观看| 欧美成在线视频| 国产成人福利夜色影视| 神马国产精品影院av| 岛国av午夜精品| 国产欧美日韩中文字幕在线| 黑丝美女久久久| 国产亚洲欧美日韩美女| 丰满岳妇乱一区二区三区| 国产色婷婷国产综合在线理论片a| 亚洲精品久久久久中文字幕欢迎你| 韩国三级日本三级少妇99| 日韩欧美国产免费播放| www.欧美三级电影.com| 91精品国产综合久久香蕉最新版| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲va欧美va在线观看| 日韩视频精品在线| 91久久精品日日躁夜夜躁国产| 精品福利在线看| 精品五月天久久| 欧美黄色三级网站| 日韩精品免费看| 成人黄色av播放免费| 亚洲自拍偷拍视频| 91欧美日韩一区| 久久久久久久电影一区| 精品国产区一区二区三区在线观看| 浅井舞香一区二区| 国产精品91一区| 欧美怡春院一区二区三区| 亚洲视屏在线播放| 亚洲欧美一区二区三区情侣bbw| 欧美一区二区三区免费观看| 97久久精品在线| 另类天堂视频在线观看| 98视频在线噜噜噜国产| zzijzzij亚洲日本成熟少妇| 亚洲成人精品在线| 国产精品久久久久av免费| 国产欧美日韩高清| 日韩欧美在线视频免费观看| 亚洲毛片在线看| 日韩av在线免费观看一区| 久久成人人人人精品欧| 日韩精品中文字幕有码专区| 午夜精品久久久久久久久久久久| 欧美日韩国产成人| 亚洲2020天天堂在线观看| 欧美性jizz18性欧美| 国产欧美一区二区白浆黑人| 亚洲国产成人精品女人久久久| 久久视频在线播放| 欧美电影免费观看高清完整| 亚洲理论在线a中文字幕| 欧美成人性生活| 亚洲九九九在线观看| 国产精品永久免费视频| 欧美人与性动交| 亚洲精品国产综合区久久久久久久| 深夜福利国产精品| 国产精品视频自在线| 欧美午夜性色大片在线观看| 自拍视频国产精品| 6080yy精品一区二区三区| 久久99国产综合精品女同| 国产精品久久久久久久久久久久久| 好吊成人免视频| 欧美性做爰毛片| 日韩av免费在线观看| 欧美一级bbbbb性bbbb喷潮片| 国产亚洲日本欧美韩国| 久久久99免费视频| 奇门遁甲1982国语版免费观看高清| 亚洲品质视频自拍网| 欧美日韩中文字幕在线| 国产91精品视频在线观看| 2018日韩中文字幕| 欧美孕妇孕交黑巨大网站| www.日韩不卡电影av| 97久久精品在线| 4438全国成人免费| 久久久久一本一区二区青青蜜月| 日韩av在线天堂网| 日韩欧美高清在线视频| 国产精品入口日韩视频大尺度| 亚洲小视频在线| 国产精品99久久久久久白浆小说| 成人春色激情网| 性欧美在线看片a免费观看| 九九精品视频在线观看| 一区二区欧美亚洲| 日韩在线观看免费全集电视剧网站| 国产精品视频1区| 91中文在线视频| 国产精品v日韩精品|