/src/applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" ?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" ?xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop" ?xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc"

?xsi:schemaLocation=" ?http://www.springframework.org/schema/beans ?http://www.springframework.org/schema/beans/spring-beans-4.3.xsd ?http://www.springframework.org/schema/context ??? http://www.springframework.org/schema/context/spring-context-4.3.xsd ?http://www.springframework.org/schema/tx ?http://www.springframework.org/schema/tx/spring-tx-4.3.xsd ?http://www.springframework.org/schema/aop ?http://www.springframework.org/schema/aop/spring-aop-4.3.xsd ??? http://www.springframework.org/schema/mvc ??? http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd ??? ">

?<!-- 加載配置屬性文件 --> ?<context:property-placeholder ??ignore-unresolvable="true" ignore-resource-not-found="true" ??location="classpath:/config.properties" />

?<!-- Spring 直接操作數據庫 --> ?<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" ??destroy-method="close"> ??<property name="driverClass" value="${jdbc.driverClass}"></property> ??<property name="jdbcUrl" value="${jdbc.url}"></property> ??<property name="user" value="${jdbc.user}"></property> ??<property name="password" value="${jdbc.password}"></property> ??<!-- <property name="show_sql" value="${jdbc.show_sql}"></property> <property ???name="format_sql" value="${jdbc.format_sql}"></property> -->

??<!-- 連接池中保留的最小連接數,默認為:3 --> ??<property name="minPoolSize"> ???<value>25</value> ??</property>

??<!-- 連接池中保留的最大連接數。默認值: 15 --> ??<property name="maxPoolSize"> ???<value>100</value> ??</property>

??<!-- 初始化時獲取連接數,取值應在minPoolSize與maxPoolSize之間。否則會被最小連接數的值替換 Default: 3 --> ??<property name="initialPoolSize"> ???<value>50</value> ??</property>

??<!-- 當連接池中的連接耗盡的時候c3p0一次同時獲取的連接數。Default: 3 --> ??<property name="acquireIncrement"> ???<value>50</value> ??</property>

??<!--最大空閑時間,多少秒內未使用則連接被丟棄。若為0則永不丟棄。默認值: 0 --> ??<property name="maxIdleTime"> ???<value>15</value> ??</property>

??<!--C3P0會有一個Task檢測pool內的連接是否正常,此參數就是Task運行的頻率。默認值為0,表示不進行檢測。 每隔多少秒檢查所有連接池中的空閑連接。 --> ??<!-- <property name="idleConnectionTestPeriod"> <value>180</value> </property> -->

??<!-- c3p0全局的PreparedStatements緩存的大小。如果maxStatements與maxStatementsPerConnection均為0,則緩存不生效,只要有一個不為0,則語句的緩存就能生效。如果默認值:0 --> ??<property name="maxStatements"> ???<value>100</value> ??</property> ??<property name="maxStatementsPerConnection"> ???<value>0</value> ??</property>

??<!-- 程序從連接池checkout session的時候 等待1000毫秒,超時則拋出異常,即獲取一個connection需要的時間,單位毫秒 --> ??<!-- <property name="checkoutTimeout"> <value>1000</value> </property> --> ??<!-- 調試信息的配置 --> ??<property name="debugUnreturnedConnectionStackTraces"> ???<value>true</value> ??</property> ??<!-- 在連接被應用程序 checkout后指定時間內未checkin則由連接緩沖池執行kill操作,同時打印堆棧跟蹤信息。 maxIdleTime的設置是 ???300秒,所以,我把unreturnedConnectionTimeout設置成350秒,如果達到最大存活時間后,連接還是不能被連接緩沖池正常關閉,那么肯定出現了連接泄漏,此時,再過50秒后,由連接緩沖池主動執行kill。 ???他將物理的關閉,而不是返回池中,主要是防止連接被長期使用不釋放 單位:秒 --> ??<property name="unreturnedConnectionTimeout"> ???<value>350</value> ??</property> ??<!-- 請求連接會發生在 pool內連接少于min值或則等待請求數>池內能提供的連接數,定義在從數據庫獲取新連接失敗后重復嘗試的次數。默認值: ???30 ;小于等于0表示無限次 --> ??<property name="acquireRetryAttempts"> ???<value>30</value> ??</property> ??<!-- 請求連接會發生在 pool內連接少于min值或則等待請求數>池內能提供的連接數,定義在從數據庫獲取新連接失敗后重復嘗試的頻率。默認為:1000毫秒 --> ??<property name="acquireRetryDelay"> ???<value>5000</value> ??</property>

??<!-- c3p0是異步操作的,緩慢的JDBC操作通過幫助進程完成。擴展這些操作可以有效的提升性能通過多線程實現多個操作同時被執行。Default: ???10 --> ??<property name="numHelperThreads"> ???<value>50</value> ??</property>

??<!-- true表示pool向數據庫請求連接失敗后標記整個pool為block并close,就算后端數據庫恢復正常也不進行重連,客戶端對pool的請求都拒絕掉。false表示不會標記 ???pool為block,新的請求都會嘗試去數據庫請求connection。默認為false。因此,如果想讓數據庫和網絡故障恢復之后,pool能繼續請求正常資源必須把此項配置設為false --> ??<property name="breakAfterAcquireFailure"> ???<value>true</value> ??</property>

??<!-- 將建一張名為改配置項的空表,并使用其自帶的查詢語句進行測試。如果定義了這個參數,那么屬性preferredTestQuery將被忽略。你不能在這張Test表上進行任何操作,它將只供c3p0測試使用。默認值: ???null。 --> ??<!-- <property name="automaticTestTable"> <value>sys_connectiontest</value> ???</property> -->

??<!-- 表示測試方式,默認是采用DatabaseMetaData.getTables()來測試connection的有效性,但可以通過配置來定制化測試語句,通過其名字就很好理解其含義,無需過多解釋 --> ??<!-- <property name="preferredTestQuery"> <value></value> </property> -->

??<!-- true表示在每次從pool內checkout連接的時候測試其有效性,這是個同步操作,因此應用端的每次數據庫調用,都會先通過測試sql測試其有效性,如果連接無效,會關閉此連接并剔除出pool,并嘗試從pool內取其他連接,默認為false,此特性要慎用,會造成至少多一倍的數據庫調用。 --> ??<property name="testConnectionOnCheckout"> ???<value>false</value> ??</property>

??<!-- true表示每次把連接checkin到pool里的時候測試其有效性,因為是個事后操作,所以是異步的,應用端不需要等待測試結果,但同樣會造成至少多一倍的數據庫調用。 --> ??<property name="testConnectionOnCheckin"> ???<value>false</value> ??</property>

?</bean>

?<!-- hibernate 操作數據庫 --> ?<bean id="sessionFactory" ??class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> ??<property name="dataSource" ref="dataSource"></property> ??<property name="hibernateProperties"> ???<props> ????<prop key="hibernate.dialect">${jdbc.dialect}</prop> ????<prop key="hibernate.show_sql">${hibernate.show_sql}</prop> ????<prop key="hibernate.format_sql">${hibernate.format_sql}</prop> ????<prop key="hibernate.generate_statistics">${hibernate.generate_statistics}</prop> ????<prop key="hibernate.temp.use_jdbc_metadata_defaults">false</prop> ????<prop key="hibernate.bytecode.use_reflection_optimizer">true</prop> ????<prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory ????</prop> ????<!-- 是否開啟二級緩存 --> ????<prop key="hibernate.cache.use_second_level_cache">false</prop> ????<!-- 是否開啟查詢緩存 --> ????<prop key="hibernate.cache.use_query_cache">false</prop> ????<!-- 數據庫批量查詢最大數 --> ????<prop key="hibernate.jdbc.fetch_size">200</prop> ????<!-- 數據庫批量更新、添加、刪除操作最大數? 這個坑,弄了很長時間,設置小了出問題--> ????<prop key="hibernate.jdbc.batch_size">500</prop> ????<!-- 指定hibernate在何時釋放JDBC連接 --> ????<prop key="hibernate.connection.release_mode">auto</prop> ????<!-- <property name="current_session_context_class">thread</property> --> ????<!-- 創建session方式 hibernate4.x 的方式 --> ????<prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext ????</prop>

????<!-- javax.persistence.validation.mode默認情況下是auto的,就是說如果不設置的話它是會自動去你的classpath下面找一個bean-validation**包 ?????所以把它設置為none即可 --> ????<prop key="javax.persistence.validation.mode">none</prop>

????<!-- <prop key="hibernate.hbm2ddl.auto">update</prop> -->

???</props> ??</property> ??<property name="packagesToScan"> ???<list> ????<value>model</value> ???</list> ??</property> ?</bean>

?<!-- 配置Service層事務,多層事務都是REQUIRED,不會出問題 --> ?<!-- <aop:config proxy-target-class="true"> <aop:config> <aop:pointcut id="autoproxy" ??expression="execution(* cn.cdjs.service.*.*(..))"></aop:pointcut> <aop:advisor ??advice-ref="txAdvice" pointcut-ref="autoproxy"></aop:advisor> </aop:config> -->

?<!-- 創建共享的jdbctemplate --> ?<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> ??<property name="dataSource" ref="dataSource"></property> ?</bean>

?<!-- 配置 注解管理事務proxy-target-class="true" --> <!-- ?<tx:annotation-driven transaction-manager="transactionManager1" /> --> ?<!-- hibernate 事務管理 --> <!--? ?<bean id="transactionManager1" ??class="org.springframework.orm.hibernate5.HibernateTransactionManager"> ??<property name="sessionFactory" ref="sessionFactory"></property> ?</bean>?? -->

?<!-- 配置 注解管理事務proxy-target-class="true" --> ?<tx:annotation-driven transaction-manager="transactionManager" /> ?<!-- 配置jdbc事務管理 --> ?<bean id="transactionManager" ??class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> ??<property name="dataSource" ref="dataSource"></property> ?</bean>

?<!-- Transactional 注意的幾點: --> ?<!-- 1 @Transactional 只能被應用到public方法上, --> ?<!-- 對于其它非public的方法,如果標記了@Transactional也不會報錯,但方法沒有事務功能. -->

?<!-- 2 默認情況下,一個有事務方法, --> ?<!--遇到RuntiomeException 時會回滾 . 遇到 受檢查的異常 是不會回滾 的. --> ?<!--要想所有異常都回滾,要加上 @Transactional( rollbackFor={Exception.class,其它異常}) . -->

?<!--@Transactional 的所有可選屬性如下: --> ?<!-- 屬性**********類型 ***************默認值*************說明 --> ?<!-- propagation * Propagation枚舉 ** REQUIRED********* 事務傳播屬性 (下有說明) --> ?<!-- isolation *** isolation枚舉 ***** DEFAULT********* 事務隔離級別 (另有說明) --> ?<!-- readOnly **** boolean ********** false*********** 是否只讀 --> ?<!-- timeout ***** int *************** -1 ************ 超時(秒) --> ?<!-- rollbackFor * Class[] ************ {}************ 需要回滾的異常類 --> ?<!-- rollbackForClassName * String[] ** {}************ 需要回滾的異常類名 --> ?<!-- noRollbackFor- Class[] *********** {} *********** 不需要回滾的異常類 --> ?<!-- noRollbackForClassName String[] ** {} *********** 不需要回滾的異常類名 -->

?<!-- 支持注解 --> ?<context:annotation-config></context:annotation-config> ?<!-- 自動掃描與裝配bean --> ?<context:component-scan base-package="dao,service,action"></context:component-scan>

?<!--Spring中bean獲取的工具類 <bean id="springContextUtils" class="com.BeanFactoryUtil" ??/> -->

?

?<!-- 使用Annotation自動注冊Bean,解決事務失效問題:在主容器中不掃描@Controller注解,在SpringMvc中只掃描@Controller注解。 --> ?<!--<context:component-scan base-package="/"> base-package 如果多個,用“,”分隔 --> ?<!-- <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" ??/> </context:component-scan> -->

?<!-- 配置初始化TreeMap <bean id="treeMap" class="cn.cdjs.util.InitTreeMap"> <constructor-arg ??ref="jdbcTemplate" index="0"></constructor-arg> </bean> -->

?<!--<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> ??<property name="configLocation" value="classpath:hibernate.cfg.xml"> </property> ??</bean> <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> ??<property name="sessionFactory" ref="sessionFactory" /> </bean> --> ?<!-- webservice start <bean class="org.springframework.remoting.jaxws.SimpleJaxWsServiceExporter"> ??<property name="baseAddress" value="http://localhost:7003/" /> </bean> --> ?<!-- <bean id="skpservice" class="ws.WsSkp"> <property name="jt" ref="jdbcTemplate"></property> ??</bean> --> ?<!-- webservice end -->

</beans>

轉載于:https://www.cnblogs.com/gaobo543013306/p/9848062.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/388138.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/388138.shtml
英文地址,請注明出處:http://en.pswp.cn/news/388138.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

在Python中查找子字符串索引的5種方法

在Python中查找字符串中子字符串索引的5種方法 (5 Ways to Find the Index of a Substring in Strings in Python) str.find() str.find() str.rfind() str.rfind() str.index() str.index() str.rindex() str.rindex() re.search() re.search() str.find() (str.find()) …

[LeetCode] 3. Longest Substring Without Repeating Characters 題解

問題描述 輸入一個字符串&#xff0c;找到其中最長的不重復子串 例1&#xff1a; 輸入&#xff1a;"abcabcbb" 輸出&#xff1a;3 解釋&#xff1a;最長非重復子串為"abc" 復制代碼例2&#xff1a; 輸入&#xff1a;"bbbbb" 輸出&#xff1a;1 解…

WPF中MVVM模式的 Event 處理

WPF的有些UI元素有Command屬性可以直接實現綁定&#xff0c;如Button 但是很多Event的觸發如何綁定到ViewModel中的Command呢&#xff1f; 答案就是使用EventTrigger可以實現。 繼續上一篇對Slider的研究&#xff0c;在View中修改Interaction. <i:Interaction.Triggers>&…

Eclipse 插件開發 向導

閱讀目錄 最近由于特殊需要&#xff0c;開始學習插件開發。   下面就直接弄一個簡單的插件吧!   1 新建一個插件工程   2 創建自己的插件名字&#xff0c;這個名字最好特殊一點&#xff0c;一遍融合到eclipse的時候&#xff0c;不會發生沖突。   3 下一步&#xff0c;進…

線性回歸 假設_線性回歸的假設

線性回歸 假設Linear Regression is the bicycle of regression models. It’s simple yet incredibly useful. It can be used in a variety of domains. It has a nice closed formed solution, which makes model training a super-fast non-iterative process.線性回歸是回…

ES6模塊與commonJS模塊的差異

參考&#xff1a; 前端模塊化 ES6 在語言標準的層面上&#xff0c;實現了模塊功能&#xff0c;而且實現得相當簡單&#xff0c;旨在成為瀏覽器和服務器通用的模塊解決方案。 其模塊功能主要由兩個命令構成&#xff1a;export和import。export命令用于規定模塊的對外接口&#x…

solo

solo - 必應詞典 美[so?lo?]英[s??l??]n.【樂】獨奏(曲)&#xff1b;獨唱(曲)&#xff1b;單人舞&#xff1b;單獨表演adj.獨唱[奏]的&#xff1b;單獨的&#xff1b;單人的v.獨奏&#xff1b;放單飛adv.獨網絡梭羅&#xff1b;獨奏曲&#xff1b;索羅變形復數&#xff1…

Eclipse 簡介和插件開發天氣預報

Eclipse 簡介和插件開發 Eclipse 是一個很讓人著迷的開發環境&#xff0c;它提供的核心框架和可擴展的插件機制給廣大的程序員提供了無限的想象和創造空間。目前網上流傳相當豐富且全面的開發工具方面的插件&#xff0c;但是 Eclipse 已經超越了開發環境的概念&#xff0c;可以…

趣味數據故事_壞數據的好故事

趣味數據故事Meet Julia. She’s a data engineer. Julia is responsible for ensuring that your data warehouses and lakes don’t turn into data swamps, and that, generally speaking, your data pipelines are in good working order.中號 EETJulia。 她是一名數據工程…

Linux 4.1內核熱補丁成功實踐

最開始公司運維同學反饋&#xff0c;個別宿主機上存在進程CPU峰值使用率異常的現象。而數萬臺機器中只出現了幾例&#xff0c;也就是說萬分之幾的概率。監控產生的些小誤差&#xff0c;不會造成宕機等嚴重后果&#xff0c;很容易就此被忽略了。但我們考慮到這個異常轉瞬即逝、并…

python分句_Python循環中的分句,繼續和其他子句

python分句Python中的循環 (Loops in Python) for loop for循環 while loop while循環 Let’s learn how to use control statements like break, continue, and else clauses in the for loop and the while loop.讓我們學習如何在for循環和while循環中使用諸如break &#xf…

eclipse plugin 菜單

簡介&#xff1a; 菜單是各種軟件及開發平臺會提供的必備功能&#xff0c;Eclipse 也不例外&#xff0c;提供了豐富的菜單&#xff0c;包括主菜單&#xff08;Main Menu&#xff09;&#xff0c;視圖 / 編輯器菜單&#xff08;ViewPart/Editor Menu&#xff09;和上下文菜單&am…

[翻譯 EF Core in Action 2.0] 查詢數據庫

Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的關于Entityframework Core 書籍。原版地址. 是除了官方文檔外另一個學習EF Core的不錯途徑, 書中由淺入深的講解的EF Core的相關知識。因為沒有中文版,所以本人對其進行翻譯。 預計每兩天…

hdu5692 Snacks dfs序+線段樹

題目傳送門 題目大意&#xff1a;給出一顆樹&#xff0c;根節點是0&#xff0c;有兩種操作&#xff0c;一是修改某個節點的value&#xff0c;二是查詢&#xff0c;從根節點出發&#xff0c;經過 x 節點的路徑的最大值。 思路&#xff1a;用樹狀數組寫發現還是有些麻煩&#xff…

python數據建模數據集_Python中的數據集

python數據建模數據集There are useful Python packages that allow loading publicly available datasets with just a few lines of code. In this post, we will look at 5 packages that give instant access to a range of datasets. For each package, we will look at h…

打開editor的接口討論

【打開editor的接口討論】 先來看一下workbench吧&#xff0c;workbench從靜態劃分應該大致如下&#xff1a; 從結構圖我們大致就可以猜測出來&#xff0c;workbench page作為一個IWorkbenchPart&#xff08;無論是eidtor part還是view part&#…

【三角函數】已知直角三角形的斜邊長度和一個銳角角度,求另外兩條直角邊的長度...

如圖,已知直角三角形ABC中,∠C90, ∠Aa ,ABc ,求直角邊AC、BC的長度. ∵ ∠C90,∠Aa ,ABc ,Cos∠AAC/AB ,Sin∠ABC/AB ,∴ ACAB*Cos∠Ac*Cosa ,BCAB*Sin∠Ac*Sina . 復制代碼

網絡攻防技術實驗五

2018-10-23 實驗五 學 號201521450005 中國人民公安大學 Chinese people’ public security university 網絡對抗技術 實驗報告 實驗五 綜合滲透 學生姓名 陳軍 年級 2015 區隊 五 指導教師 高見 信息技術與網絡安全學院 2018年10月23日 實驗任務總綱 2018—2019 …

usgs地震記錄如何下載_用大葉草繪制USGS地震數據

usgs地震記錄如何下載One of the many services provided by the US Geological Survey (USGS) is the monitoring and tracking of seismological events worldwide. I recently stumbled upon their earthquake datasets provided at the website below.美國地質調查局(USGS)…

Springboot 項目中 xml文件讀取yml 配置文件

2019獨角獸企業重金招聘Python工程師標準>>> 在xml文件中讀取yml文件即可&#xff0c;代碼如下&#xff1a; 現在spring-boot提倡零配置&#xff0c;但是的如果要集成老的spring的項目&#xff0c;涉及到的bean的配置。 <bean id"yamlProperties" clas…