SpringBoot學(xué)習(xí)資料_第1頁(yè)
SpringBoot學(xué)習(xí)資料_第2頁(yè)
SpringBoot學(xué)習(xí)資料_第3頁(yè)
SpringBoot學(xué)習(xí)資料_第4頁(yè)
SpringBoot學(xué)習(xí)資料_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 SpringBoot Spring 介紹 1.1 、 SpringBoot 簡(jiǎn)介 在您第 1 次接觸和學(xué)習(xí) Spring 框架的時(shí)候,是否因?yàn)槠浞彪s的配置而退卻了?在你第 n 次使用 Spring 框 架的時(shí)候,是否覺(jué)得一堆反復(fù)黏貼的配置有一些厭煩?那么您就不妨來(lái)試試使用 Spring Boot 來(lái)讓你更易 上手,更簡(jiǎn)單快捷地構(gòu)建 Spring 應(yīng)用! Spring Boot 讓我們的 Spring 應(yīng)用變的更輕量化。比如:你可以僅僅依靠一個(gè) Java 類來(lái)運(yùn)行一個(gè) Spring 引用。你也可以打包你的應(yīng)用為 jar 并通過(guò)使用 java -jar 來(lái)運(yùn)行你的 Spring Web 應(yīng)用。

2、Spring Boot 的主要優(yōu)點(diǎn): 為所有 Spring 開(kāi)發(fā)者更快的入門 開(kāi)箱即用,提供各種默認(rèn)配置來(lái)簡(jiǎn)化項(xiàng)目配置 嵌式容器簡(jiǎn)化 Web項(xiàng)目 沒(méi)有冗余代碼生成和 XML配置的要求 本章主要目標(biāo)完成 Spring Boot 基礎(chǔ)項(xiàng)目的構(gòu)建,并且實(shí)現(xiàn)一個(gè)簡(jiǎn)單的 Http 請(qǐng)求處理,通過(guò)這個(gè)例子對(duì) Spring Boot 有一個(gè)初步的了解,并體驗(yàn)其結(jié)構(gòu)簡(jiǎn)單、開(kāi)發(fā)快速的特性。 1.2 、系統(tǒng)要求: Java 7 及以上 Spring Framework 4.1.5 及以上 本文采用 Java 1.8.0_73 、 Spring Boot 1.3.2 調(diào)試通過(guò) 2.1 、創(chuàng)建一個(gè) Maven 工程

3、名為” springboot - helloworld ” 類型為 Jar 工程項(xiàng)目倉(cāng) U建 package 命名為 com.itmayiedu.controller (根據(jù)實(shí)際情況修改) 2.2、pom 文件引入依賴 vparent vgroupld org.springframework.boot vversion 1.3.3.RELEASE vdependencies vdependency vgroupld org.springframework.boot vartifactld spring-boot-starter-web v/ dependency v/ dependencies

4、 spring-boot-starter-parent 作用 在 pom.xml 中弓丨入 spring-boot-start-parent,spring 官方的解釋叫什么 stater poms, 它可以提供 dependency management, 也就是說(shuō)依賴管理,弓 I入以后在申明其它 dependency的時(shí)候就不需要 version 了,后面可以看到。 spring-boot-starter-web 作用 springweb 核心組件 spring-boot-maven-plugin 作用 如果我們要直接 Main 啟動(dòng) spring ,那么以下 plugin 必須要添加,否則

5、是無(wú)法啟動(dòng)的。如果使用 maven 的 spring-boot:run 的 話是不需要此配置的。(我在測(cè)試的時(shí)候,如果不配置下面的 plugin 也是直接在 Main 中運(yùn)行的。) vartifactld spring-boot-starter-parent v/ groupld v/ artifactld 倉(cāng) U建 package 命名為 com.itmayiedu.controller (根據(jù)實(shí)際情況修改) 2.3、編寫 HelloWorld 服務(wù) 創(chuàng)建 HelloController 類,容如下 RestController EnableAutoConfiguration public

6、class HelloController RequestMapping (/hello) public String index() return Hello World ; public static void main(String args ) SpringApplication. run (HelloController. class , args ); 2.4、 RestController 在上加上 RestController 表示修飾該 Controller 所有的方法返回 JSON 格式,直接可以編寫 Restful 接口 2.5、 EnableAutoConfigurat

7、ion 注解:作用在于讓 Spring Boot 根據(jù)應(yīng)用所聲明的依賴來(lái)對(duì) Spring 框架進(jìn)行自動(dòng)配置 這個(gè)注解告訴 Spring Boot 根據(jù)添加的 jar 依賴猜測(cè)你想如何配置 Spring。由于 spring-boot-starter-web 添加了 Tomcat 和 Spring MVC,所以 auto-configuration 將假定你正在開(kāi)發(fā)一 個(gè) web 應(yīng)用并相應(yīng)地對(duì) Spring進(jìn)行設(shè)置。 2.6 SpringApplication. run (HelloController. class , args ); 標(biāo)識(shí)為啟動(dòng)類 2.6.1 SpringbootApplic

8、ation 使用 SpringbootApplication 注解 可以解決根類或者配置類(我自己的說(shuō)法,就是 main 所在類) 頭上注解過(guò)多的問(wèn)題, 和 ComponentScan 一個(gè) SpringbootApplication 相當(dāng)于 Configuration,EnableAutoConfiguration 并具有他們的默認(rèn)屬性值 SpringBootApplication / 等同于 Configuration EnableAutoConfiguration ComponentScanpublic class Application public static void main(

9、String args) SpringApplication.run(Application. class , args); 2.7、SpringBoot 啟動(dòng)方式 1 Springboot 默認(rèn)端口號(hào)為 8080 RestController EnableAutoConfiguration public class HelloController RequestMapping (/hello) public String index() return Hello World ; public static void main(String args ) SpringApplication.

10、run (HelloController. class , args ); 啟動(dòng)主程序,打開(kāi)瀏覽器訪問(wèn) localhost:8080/index ,可以看到頁(yè)面輸出 Hello World 2.8、SpringBoot 啟動(dòng)方式 2 ComponentScan (basePackages = .itmayiedu.controller )控制器掃包圍 ComponentScan (basePackages = .itmayiedu.controller ) En ableAutoC on figuratio n public class App public static void main(

11、String args ) SpringApplication. run (App. class , args ); 三、Web開(kāi)發(fā) 3.1、 靜態(tài)資源訪問(wèn) 在我們開(kāi)發(fā) Web應(yīng)用的時(shí)候,需要引用大量的 js、css、圖片等靜態(tài)資源。 默認(rèn)配置 Spring Boot 默認(rèn)提供靜態(tài)資源目錄位置需置于 classpath 下,目錄名需符合如下規(guī)則: /static /public /resources /META-INF/resources 舉例:我們可以在 src/main/resources/ 目錄下創(chuàng)建 static ,在該位置放置一個(gè)圖片文件。啟動(dòng)程序后, 嘗試訪問(wèn) localhost:

12、8080/D.jpg 。如能顯示圖片,配置成功。 3.2、 全局捕獲異常 ExceptionHandler 表示攔截異常 ? ControllerAdvice 是 controller 的一個(gè)輔助類,最常用的就是作為全局異常處理的切面類 ? ControllerAdvice 可以指定掃描圍 ? ControllerAdvice 約定了幾種可行的返回值,如果是直接返回 model 類的話,需要使用 ResponseBody 進(jìn)行 json 轉(zhuǎn)換 o 返回 String ,表示跳到某個(gè) view o 返回 modelAndView o 返回 model + ResponseBody Control

13、lerAdvice public class GlobalExceptionHandler ExceptionHandler (RuntimeException. class ) ResponseBody public Map exceptionHandler() MapvString, Object mapput( errorCode mapput( errorMsg map = new HashMapvString, Object(); ,101); 系統(tǒng)錯(cuò)誤!); return ma 3.3、渲染 Web 頁(yè)面 渲染 Web頁(yè)面 在之前的示例中,我們都是通過(guò) RestController

14、 來(lái)處理請(qǐng)求,所以返回的容為 json 對(duì)象。那么如果需要 渲染 html頁(yè)面的時(shí)候,要如何實(shí)現(xiàn)呢? 模板引擎 在動(dòng)態(tài) HTML實(shí)現(xiàn)上 Spring Boot 依然可以完美勝任,并且提供了多種模板引擎的默認(rèn)配置支持,所以在推 薦的模板引擎下,我們可以很快的上手開(kāi)發(fā)動(dòng)態(tài)。 Spring Boot 提供了默認(rèn)配置的模板引擎主要有以下幾種: ? Thymeleaf ? FreeMarker ? Velocity ? Groovy ? Mustache Spring Boot 建議使用這些模板引擎,避免使用 JSP,若一定要使用 JSP將無(wú)法實(shí)現(xiàn) Spring Boot 的多種特 性,具體可見(jiàn)后文:支

15、持 JSP的配置 當(dāng)你使用上述模板引擎中的任何一個(gè),它們默認(rèn)的模板配置路徑為: src/main/resources/templates 。當(dāng) 然也可以修改這個(gè)路徑,具體如何修改,可在后續(xù)各模板引擎的配置屬性中查詢并修改。 3.4、使用 Freemarker 模板引擎渲染 web 視圖 341、pom 文件引入: dependency vgroupld org.springframework.boot vartifactld spring-boot-starter-freemarker 3.4.2、后臺(tái)代碼 在 src/main/resources/ 創(chuàng)建一個(gè) templates 文件夾 后綴

16、為 *.ftl RequestMapping (/index ) public Stri ng in dex(Map map) map.put( name,美麗的天使.); retu rn i ndex ; 343、前臺(tái)代碼 vmeta charset二UTF-8 / $n ame 3.4.4、Freemarker 其他用法 RequestMappi ng (/in dex ) public Stri ng in dex(Map map) map.put( name ,# 螞蟻課堂 #); map.put( sex ,1); List userlist = new ArrayList(); u

17、serlist add(余勝軍); userlist add(三); userlist .add(四); map.put( userlist , userlist ); retu rn i ndex ; 首頁(yè) $name 男 女 其他 v#list userlist as user $user v/body 345、Freemarker 配置 新建 perties 文件 If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If

18、 If If If If If If If If If If If If If If If If If If If If If If If II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II #FREEMARKER (FreeMarkerAutoCo nfiguratio n) If If If If If If

19、If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If If II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II II

20、II II II II II II spri ng.freemarker.allow-request-override=false spri ng.freemarker.cache=true spri ng.freemarker.check-template-locati on=true spri ng.freemarker.charset=UTF-8 spri ng.freemarker.c onten t-type=text/html spri ng.freemarker.expose-request-attributes=false spri ng.freemarker.expose-s

21、essi on-attributes=false spri ng.freemarker.expose-spri ng-macro-helpers=false #spri ng.freemarker.prefix= #spri ng.freemarker.request-con text-attribute= #spri ng.freemarker.sett in gs.*= spri ng.freemarker.suffix=.ftl spri ng.freemarker.template-loader-path=classpath:/templates/ #comma-separated l

22、ist #spri ng.freemarker.view-names= # whitelist of view n ames that can be resolved 3.5、使用 JSP 渲染 Web 視圖 3.5.1、pom 文件引入以下依賴 vgroupld org.springframework.boot spring-boot-starter-parent 1.3.3.RELEASE Con troller public class ln dexC on troller RequestMapping (/index public Stri ng in dex() return i n

23、dexdependency vgroupld org.springframework.boot vartifactld spring-boot-starter-web dependency org.springframework.boot spring-boot-starter-tomcat (dependency org.apache.tomcat.embed tomcat-embed-jasper 3.5.2、在 perties 倉(cāng) U 建以下配置 spring.mvc.view.prefix= /WEB-INF/jsp/ spring.mvc.view.su

24、ffix= .jsp 3.5.3、 四、數(shù)據(jù)訪問(wèn) 4.1、springboot 整合使用 JdbcTemplate pom 文件引入 org.spri ngframework.boot 1.5.2.RELEASE org.spri ngframework.boot spri ng-boot-starter-jdbc mysql mysql-c onn ector-java 5.1.21 org.spri ngframework.boot spri ng-boot-starter-test test org.spri ngframework.boot spri ng-boot-starter-w

25、eb applicati on .properties 新增配置 spring.datasource.url= jdbc:mysql:/localhost:3306/test spring.datasource.username= root vartifactld spri ng-boot-starter-pare nt spring.datasource.password= root spring.datasource.driver-class-name= .mysql.jdbc.Driver UserService 類 Service public class UserServiceImp

26、l impleme nts UserService Autowired private JdbcTemplate jdbcTemplate ; public void createUser(Stri ng n ame, I nteger age) System. out .println( ssss); jdbcTemplate .update( i nsert into users values (nu ll,?,?); ,name, age); App 類 ComponentScan (basePackages = .itmayiedu ) EnableAutoConfiguration

27、public class App public static void main(String args ) SpringApplication. run (App. class , args ); 注意:spring-boot-starter-parent 要在 1.5 以上 4.2、springboot 整合使用 mybatis 421、pom 文件引入 org.springframework.boot spri ng-boot-starter-pare nt 1.3.2.RELEASE test org.mybatis.spri ng.boot mybatis-spri ng-boot-

28、starter 1.1.1 org.spri ngframework.boot spri ng-boot-starter-web 4.2.2、配置文件引入 spri ng.datasource.url二 jdbc:mysql:/localhost:3306/test spri ng.datasource.user name二 root spri ng.datasource.password二 root spri ng.datasource.driver-class-n ame= .mysql.jdbc.Driver 4.2.3、Mapper 代碼 public in terface UserM

29、apper Select ( SELECT * FROM USERS WHERE NAME = #name ) User findByName( Param (name ) String name); lnsert ( lNSERT lNTO USERS(NAME, AGE) VALUES(#name, #age) ) int insert( Param (name ) String name, Param (age ) lnteger age );org.spri ngframework.boot / groupld spri ng-boot-starter / artifactld org

30、.spri ngframework.boot / groupld spri ng-boot-starter-test mysql mysql-c onn ector-java 5.1.21 vdependency vgroupld org.springframework.boot vartifactld spring-boot-starter-web v/ dependencies 424、 啟動(dòng)方式 ComponentScan (basePackages = .itmayiedu ) MapperScan (basePackages = .itmayiedu.mapper ) SpringB

31、ootApplication public class App public static void main(String args ) SpringApplication. run (App. class , args ); 4.3、springboot 整合使用 springjpa 4.3.1 pom 文件引入依賴 vparent vgroupld org.springframework.boot v/ groupld vartifactld spring-boot-starter-parent v/ artifactld vversion 1.4.2.RELEASE v/ versio

32、n v/ parent vdependencies vdependency vgroupld org.springframework.boot v/ groupld vartifactld spring-boot-starter-data-jpa v/ artifactld vdependency vgroupld mysql v/groupld vartifactld mysql-connector-java v/artifactld vversion 5.1.21 v/ version v/ groupld v/ artifactld 432 創(chuàng)建 User 實(shí)體類 En tity (n

33、ame = users) public class User Id Gen eratedValue private Integer id ; Colum n private Stri ng n ame; Colum n private Integer age; / .get/set 方法 433 創(chuàng)建 UserDao public interface UserDao extends JpaRepositoryvUser, Integer 創(chuàng)建 IndexController RestC on troller public class In dexC on troller Autowired p

34、rivate UserDao userDao ; RequestMapping (/index ) public String index(Integer id ) User findUser = userDao .findOne( id ); System. out .println( findUser .getName(); retu rn success ; 4.3.5 啟動(dòng)項(xiàng)目 ComponentScan (basePackages = .itmayiedu ) En ableJpaRepositories (basePackages = .itmayiedu.dao ) En abl

35、eAutoC on figuratio n En titySca n(basePackages = .itmayiedu.e ntity ) run (App. class , args ); 4.4、springboot 整合多數(shù)據(jù)源 同學(xué)們思考下,你們?cè)陧?xiàng)目中有使用到多數(shù)據(jù)源嗎? 4.4.1 配置文件中新增兩個(gè)數(shù)據(jù)源 spring.datasource.testl.driverClassName = .mysql.jdbc.Driver spring.datasource.test1.url = jdbc:mysql:/localhost:3306/test01?useUnicode=tr

36、ue&characterEncoding=utf-8 spring.datasource.test1.username = root spring.datasource.test1.password = root spring.datasource.test2.driverClassName = .mysql.jdbc.Driver spring.datasource.test2.url = idbc:mysql:/localhost:3306/test02?useUnicode=true&characterEncodinq=utf-8 spring.datasource.test2.user

37、name = root spring.datasource.test2.password = root 4.4.2 配置文件中新增兩個(gè)數(shù)據(jù)源 Configuration / 注冊(cè)至 V springboot 容器中 MapperSca n (basePackages = .itmayiedu.user1 , sqlSessi on FactoryRef = test1SqlSessi on Factory ) public class DataSource1C onfig /* * 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f metho

38、dDesc :功能描述:(配置 testl 數(shù)據(jù)庫(kù)) public class APP public static void mai n( Stri ng args ) Spri ngApplicati on. 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f author : 余勝軍 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f param : return 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f createTime :2

39、017 年 9月 17 日 下午 3:16:44 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f retu rn Type :retu rn DataSource 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f copyright :每特教育科技 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f QQ644064779 */ Bean (name = testIDataSource ) Primary Con figurati on P

40、roperties (prefix = spri ng.datasource.testl ) public DataSource testDataSource() return DataSourceBuilder. create ().build(); /* * 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f methodDesc :功能描述:(test1 sql 會(huì)話工廠) 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f author : 余勝軍 6ac36-Numbered_a171

41、a773-9e2a-4438-b894-78b20fa767f param : param 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f dataSource 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f param : return 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f param : throws 6ac36-Numbered_a171a773-9e2a-4438-b894-78b20fa767f Excepti o

42、n createTime :2017年 9月 17日 下午 3:17:08 retu rn Type :param dataSource retu rn Type :return retu rn Type :throws Excepti on SqlSessi on Factory copyright : 每特教育科技 QC644064779 */ Bean (name = testlSqlSessionFactory ) Primary public SqlSessi on Factory testSqlSessio nFactory( Qualifier ( testIDataSource

43、 ) DataSource throws Excepti on SqlSessi on FactoryBea n bea n 二 new SqlSessi on FactoryBea n(); bean .setDataSource( dataSource ); / bea n.setMapperLocati ons( / new PathMatchi ngResourcePatter nResolver().getResources(classpath:mybatis/mapper/test1/*.xml); return bean .getObject(); /* * * methodDe

44、sc :功能描述:(test1 事物管理) dataSource ) author :余勝軍 param : param dataSource param : return param : throws Exceptio n createTime :2017年 9月 17日 下午 3:17:08 retu rn Type :param dataSource retu rn Type :return retu rn Type :throws Excepti on SqlSessi on Factory copyright : 每特教育科技 QQ644064779 */ Bea n(n ame =

45、 testITra nsacti onMan ager ) Primary public DataSourceTransactionManager testTransactionManager( Qualifier (test1DataSource ) DataSource dataSource ) return new DataSourceTra nsactio nMan ager( dataSource ); Bea n(n ame = test1SqlSessio nTemplate ) public SqlSessi on Template testSqlSessio nTemplat

46、e( Qualifier (test1SqlSessi on Factory ) SqlSessi on Factory sqlSessio nFactory ) throws Exceptio n return new SqlSessio nTemplate( sqlSessio nFactory ); 442 創(chuàng)建分包Mapper public interface User1Mapper Insert (insert into users values(null,#name,#age); ) public int addUser( Param( name ) String name Par

47、am (age ) Integer age); 4.4.3 啟動(dòng)項(xiàng)目 ComponentScan (basePackages = .itmayiedu ) En ableAutoC on figuratio n public class App public static void main(String args ) SpringApplication. run (App. class , args ); matchi ng bea n but found 2: test1DataSource,test2DataSource 五、事物管理 5.1.1springboot 整合事物管理 spr

48、ingboot 默認(rèn)集成事物,只主要在方法上加上 Transactional 即可 5.1.2SpringBoot 分布式事物管理 使用 springboot+jta+ atomikos 分布式事物管理 新增配置文件信息 org.springframework.boot spring-boot-starter-jta-atomikos_ _ 新增配置文件信息 # Mysql 1 mysql.datasource.test.url = idbc:mysql:/localhost:3306/test01?useU nicode二true&characterE nco

49、di ng二utf-8 mysql.datasource.test.user name = root mysql.datasource.test.password = root No qualify ing bea n of type javax.sql.DataSource is defined: expected sin gle mysql.datasource.test.m in PoolSize = 3 mysql.datasource.test.maxPoolSize = 25 mysql.datasource.test.maxLifetime = 20000 mysql.datas

50、ource.test.borrowC onn ectio nTimeout = 30 mysql.datasource.test .l ogi nTimeout = 30 mysql.datasource.test.ma intenanceln terval = 60 mysql.datasource.test.maxIdleTime = 60 mysql.datasource.test.testQuery = select 1 # Mysql 2 mysql.datasource.test2.url = jdbc:mysql:/localhost:3306/test02?useU nicod

51、e二true&characterE ncodi ng二utf-8 mysql.datasource.test2.user name = root mysql.datasource.test2.password = root mysql.datasource.test2.m in PoolSize = 3 mysql.datasource.test2.maxPoolSize = 25 mysql.datasource.test2.maxLifetime = 20000 mysql.datasource.test2.borrowC onn ecti on Timeout = 30 mysql.da

52、tasource.test2.logi nTimeout = 30 mysql.datasource.test2.ma intenanceIn terval = 60 mysql.datasource.test2.maxIdleTime = 60 mysql.datasource.test2.testQuery = select 1 讀取配置文件信息 package .itmayiedu.c on fig; import org.spri ngframework.boot.c on perties.C on figuratio nProperties; Con

53、figurati on Properties (prefix = mysql.datasource.test ) public class DBCo nfig1 private Stri ng url ; private Stri ng user name ; private Stri ng password ; private int min PoolSize ; private int maxPoolSize ; private int maxLifetime ; private int borrowC onn ectio nTimeout private int logi nTimeou

54、t ; private int maintenancein terval private int maxIdleTime ; private Stri ng testQuery ; package .itmayiedu.c on fig; import org.spri ngframework.boot.c on perties.C on figuratio nProperties; Con figurati on Properties (prefix = mysql.datasource.test1 ) public class DBCon fig2 private Stri

55、 ng url ; private Stri ng user name ; private Stri ng password ; private int min PoolSize ; private int maxPoolSize ; private int maxLifetime ; private int borrowC onn ectio nTimeout private int logi nTimeout ; private int maintenancein terval private int maxIdleTime ; private Stri ng testQuery ; 5.

56、1.2.4 創(chuàng)建多數(shù)據(jù)源 Con figurati on / basePackages 最好分開(kāi)配置如果放在同一個(gè)文件夾可能會(huì)報(bào)錯(cuò) MapperScan (basePackages = .itmayiedu.test01 , sqlSessionTemplateRef = testSqISessionTemplate ) public class TestMyBatisCo nfig1 /配置數(shù)據(jù)源 Primary Bean (name = testDataSource ) public DataSource testDataSource(DBConfig1 testConfig ) thro

57、ws SQLException MysqlXADataSource mysqlXaDataSource = new MysqlXADataSource(); mysqlXaDataSource .setUrl( testC onfig .getUrl(); mysqlXaDataSource .setPinGlobalTxToPhysicalConnection( true ); mysqIXaDataSource .setPassword( testCo nfig .getPassword(); mysqIXaDataSource .setUser( testC onfig .getUser

58、 name(); mysqlXaDataSource .setPinGlobalTxToPhysicalConnection( true ); AtomikosDataSourceBea n xaDataSource = new AtomikosDataSourceBea n(); xaDataSource .setXaDataSource( mysqlXaDataSource ); xaDataSource .setU niq ueResourceName( testDataSource ); xaDataSource .setMi nPoolSize( testC onfig .getMi

59、 nPoolSize(); xaDataSource .setMaxPoolSize( testC onfig .getMaxPoolSize(); xaDataSource .setMaxLifetime( testC onfig .getMaxLifetime(); xaDataSource .setBorrowC onn ecti on Timeout( testC onfig .getBorrowCo nn ectio nTimeout(); xaDataSource .setLogi nTimeout( testCo nfig .getLogi nTimeout(); xaDataS

60、ource .setMai nte nan ceI nterval( testC onfig .getMai nte nan ceI nterval(); xaDataSource .setMaxldleTime( testC onfig .getMaxIdleTime(); xaDataSource .setTestQuery( testC onfig .getTestQuery(); retu rn xaDataSource ; Bean (name = testSqlSessionFactory ) public SqlSessi on Factory testSqlSessio nFa

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論