javax.transaction.UserTransaction和net.sf.hibernate.Transaction的区别?

lispoy 2008-03-18 09:05:21
javax.transaction.UserTransaction
net.sf.hibernate.Transaction

请问这2个事务的区别?
...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lispoy 2008-03-19
  • 打赏
  • 举报
回复
不知道我的理解对不对,先结了吧。
UnknowREN 2008-03-18
  • 打赏
  • 举报
回复
Short answer, when using the JTATransaction factory hibernate will actually locate and begin the user transaction when you begin a hibernate transaction. If the user transaction is already in progress hibernate hooks in with it.

Have a look at the begin method of the JTATransaction http://fisheye.jboss.org/browse/~raw,r=9601/Hibernate/trunk/Hibernate3/src/org/hibernate/transaction/JTATransaction.java

My understanding is that if you're always running in a JTA environment you can basically use Hibernate Transactions and User Transaction interchangeably.

from:http://forum.hibernate.org/viewtopic.php?p=2323900&sid=74b4016db8b87320406d3cf301d60963
lispoy 2008-03-18
  • 打赏
  • 举报
回复

简单的说javax.transaction.UserTransaction是java的一个线程事务管理,但是不可嵌套。
而net.sf.hibernate.Transaction是数据库的事务,可嵌套。
我们开发用的时候可以交互使用。这样理解,对么。
lispoy 2008-03-18
  • 打赏
  • 举报
回复
简单的说.JTATransaction是java的一个线程事务管理,但是不可嵌套。
而net.sf.hibernate.Transaction是数据库的事务,可嵌套。
我们开发用的时候可以交互使用。这样理解,对么。
hibernate.properties # # Hibernate, Relational Persistence for Idiomatic Java # # License: GNU Lesser General Public License (LGPL), version 2.1 or later. # See the lgpl.txt file in the root directory or . # ###################### ### Query Language ### ###################### ## define query language constants / function names hibernate.query.substitutions yes 'Y', no 'N' ## select the classic query parser #hibernate.query.factory_class org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory ################# ### Platforms ### ################# ## JNDI Datasource #hibernate.connection.datasource jdbc/test #hibernate.connection.username db2 #hibernate.connection.password db2 ## HypersonicSQL hibernate.dialect org.hibernate.dialect.HSQLDialect hibernate.connection.driver_class org.hsqldb.jdbcDriver hibernate.connection.username sa hibernate.connection.password hibernate.connection.url jdbc:hsqldb:./build/db/hsqldb/hibernate #hibernate.connection.url jdbc:hsqldb:hsql://localhost #hibernate.connection.url jdbc:hsqldb:test ## H2 (www.h2database.com) #hibernate.dialect org.hibernate.dialect.H2Dialect #hibernate.connection.driver_class org.h2.Driver #hibernate.connection.username sa #hibernate.connection.password #hibernate.connection.url jdbc:h2:mem:./build/db/h2/hibernate #hibernate.connection.url jdbc:h2:testdb/h2test #hibernate.connection.url jdbc:h2:mem:imdb1 #hibernate.connection.url jdbc:h2:tcp://dbserv:8084/sample; #hibernate.connection.url jdbc:h2:ssl://secureserv:8085/sample; #hibernate.connection.url jdbc:h2:ssl://secureserv/testdb;cipher=AES ## MySQL #hibernate.dialect org.hibernate.dialect.MySQLDialect #hibernate.dialect org.hibernate.dialect.MySQLInnoDBDialect #hibernate.dialect org.hibernate.dialect.MySQLMyISAMDialect #hibernate.connection.driver_class com.mysql.jdbc.Driver #hibernate.connection.url jdbc:mysql:///test #hibernate.connection.username gavin #hibernate.connection.password ## Oracle #hibernate.dialect org.hibernate.dialect.Oracle8iDialect #hibernate.dialect org.hibernate.dialect.Oracle9iDialect #hibernate.dialect org.hibernate.dialect.Oracle10gDialect #hibernate.connection.driver_class oracle.jdbc.driver.OracleDriver #hibernate.connection.username ora #hibernate.connection.password ora #hibernate.connection.url jdbc:oracle:thin:@localhost:1521:orcl #hibernate.connection.url jdbc:oracle:thin:@localhost:1522:XE ## PostgreSQL #hibernate.dialect org.hibernate.dialect.PostgreSQLDialect #hibernate.connection.driver_class org.postgresql.Driver #hibernate.connection.url jdbc:postgresql:template1 #hibernate.connection.username pg #hibernate.connection.password ## DB2 #hibernate.dialect org.hibernate.dialect.DB2Dialect #hibernate.connection.driver_class com.ibm.db2.jcc.DB2Driver #hibernate.connection.driver_class COM.ibm.db2.jdbc.app.DB2Driver #hibernate.connection.url jdbc:db2://localhost:50000/somename #hibernate.connection.url jdbc:db2:somename #hibernate.connection.username db2 #hibernate.connection.password db2 ## TimesTen #hibernate.dialect org.hibernate.dialect.TimesTenDialect #hibernate.connection.driver_class com.timesten.jdbc.TimesTenDriver #hibernate.connection.url jdbc:timesten:direct:test #hibernate.connection.username #hibernate.connection.password ## DB2/400 #hibernate.dialect org.hibernate.dialect.DB2400Dialect #hibernate.connection.username user #hibernate.connection.password password ## Native driver #hibernate.connection.driver_class COM.ibm.db2.jdbc.app.DB2Driver #hibernate.connection.url jdbc:db2://systemname ## Toolbox driver #hibernate.connection.driver_class com.ibm.as400.access.AS400JDBCDriver #hibernate.connection.url jdbc:as400://systemname ## Derby (not supported!) #hibernate.dialect org.hibernate.dialect.DerbyDialect #hibernate.connection.driver_class org.apache.derby.jdbc.EmbeddedDriver #hibernate.connection.username #hibernate.connection.password #hibernate.connection.url jdbc:derby:build/db/derby/hibernate;create=true ## Sybase #hibernate.dialect org.hibernate.dialect.SybaseDialect #hibernate.connection.driver_class com.sybase.jdbc2.jdbc.SybDriver #hibernate.connection.username sa #hibernate.connection.password sasasa #hibernate.connection.url jdbc:sybase:Tds:co3061835-a:5000/tempdb ## Mckoi SQL #hibernate.dialect org.hibernate.dialect.MckoiDialect #hibernate.connection.driver_class com.mckoi.JDBCDriver #hibernate.connection.url jdbc:mckoi:/// #hibernate.connection.url jdbc:mckoi:local://C:/mckoi1.0.3/db.conf #hibernate.connection.username admin #hibernate.connection.password nimda ## SAP DB #hibernate.dialect org.hibernate.dialect.SAPDBDialect #hibernate.connection.driver_class com.sap.dbtech.jdbc.DriverSapDB #hibernate.connection.url jdbc:sapdb://localhost/TST #hibernate.connection.username TEST #hibernate.connection.password TEST #hibernate.query.substitutions yes 'Y', no 'N' ## MS SQL Server #hibernate.dialect org.hibernate.dialect.SQLServerDialect #hibernate.connection.username sa #hibernate.connection.password sa ## JSQL Driver #hibernate.connection.driver_class com.jnetdirect.jsql.JSQLDriver #hibernate.connection.url jdbc:JSQLConnect://1E1/test ## JTURBO Driver #hibernate.connection.driver_class com.newatlanta.jturbo.driver.Driver #hibernate.connection.url jdbc:JTurbo://1E1:1433/test ## WebLogic Driver #hibernate.connection.driver_class weblogic.jdbc.mssqlserver4.Driver #hibernate.connection.url jdbc:weblogic:mssqlserver4:1E1:1433 ## Microsoft Driver (not recommended!) #hibernate.connection.driver_class com.microsoft.jdbc.sqlserver.SQLServerDriver #hibernate.connection.url jdbc:microsoft:sqlserver://1E1;DatabaseName=test;SelectMethod=cursor ## The New Microsoft Driver #hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver #hibernate.connection.url jdbc:sqlserver://localhost ## jTDS (since version 0.9) #hibernate.connection.driver_class net.sourceforge.jtds.jdbc.Driver #hibernate.connection.url jdbc:jtds:sqlserver://1E1/test ## Interbase #hibernate.dialect org.hibernate.dialect.InterbaseDialect #hibernate.connection.username sysdba #hibernate.connection.password masterkey ## DO NOT specify hibernate.connection.sqlDialect ## InterClient #hibernate.connection.driver_class interbase.interclient.Driver #hibernate.connection.url jdbc:interbase://localhost:3060/C:/firebird/test.gdb ## Pure Java #hibernate.connection.driver_class org.firebirdsql.jdbc.FBDriver #hibernate.connection.url jdbc:firebirdsql:localhost/3050:/firebird/test.gdb ## Pointbase #hibernate.dialect org.hibernate.dialect.PointbaseDialect #hibernate.connection.driver_class com.pointbase.jdbc.jdbcUniversalDriver #hibernate.connection.url jdbc:pointbase:embedded:sample #hibernate.connection.username PBPUBLIC #hibernate.connection.password PBPUBLIC ## Ingres ## older versions (before Ingress 2006) #hibernate.dialect org.hibernate.dialect.IngresDialect #hibernate.connection.driver_class ca.edbc.jdbc.EdbcDriver #hibernate.connection.url jdbc:edbc://localhost:II7/database #hibernate.connection.username user #hibernate.connection.password password ## Ingres 2006 or later #hibernate.dialect org.hibernate.dialect.IngresDialect #hibernate.connection.driver_class com.ingres.jdbc.IngresDriver #hibernate.connection.url jdbc:ingres://localhost:II7/database;CURSOR=READONLY;auto=multi #hibernate.connection.username user #hibernate.connection.password password ## Mimer SQL #hibernate.dialect org.hibernate.dialect.MimerSQLDialect #hibernate.connection.driver_class com.mimer.jdbc.Driver #hibernate.connection.url jdbc:mimer:multi1 #hibernate.connection.username hibernate #hibernate.connection.password hibernate ## InterSystems Cache #hibernate.dialect org.hibernate.dialect.Cache71Dialect #hibernate.connection.driver_class com.intersys.jdbc.CacheDriver #hibernate.connection.username _SYSTEM #hibernate.connection.password SYS #hibernate.connection.url jdbc:Cache://127.0.0.1:1972/HIBERNATE ################################# ### Hibernate Connection Pool ### ################################# hibernate.connection.pool_size 1 ########################### ### C3P0 Connection Pool### ########################### #hibernate.c3p0.max_size 2 #hibernate.c3p0.min_size 2 #hibernate.c3p0.timeout 5000 #hibernate.c3p0.max_statements 100 #hibernate.c3p0.idle_test_period 3000 #hibernate.c3p0.acquire_increment 2 #hibernate.c3p0.validate false ############################## ### Proxool Connection Pool### ############################## ## Properties for external configuration of Proxool hibernate.proxool.pool_alias pool1 ## Only need one of the following #hibernate.proxool.existing_pool true #hibernate.proxool.xml proxool.xml #hibernate.proxool.properties proxool.properties ################################# ### Plugin ConnectionProvider ### ################################# ## use a custom ConnectionProvider (if not set, Hibernate will choose a built-in ConnectionProvider using hueristics) #hibernate.connection.provider_class org.hibernate.connection.DriverManagerConnectionProvider #hibernate.connection.provider_class org.hibernate.connection.DatasourceConnectionProvider #hibernate.connection.provider_class org.hibernate.connection.C3P0ConnectionProvider #hibernate.connection.provider_class org.hibernate.connection.ProxoolConnectionProvider ####################### ### Transaction API ### ####################### ## Enable automatic flush during the JTA beforeCompletion() callback ## (This setting is relevant with or without the Transaction API) #hibernate.transaction.flush_before_completion ## Enable automatic session close at the end of transaction ## (This setting is relevant with or without the Transaction API) #hibernate.transaction.auto_close_session ## the Transaction API abstracts application code from the underlying JTA or JDBC transactions #hibernate.transaction.factory_class org.hibernate.transaction.JTATransactionFactory #hibernate.transaction.factory_class org.hibernate.transaction.JDBCTransactionFactory ## to use JTATransactionFactory, Hibernate must be able to locate the UserTransaction in JNDI ## default is java:comp/UserTransaction ## you do NOT need this setting if you specify hibernate.transaction.manager_lookup_class #jta.UserTransaction jta/usertransaction #jta.UserTransaction javax.transaction.UserTransaction #jta.UserTransaction UserTransaction ## to use the second-level cache with JTA, Hibernate must be able to obtain the JTA TransactionManager #hibernate.transaction.manager_lookup_class org.hibernate.transaction.JBossTransactionManagerLookup #hibernate.transaction.manager_lookup_class org.hibernate.transaction.WeblogicTransactionManagerLookup #hibernate.transaction.manager_lookup_class org.hibernate.transaction.WebSphereTransactionManagerLookup #hibernate.transaction.manager_lookup_class org.hibernate.transaction.OrionTransactionManagerLookup #hibernate.transaction.manager_lookup_class org.hibernate.transaction.ResinTransactionManagerLookup ############################## ### Miscellaneous Settings ### ############################## ## print all generated SQL to the console #hibernate.show_sql true ## format SQL in log and console hibernate.format_sql true ## add comments to the generated SQL #hibernate.use_sql_comments true ## generate statistics #hibernate.generate_statistics true ## auto schema export #hibernate.hbm2ddl.auto create-drop #hibernate.hbm2ddl.auto create #hibernate.hbm2ddl.auto update #hibernate.hbm2ddl.auto validate ## specify a default schema and catalog for unqualified tablenames #hibernate.default_schema test #hibernate.default_catalog test ## enable ordering of SQL UPDATEs by primary key #hibernate.order_updates true ## set the maximum depth of the outer join fetch tree hibernate.max_fetch_depth 1 ## set the default batch size for batch fetching #hibernate.default_batch_fetch_size 8 ## rollback generated identifier values of deleted entities to default values #hibernate.use_identifier_rollback true ## enable bytecode reflection optimizer (disabled by default) #hibernate.bytecode.use_reflection_optimizer true ##################### ### JDBC Settings ### ##################### ## specify a JDBC isolation level #hibernate.connection.isolation 4 ## enable JDBC autocommit (not recommended!) #hibernate.connection.autocommit true ## set the JDBC fetch size #hibernate.jdbc.fetch_size 25 ## set the maximum JDBC 2 batch size (a nonzero value enables batching) #hibernate.jdbc.batch_size 5 #hibernate.jdbc.batch_size 0 ## enable batch updates even for versioned data hibernate.jdbc.batch_versioned_data true ## enable use of JDBC 2 scrollable ResultSets (specifying a Dialect will cause Hibernate to use a sensible default) #hibernate.jdbc.use_scrollable_resultset true ## use streams when writing binary types to / from JDBC hibernate.jdbc.use_streams_for_binary true ## use JDBC 3 PreparedStatement.getGeneratedKeys() to get the identifier of an inserted row #hibernate.jdbc.use_get_generated_keys false ## choose a custom JDBC batcher # hibernate.jdbc.factory_class ## enable JDBC result set column alias caching ## (minor performance enhancement for broken JDBC drivers) # hibernate.jdbc.wrap_result_sets ## choose a custom SQL exception converter #hibernate.jdbc.sql_exception_converter ########################## ### Second-level Cache ### ########################## ## optimize cache for minimal "puts" instead of minimal "gets" (good for clustered cache) #hibernate.cache.use_minimal_puts true ## set a prefix for cache region names hibernate.cache.region_prefix hibernate.test ## disable the second-level cache #hibernate.cache.use_second_level_cache false ## enable the query cache #hibernate.cache.use_query_cache true ## store the second-level cache entries in a more human-friendly format #hibernate.cache.use_structured_entries true ## choose a cache implementation #hibernate.cache.region.factory_class org.hibernate.cache.infinispan.InfinispanRegionFactory #hibernate.cache.region.factory_class org.hibernate.cache.infinispan.JndiInfinispanRegionFactory #hibernate.cache.region.factory_class org.hibernate.cache.internal.EhCacheRegionFactory #hibernate.cache.region.factory_class org.hibernate.cache.internal.SingletonEhCacheRegionFactory hibernate.cache.region.factory_class org.hibernate.cache.internal.NoCachingRegionFactory ## choose a custom query cache implementation #hibernate.cache.query_cache_factory ############ ### JNDI ### ############ ## specify a JNDI name for the SessionFactory #hibernate.session_factory_name hibernate/session_factory ## Hibernate uses JNDI to bind a name to a SessionFactory and to look up the JTA UserTransaction; ## if hibernate.jndi.* are not specified, Hibernate will use the default InitialContext() which ## is the best approach in an application server #file system #hibernate.jndi.class com.sun.jndi.fscontext.RefFSContextFactory #hibernate.jndi.url file:/ #WebSphere #hibernate.jndi.class com.ibm.websphere.naming.WsnInitialContextFactory #hibernate.jndi.url iiop://localhost:900/
J2EE高级培训师面试题 时间:120分钟 一,填空题 1) 每个Servlet都必须实现()接口 a) javax.servlet.Servlet; b) javax.servlet.HttpServlet; c) javax.servlet.GenericServlet; d) javax.servlet.http.Servlet; 2) 利用JavaMail API发送邮件的过程中,()能获取正确的session对象。 a) Session mailsession=Session.getInstance(); b) Session mailsession=Session.getInstance(objProperties); c) Session mailsession = request.getSession(); d) Session mailsession= request.getInstance(objProperties); 参考答案 b 3) 下面是一JSP页面的代码,请问输出结果是(). <%! int I =1; %> <% i = ++; %> <script>  function display(){  if(i == 1) {      alert("Is 1");    } else if(i==2) {  alert("Is 2"); }else{      alert("Is other");    }  }  display (); window.__INITIAL_STATE__= {"csrf":"X7mAqld7-u5F0MR1OsTu3grvu9TNDyuFS6YA","origin":"http:\u002F\u002Fbbs.csdn.net","isMobile":false,"cookie":"uuid_tt_dd=10_3145179960-1714126004356-878946;","ip":"18.191.41.236","pageData":{"page":{"pageId":143,"title":"社区详情","keywords":"社区详情","description":"社区详情","ext":{"isMd":"true","armsfe1":"{pid:\"dyiaei5ihw@1a348e4d05c2c78\",appType:\"web\",imgUrl:\"https:\u002F\u002Farms-retcode.aliyuncs.com\u002Fr.png?\",sendResource:true,enableLinkTrace:true,behavior:true}","redPacketCfg":"{\"presetTitle\":[\"成就一亿技术人!\",\"大吉大利\",\"节日快乐\",\"Bug Free\",\"Hello World\",\"Be Greater Than Average!!\"],\"defaultTitle\":\"成就一亿技术人!\",\"preOpenSty\":{},\"redCardSty\":{}}","blogStar":"[{\"year\":\"2021\",\"enable\":true,\"communityIds\":[3859],\"url\":\"https:\u002F\u002Fbbs.csdn.net\u002Fsummary2021\"},{\"year\":\"2022\",\"enable\":true,\"communityIds\":[3860],\"url\":\"https:\u002F\u002Fbbs.csdn.net\u002Fsummary2022\"}]","mdVersion":"https:\u002F\u002Fcsdnimg.cn\u002Frelease\u002Fmarkdown-editor\u002F1.1.0\u002Fmarkdown-editor.js","componentSortCfg":"{ \"right\":[\"ratesInfo\",\"cty-profile\",\"pub-comp\",\"user-right-introduce\",\"post-event\",\"my-mission\",\"user-recommend\",\"user-right-rank\",\"user-right-rule\",\"user-right-adimg\"] }","show_1024":"{\"enable\":false,\"useWhitelist\":false,\"whitelist\":[76215],\"home\":\"https:\u002F\u002F1111.csdn.net\u002F\",\"logo\":\"https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221104102741.png\",\"hideLive\":true}","iframes":"[\"3859\"]","pageCfg":"{\"disableDownloadPDF\": false,\"hideSponsor\":false}"}},"template":{"templateId":71,"templateComponentName":"ccloud-detail","title":"ccloud-detail","floorList":[{"floorId":562,"floorComponentName":"floor-user-content","title":"社区详情页","description":"社区详情页","indexOrder":3,"componentList":[{"componentName":"baseInfo","componentDataId":"cloud-detail1","componentConfigData":{},"relationType":3},{"componentName":"user-right-introduce","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-recommend","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-rank","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-rule","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"user-right-adimg","componentDataId":"","componentConfigData":{},"relationType":2},{"componentName":"default2014LiveRoom","componentDataId":"20221024DefaultLiveRoom","componentConfigData":{},"relationType":3}]}]},"data":{"baseInfo":{"customDomain":"","uriName":"J2EE","communityHomePage":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJ2EE","owner":{"userName":"community_2","nickName":"Java EE","avatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","position":"","companyName":""},"user":{"userRole":3,"userName":null,"nickName":null,"avatarUrl":null,"rank":null,"follow":2,"communityBase":null,"joinCollege":null,"isVIP":null},"community":{"name":"Java EE","description":"J2EE只是Java企业应用。我们需要一个跨J2SE\u002FWEB\u002FEJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE\u002FJ2EE版本。","avatarUrl":"https:\u002F\u002Fimg-community.csdnimg.cn\u002Favatar\u002F2e155f43a6714e1bbf3c36314b149397.png?x-oss-process=image\u002Fresize,m_fixed,h_88,w_88","qrCode":"","createTime":"2007-09-28","communityAvatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","communityNotice":null,"userCount":67513,"contentCount":225879,"followersCount":37384,"communityRule":"","communityId":121,"bgImage":"","hashId":"pjnd7on8","domain":"","uriName":"J2EE","externalDisplay":1,"adBanner":{"img":"","url":"","adType":0,"adCon":null},"rightBanner":{"img":"","url":"","adType":0,"adCon":null},"tagId":null,"tagName":null,"communityType":1,"communityApplyUrl":"https:\u002F\u002Fmarketing.csdn.net\u002Fquestions\u002FQ2106040308026533763","joinType":0,"visibleType":0,"collapse":0,"topicMoveAble":0,"allowActions":{},"communityOwner":"community_2","tagNameInfo":{"provinceTag":null,"areaTag":null,"technologyTags":null,"customTags":null}},"tabList":[{"tabId":1280,"tabName":"全部","tabUrl":"","tabSwitch":1,"tabType":4,"tabContribute":0,"cardType":0,"indexOrder":-1,"url":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJ2EE?typeId=1280","iframe":false,"sortType":1},{"tabId":1632206,"tabName":"Ada助手","tabUrl":"","tabSwitch":1,"tabType":2,"tabContribute":0,"cardType":0,"indexOrder":20,"url":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJ2EE?typeId=1632206","iframe":false,"sortType":1}],"dataResource":{"mediaType":"c_cloud","subResourceType":"8_c_cloud_long_text","showType":"long_text","tabId":0,"communityName":"Java EE","communityHomePageUrl":"https:\u002F\u002Fbbs.csdn.net\u002Fforums\u002FJ2EE","communityType":1,"content":{"id":"210036505","contentId":210036505,"cateId":0,"cateName":null,"url":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F210036505","shareUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F210036505","createTime":"2008-03-18 09:05:21","updateTime":"2021-05-28 16:19:05","resourceUsername":"lispoy","best":0,"top":0,"text":null,"publishDate":"2008-03-18","lastReplyDate":"2008-03-19","type":"13","nickname":"lispoy","avatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Feebff68b993d48f4ac76ac7901e358f2_lispoy.jpg!1","username":"lispoy","commentCount":4,"diggNum":0,"digg":false,"viewCount":187,"hit":false,"resourceSource":6,"status":10,"taskStatus":null,"expired":false,"taskCate":0,"taskAward":0,"taskExpired":null,"checkRedPacket":null,"avgScore":0,"totalScore":0,"topicTitle":"javax.transaction.UserTransaction和net.sf.hibernate.Transaction的区别?","insertFirst":false,"likeInfo":null,"description":"javax.transaction.UserTransaction net.sf.hibernate.Transaction 请问这2个事务的区别?","coverImg":"https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221109054058.png","content":"javax.transaction.UserTransaction\u003Cbr \u002F\u003E\nnet.sf.hibernate.Transaction\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\n请问这2个事务的区别?","mdContent":null,"pictures":null,"videoInfo":null,"linkInfo":null,"student":{"isCertification":false,"org":"","bala":""},"employee":{"isCertification":false,"org":"","bala":""},"userCertification":[],"dependId":"0","dependSubType":null,"videoUrl":null,"favoriteCount":0,"favoriteStatus":false,"taskType":null,"defaultScore":null,"syncAsk":false,"videoPlayLength":null},"communityUser":null,"allowPost":false,"submitHistory":[{"user":{"registerurl":"https:\u002F\u002Fg.csdnimg.cn\u002Fstatic\u002Fuser-reg-year\u002F1x\u002F17.png","avatarurl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Feebff68b993d48f4ac76ac7901e358f2_lispoy.jpg!1","nickname":"lispoy","selfdesc":"","createdate":"2007-02-01 14:53:00","days":"6295","years":"17","username":"lispoy","school":null,"company":null,"job":null},"userName":"lispoy","event":"创建了帖子","body":"2008-03-18 09:05","editId":null}],"resourceExt":{}},"contentReply":{"pageNo":1,"pageSize":20,"totalPages":1,"totalCount":4,"total":0,"list":[{"hit":null,"hitMsg":null,"content":"不知道我的理解对不对,先结了吧。","topicTitle":null,"description":"不知道我的理解对不对,先结了吧。","id":201219098,"contentResourceId":210036505,"bindContentResourceId":0,"communityId":121,"username":"lispoy","userNickName":"lispoy","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Feebff68b993d48f4ac76ac7901e358f2_lispoy.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":3661761794,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2008-03-19 02:34:44","updateTime":"2008-03-19 02:34:46","formatTime":"2008-03-19","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"Short answer, when using the JTATransaction factory hibernate will actually locate and begin the user transaction when you begin a hibernate transaction. If the user transaction is already in progress hibernate hooks in with it.\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\nHave a look at the begin method of the JTATransaction http:\u002F\u002Ffisheye.jboss.org\u002Fbrowse\u002F~raw,r=9601\u002FHibernate\u002Ftrunk\u002FHibernate3\u002Fsrc\u002Forg\u002Fhibernate\u002Ftransaction\u002FJTATransaction.java\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\nMy understanding is that if you're always running in a JTA environment you can basically use Hibernate Transactions and User Transaction interchangeably.\u003Cbr \u002F\u003E\n\u003Cbr \u002F\u003E\nfrom:http:\u002F\u002Fforum.hibernate.org\u002Fviewtopic.php?p=2323900&sid=74b4016db8b87320406d3cf301d60963","topicTitle":null,"description":"Short answer, when using the JTATransaction factory hibernate will actually locate and begin the user transaction when you begin a hibernate transaction. If the user transaction is already in progress hibernate hooks in with it. Have a look at the be","id":201190957,"contentResourceId":210036505,"bindContentResourceId":0,"communityId":121,"username":"UnknowREN","userNickName":"UnknowREN","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":3396078598,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2008-03-18 12:58:59","updateTime":"2008-03-18 12:59:01","formatTime":"2008-03-18","userRoleHonorary":{"userName":"UnknowREN","roleId":126,"roleType":0,"roleStatus":1,"honoraryId":0,"roleName":"","honoraryName":null,"communityNickname":"","communitySignature":""},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"\u003Cbr \u002F\u003E\n简单的说javax.transaction.UserTransaction是java的一个线程事务管理,但是不可嵌套。 \u003Cbr \u002F\u003E\n而net.sf.hibernate.Transaction是数据库的事务,可嵌套。 \u003Cbr \u002F\u003E\n我们开发用的时候可以交互使用。这样理解,对么。","topicTitle":null,"description":" 简单的说javax.transaction.UserTransaction是java的一个线程事务管理,但是不可嵌套。 而net.sf.hibernate.Transaction是数据库的事务,可嵌套。 我们开发用的时候可以交互使用。这样理解,对么。","id":201191565,"contentResourceId":210036505,"bindContentResourceId":0,"communityId":121,"username":"lispoy","userNickName":"lispoy","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Feebff68b993d48f4ac76ac7901e358f2_lispoy.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":3661761794,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2008-03-18 01:27:16","updateTime":"2008-03-18 01:27:18","formatTime":"2008-03-18","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null},{"hit":null,"hitMsg":null,"content":"简单的说.JTATransaction是java的一个线程事务管理,但是不可嵌套。\u003Cbr \u002F\u003E\n而net.sf.hibernate.Transaction是数据库的事务,可嵌套。\u003Cbr \u002F\u003E\n我们开发用的时候可以交互使用。这样理解,对么。 \u003Cbr \u002F\u003E\n","topicTitle":null,"description":"简单的说.JTATransaction是java的一个线程事务管理,但是不可嵌套。 而net.sf.hibernate.Transaction是数据库的事务,可嵌套。 我们开发用的时候可以交互使用。这样理解,对么。 ","id":201191439,"contentResourceId":210036505,"bindContentResourceId":0,"communityId":121,"username":"lispoy","userNickName":"lispoy","userAvatar":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Feebff68b993d48f4ac76ac7901e358f2_lispoy.jpg!1","mdContent":null,"parentId":0,"replyName":"","replyNickName":"","bizNo":"bbs","ip":3661761794,"status":10,"childCount":0,"topStatus":0,"recommendStatus":0,"userLike":false,"diggCount":0,"childIds":"","createTime":"2008-03-18 01:20:54","updateTime":"2008-03-18 01:20:56","formatTime":"2008-03-18","userRoleHonorary":{"userName":null,"roleId":null,"roleType":null,"roleStatus":null,"honoraryId":null,"roleName":null,"honoraryName":null,"communityNickname":null,"communitySignature":null},"child":null,"communityNickname":null,"communityReplyNickname":null,"rewardInfo":null,"checkRedPacketVO":null,"noDiggCount":null}],"maxPageSize":3000},"defaultActiveTab":1280,"recommends":[{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fzhaanghao\u002F9502692","title":"\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.jar","desc":"\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.jar \u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.jar","createTime":"2016-04-26 10:17:34","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-9502692-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-9502692-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"1\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fzhaanghao\u002F9502692\",\"strategy\":\"2~default~OPENSEARCH~Paid\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-9502692-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"1\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fzhaanghao\u002F9502692\",\"strategy\":\"2~default~OPENSEARCH~Paid\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Paid-1-9502692-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flove_legain\u002F9743748","title":"\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.properties","desc":"\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.properties\n#\n# \u003Cem\u003EHibernate\u003C\u002Fem\u003E, Relat\u003Cem\u003Eion\u003C\u002Fem\u003Eal Persistence for Idiomatic \u003Cem\u003EJava\u003C\u002Fem\u003E\n#\n# License: GNU Lesser General Public License (LGPL), vers\u003Cem\u003Eion\u003C\u002Fem\u003E 2.1 or later.\n# See the lgpl.txt file in the root directory or .\n#\n\n######################\n### Query Language ###\n######################\n\n## define query language constants \u002F funct\u003Cem\u003Eion\u003C\u002Fem\u003E names\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.query.substitut\u003Cem\u003Eion\u003C\u002Fem\u003Es yes 'Y', no 'N'\n\n\n## select the classic query parser\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.query.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.hql.internal.classic.ClassicQuery\u003Cem\u003ETran\u003C\u002Fem\u003EslatorFactory\n\n\n\n#################\n### Platforms ###\n#################\n\n## JNDI Datasource\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.datasource jdbc\u002Ftest\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username db2\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password db2\n\n\n## HypersonicSQL\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.HSQLDialect\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class org.hsqldb.jdbcDriver\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username sa\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:hsqldb:.\u002Fbuild\u002Fdb\u002Fhsqldb\u002F\u003Cem\u003Ehibernate\u003C\u002Fem\u003E\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:hsqldb:hsql:\u002F\u002Flocalhost\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:hsqldb:test\n\n## H2 (www.h2database.com)\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.H2Dialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class org.h2.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username sa\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:mem:.\u002Fbuild\u002Fdb\u002Fh2\u002F\u003Cem\u003Ehibernate\u003C\u002Fem\u003E\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:testdb\u002Fh2test\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:mem:imdb1\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:tcp:\u002F\u002Fdbserv:8084\u002Fsample; \t\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:ssl:\u002F\u002Fsecureserv:8085\u002Fsample; \t\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:h2:ssl:\u002F\u002Fsecureserv\u002Ftestdb;cipher=AES\n\n## MySQL\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.MySQLDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.MySQLInnoDBDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.MySQLMyISAMDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.mysql.jdbc.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:mysql:\u002F\u002F\u002Ftest\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username gavin\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password\n\n\n## Oracle\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.Oracle8iDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.Oracle9iDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.Oracle10gDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class oracle.jdbc.driver.OracleDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username ora\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password ora\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:oracle:thin:@localhost:1521:orcl\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:oracle:thin:@localhost:1522:XE\n\n\n## PostgreSQL\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.PostgreSQLDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class org.postgresql.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:postgresql:template1\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username pg\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password\n\n\n## DB2\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.DB2Dialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.ibm.db2.jcc.DB2Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class COM.ibm.db2.jdbc.app.DB2Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:db2:\u002F\u002Flocalhost:50000\u002Fsomename\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:db2:somename\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username db2\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password db2\n\n## TimesTen\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.TimesTenDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.timesten.jdbc.TimesTenDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:timesten:direct:test\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password \n\n## DB2\u002F400\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.DB2400Dialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username user\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password password\n\n## Native driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class COM.ibm.db2.jdbc.app.DB2Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:db2:\u002F\u002Fsystemname\n\n## Toolbox driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.ibm.as400.access.AS400JDBCDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:as400:\u002F\u002Fsystemname\n\n\n## Derby (not supported!)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.DerbyDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class org.apache.derby.jdbc.EmbeddedDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:derby:build\u002Fdb\u002Fderby\u002F\u003Cem\u003Ehibernate\u003C\u002Fem\u003E;create=true\n\n\n## Sybase\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.SybaseDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.sybase.jdbc2.jdbc.SybDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username sa\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password sasasa\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:sybase:Tds:co3061835-a:5000\u002Ftempdb\n\n\n## Mckoi SQL\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.MckoiDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.mckoi.JDBCDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:mckoi:\u002F\u002F\u002F\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:mckoi:local:\u002F\u002FC:\u002Fmckoi1.0.3\u002Fdb.conf\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username admin\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password nimda\n\n\n## SAP DB\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.SAPDBDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.sap.dbtech.jdbc.DriverSapDB\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:sapdb:\u002F\u002Flocalhost\u002FTST\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username TEST\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password TEST\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.query.substitut\u003Cem\u003Eion\u003C\u002Fem\u003Es yes 'Y', no 'N'\n\n\n## MS SQL Server\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.SQLServerDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username sa\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password sa\n\n## JSQL Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.jnetdirect.jsql.JSQLDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:JSQLConnect:\u002F\u002F1E1\u002Ftest\n\n## JTURBO Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.newatlanta.jturbo.driver.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:JTurbo:\u002F\u002F1E1:1433\u002Ftest\n\n## WebLogic Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class weblogic.jdbc.mssqlserver4.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:weblogic:mssqlserver4:1E1:1433\n\n## Microsoft Driver (not recommended!)\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.microsoft.jdbc.sqlserver.SQLServerDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:microsoft:sqlserver:\u002F\u002F1E1;DatabaseName=test;SelectMethod=cursor\n\n## The New Microsoft Driver \n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:sqlserver:\u002F\u002Flocalhost\n\n## jTDS (since vers\u003Cem\u003Eion\u003C\u002Fem\u003E 0.9)\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class net.sourceforge.jtds.jdbc.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:jtds:sqlserver:\u002F\u002F1E1\u002Ftest\n\n## Interbase\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.InterbaseDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username sysdba\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password masterkey\n\n## DO NOT specify \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.sqlDialect\n\n## InterClient\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class interbase.interclient.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:interbase:\u002F\u002Flocalhost:3060\u002FC:\u002Ffirebird\u002Ftest.gdb\n\n## Pure \u003Cem\u003EJava\u003C\u002Fem\u003E\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class org.firebirdsql.jdbc.FBDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:firebirdsql:localhost\u002F3050:\u002Ffirebird\u002Ftest.gdb\n\n\n## Pointbase\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.PointbaseDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.pointbase.jdbc.jdbcUniversalDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:pointbase:embedded:sample\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username PBPUBLIC\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password PBPUBLIC\n\n\n## Ingres\n\n## older vers\u003Cem\u003Eion\u003C\u002Fem\u003Es (before Ingress 2006)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.IngresDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class ca.edbc.jdbc.EdbcDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:edbc:\u002F\u002Flocalhost:II7\u002Fdatabase\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username user\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password password\n\n## Ingres 2006 or later\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.IngresDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.ingres.jdbc.IngresDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:ingres:\u002F\u002Flocalhost:II7\u002Fdatabase;CURSOR=READONLY;auto=multi\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username user\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password password\n\n## Mimer SQL\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.MimerSQLDialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.mimer.jdbc.Driver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:mimer:multi1\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username \u003Cem\u003Ehibernate\u003C\u002Fem\u003E\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password \u003Cem\u003Ehibernate\u003C\u002Fem\u003E\n\n\n## InterSystems Cache\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.dialect.Cache71Dialect\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.driver_class com.intersys.jdbc.CacheDriver\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.username _SYSTEM\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.password SYS\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.url jdbc:Cache:\u002F\u002F127.0.0.1:1972\u002F\u003Cem\u003EHIBERNATE\u003C\u002Fem\u003E\n\n\n#################################\n### \u003Cem\u003EHibernate\u003C\u002Fem\u003E Connect\u003Cem\u003Eion\u003C\u002Fem\u003E Pool ###\n#################################\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.pool_size 1\n\n\n\n###########################\n### C3P0 Connect\u003Cem\u003Eion\u003C\u002Fem\u003E Pool###\n###########################\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.max_size 2\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.min_size 2\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.timeout 5000\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.max_statements 100\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.idle_test_period 3000\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.acquire_increment 2\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.c3p0.validate false\n\n\n\n##############################\n### Proxool Connect\u003Cem\u003Eion\u003C\u002Fem\u003E Pool###\n##############################\n\n## Properties for external configurat\u003Cem\u003Eion\u003C\u002Fem\u003E of Proxool\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.proxool.pool_alias pool1\n\n## Only need one of the following\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.proxool.existing_pool true\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.proxool.xml proxool.xml\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.proxool.properties proxool.properties\n\n\n\n#################################\n### Plugin Connect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider ###\n#################################\n\n## use a custom Connect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider (if not set, \u003Cem\u003EHibernate\u003C\u002Fem\u003E will choose a built-in Connect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider using hueristics)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.provider_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.DriverManagerConnect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.provider_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.DatasourceConnect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.provider_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.C3P0Connect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.provider_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.ProxoolConnect\u003Cem\u003Eion\u003C\u002Fem\u003EProvider\n\n\n\n#######################\n### \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E API ###\n#######################\n\n## Enable automatic flush during the JTA beforeComplet\u003Cem\u003Eion\u003C\u002Fem\u003E() callback\n## (This setting is relevant with or without the \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E API)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.flush_before_complet\u003Cem\u003Eion\u003C\u002Fem\u003E\n\n\n## Enable automatic sess\u003Cem\u003Eion\u003C\u002Fem\u003E close at the end of \u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n## (This setting is relevant with or without the \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E API)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.auto_close_sess\u003Cem\u003Eion\u003C\u002Fem\u003E\n\n\n## the \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E API abstracts applicat\u003Cem\u003Eion\u003C\u002Fem\u003E code from the underlying JTA or JDBC \u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003Es\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.JTA\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.JDBC\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n\n\n## to use JTA\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EFactory, \u003Cem\u003EHibernate\u003C\u002Fem\u003E must be able to locate the \u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E in JNDI\n## default is \u003Cem\u003Ejava\u003C\u002Fem\u003E:comp\u002F\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n## you do NOT need this setting if you specify \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class\n\n#jta.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E jta\u002F\u003Cem\u003Euser\u003Cem\u003Etran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n#jta.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E \u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n#jta.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E \u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n\n\n## to use the second-level cache with JTA, \u003Cem\u003EHibernate\u003C\u002Fem\u003E must be able to obtain the JTA \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManager\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.JBoss\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManagerLookup\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.Weblogic\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManagerLookup\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.WebSphere\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManagerLookup\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.Or\u003Cem\u003Eion\u003C\u002Fem\u003E\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManagerLookup\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.manager_lookup_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.Resin\u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003EManagerLookup\n\n\n\n##############################\n### Miscellaneous Settings ###\n##############################\n\n## print all generated SQL to the console\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.show_sql true\n\n\n## format SQL in log and console\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.format_sql true\n\n\n## add comments to the generated SQL\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.use_sql_comments true\n\n\n## generate statistics\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.generate_statistics true\n\n\n## auto schema export\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.hbm2ddl.auto create-drop\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.hbm2ddl.auto create\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.hbm2ddl.auto update\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.hbm2ddl.auto validate\n\n\n## specify a default schema and catalog for unqualified tablenames\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.default_schema test\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.default_catalog test\n\n\n## enable ordering of SQL UPDATEs by primary key\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.order_updates true\n\n\n## set the maximum depth of the outer join fetch tree\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.max_fetch_depth 1\n\n\n## set the default batch size for batch fetching\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.default_batch_fetch_size 8\n\n\n## rollback generated identifier values of deleted entities to default values\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.use_identifier_rollback true\n\n\n## enable bytecode reflect\u003Cem\u003Eion\u003C\u002Fem\u003E optimizer (disabled by default)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.bytecode.use_reflect\u003Cem\u003Eion\u003C\u002Fem\u003E_optimizer true\n\n\n\n#####################\n### JDBC Settings ###\n#####################\n\n## specify a JDBC isolat\u003Cem\u003Eion\u003C\u002Fem\u003E level\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.isolat\u003Cem\u003Eion\u003C\u002Fem\u003E 4\n\n\n## enable JDBC autocommit (not recommended!)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.connect\u003Cem\u003Eion\u003C\u002Fem\u003E.autocommit true\n\n\n## set the JDBC fetch size\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.fetch_size 25\n\n\n## set the maximum JDBC 2 batch size (a nonzero value enables batching)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.batch_size 5\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.batch_size 0\n\n\n## enable batch updates even for vers\u003Cem\u003Eion\u003C\u002Fem\u003Eed data\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.batch_vers\u003Cem\u003Eion\u003C\u002Fem\u003Eed_data true\n\n\n## enable use of JDBC 2 scrollable ResultSets (specifying a Dialect will cause \u003Cem\u003EHibernate\u003C\u002Fem\u003E to use a sensible default)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.use_scrollable_resultset true\n\n\n## use streams when writing binary types to \u002F from JDBC\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.use_streams_for_binary true\n\n\n## use JDBC 3 PreparedStatement.getGeneratedKeys() to get the identifier of an inserted row\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.use_get_generated_keys false\n\n\n## choose a custom JDBC batcher\n\n# \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.factory_class\n\n\n## enable JDBC result set column alias caching \n## (minor performance enhancement for broken JDBC drivers)\n\n# \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.wrap_result_sets\n\n\n## choose a custom SQL except\u003Cem\u003Eion\u003C\u002Fem\u003E converter\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jdbc.sql_except\u003Cem\u003Eion\u003C\u002Fem\u003E_converter\n\n\n\n##########################\n### Second-level Cache ###\n##########################\n\n## optimize cache for minimal \"puts\" instead of minimal \"gets\" (good for clustered cache)\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.use_minimal_puts true\n\n\n## set a prefix for cache reg\u003Cem\u003Eion\u003C\u002Fem\u003E names\n\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E_prefix \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.test\n\n\n## disable the second-level cache\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.use_second_level_cache false\n\n\n## enable the query cache\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.use_query_cache true\n\n\n## store the second-level cache entries in a more human-friendly format\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.use_structured_entries true\n\n\n## choose a cache implementat\u003Cem\u003Eion\u003C\u002Fem\u003E\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.infinispan.InfinispanReg\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.infinispan.JndiInfinispanReg\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.internal.EhCacheReg\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.internal.SingletonEhCacheReg\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.reg\u003Cem\u003Eion\u003C\u002Fem\u003E.factory_class org.\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.internal.NoCachingReg\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n\n## choose a custom query cache implementat\u003Cem\u003Eion\u003C\u002Fem\u003E\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.cache.query_cache_factory\n\n\n\n############\n### JNDI ###\n############\n\n## specify a JNDI name for the Sess\u003Cem\u003Eion\u003C\u002Fem\u003EFactory\n\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.sess\u003Cem\u003Eion\u003C\u002Fem\u003E_factory_name \u003Cem\u003Ehibernate\u003C\u002Fem\u003E\u002Fsess\u003Cem\u003Eion\u003C\u002Fem\u003E_factory\n\n\n## \u003Cem\u003EHibernate\u003C\u002Fem\u003E uses JNDI to bind a name to a Sess\u003Cem\u003Eion\u003C\u002Fem\u003EFactory and to look up the JTA \u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E;\n## if \u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jndi.* are not specified, \u003Cem\u003EHibernate\u003C\u002Fem\u003E will use the default InitialContext() which\n## is the best approach in an applicat\u003Cem\u003Eion\u003C\u002Fem\u003E server\n\n#file system\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jndi.class com.sun.jndi.fscontext.RefFSContextFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jndi.url file:\u002F\n\n#WebSphere\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jndi.class com.ibm.websphere.naming.WsnInitialContextFactory\n#\u003Cem\u003Ehibernate\u003C\u002Fem\u003E.jndi.url iiop:\u002F\u002Flocalhost:900\u002F","createTime":"2017-01-23 15:24:36","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-9743748-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-9743748-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"2\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flove_legain\u002F9743748\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-9743748-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"2\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Flove_legain\u002F9743748\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-2-9743748-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F36090","title":"\u003Cem\u003EJava\u003C\u002Fem\u003ECV系列之2:\u003Cem\u003EJava\u003C\u002Fem\u003ECV音视频基础及麦克风摄像头直播实战","desc":"\u003Cem\u003EJava\u003C\u002Fem\u003Ex.sound音频播放器及波形图;\u003Cem\u003EJava\u003C\u002Fem\u003ECV采集摄像头及H.264视频编码;\u003Cem\u003EJava\u003C\u002Fem\u003ECV麦克风摄像头直播项目实战; 具体内容包括:-------------------------------------------\u003Cem\u003EJava\u003C\u002Fem\u003ECV音视频基础知识; \u003Cem\u003EJava\u003C\u002Fem\u003ECV之PCM转WAV; \u003Cem\u003EJava\u003C\u002Fem\u003ECV之...","createTime":"2021-10-18 14:46:01","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-36090-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-36090-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"3\",\"dest\":\"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F36090\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-36090-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"3\",\"dest\":\"https:\u002F\u002Fedu.csdn.net\u002Fcourse\u002Fdetail\u002F36090\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-course-2~default~OPENSEARCH~Rate-3-36090-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"course"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fit_zhaonan\u002F3166658","title":"事务处理:JTA事务","desc":"JTA(\u003Cem\u003EJava\u003C\u002Fem\u003E \u003Cem\u003ETran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E API) 为 J2EE 平台提供了分布式事务服务。\n  要用 JTA 进行事务界定,应用程序要调用 \u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E 接口中的方法。","createTime":"2011-04-06 23:34:15","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-3166658-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-3166658-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"4\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fit_zhaonan\u002F3166658\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-3166658-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"4\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fit_zhaonan\u002F3166658\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-4-3166658-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"},{"url":"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282","title":"J2EE面试题","desc":"J2EE高级培训师面试题\n\t时间:120分钟\n\n\n一,填空题\n\n1)\t每个Servlet都必须实现()接口 \n\t\t\n\ta)\t\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.servlet.Servlet;\n\tb)\t\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.servlet.HttpServlet;\n\tc)\t\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.servlet.GenericServlet;\n\td)\t\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.servlet.http.Servlet;\n\n\n\n2)\t利用\u003Cem\u003EJava\u003C\u002Fem\u003EMail API发送邮件的过程中,()能获取正确的sess\u003Cem\u003Eion\u003C\u002Fem\u003E对象。\n\t\t\n\ta)\tSess\u003Cem\u003Eion\u003C\u002Fem\u003E mailsess\u003Cem\u003Eion\u003C\u002Fem\u003E=Sess\u003Cem\u003Eion\u003C\u002Fem\u003E.getInstance();\n\tb)\tSess\u003Cem\u003Eion\u003C\u002Fem\u003E mailsess\u003Cem\u003Eion\u003C\u002Fem\u003E=Sess\u003Cem\u003Eion\u003C\u002Fem\u003E.getInstance(objProperties);\n\tc)\tSess\u003Cem\u003Eion\u003C\u002Fem\u003E mailsess\u003Cem\u003Eion\u003C\u002Fem\u003E = request.getSess\u003Cem\u003Eion\u003C\u002Fem\u003E();\n\td)\tSess\u003Cem\u003Eion\u003C\u002Fem\u003E mailsess\u003Cem\u003Eion\u003C\u002Fem\u003E= request.getInstance(objProperties);\n参考答案\tb\n\n\n\n3)\t下面是一JSP页面的代码,请问输出结果是().\n\u003Chtml\u003E \u003C%! int I =1; %\u003E \u003C% i = ++; %\u003E \u003Chead\u003E\u003C\u002Fhead\u003E \u003Cbody\u003E \u003Cscript\u003E  funct\u003Cem\u003Eion\u003C\u002Fem\u003E display(){ \n\t if(i == 1) {      alert(\"Is 1\");    } else if(i==2) {\n\t alert(\"Is 2\"); \n\t}else{      alert(\"Is other\");    }  }  display (); \u003C\u002Fscript\u003E \u003C\u002Fbody\u003E \u003C\u002Fhtml\u003E\n\t\t\n\ta)\t什么也不输出。\n\tb)\t弹出内容为“Is 1”的对话框。\n\tc)\t弹出内容为“Is 2”的对话框。\n\td)\t当第一次访问这个程序时,弹出一个内容为\"Is other\"的对话框,从第二次开始,每次访问这个程序都弹出内容为“Is 2”的对话框。\n\te\t当第一次访问这个程序时,弹出一个内容为\"Is 1\"的对话框,从第二次开始,每次访问这个程序都弹出内容为“Is 2”的对话框。\n参考答案\ta\n\n4)\t下面是一JSP页面的片断代码,请问页面输出结果是().\n\u003C% \n\tStringBuffer buffer =new StringBuffer (”Hello”);\n\tbuffer.append(“World”);\n\tSystem.out.println(buffer.toString());\n%\u003E\n\t\t\n\ta)\tHello\n\tb)\tWorld\n\tc)\tHelloWorld\n\td)\t什么也不输出\n参考答案\td\n\n\n\n5)\taa.jsp文件如下:\n\u003C%! static int I=0; int j=0; %\u003E\n\u003Chtml\u003E\n\u003Cbody\u003E\n\u003C% for(;I++\u003C2;)\n { out.print(j++); out.print(\" \");}\n%\u003E\n\u003C\u002Fbody\u003E\n\u003C\u002Fhtml\u003E\n两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览一次,那么,第2个客户的浏览器将显示什么?\te\n\t\t\t\n\ta)\t0 1\t\n\tb)\t1 2\t\n\tc)\t3 4\t\n\td)\t5 6\t\n\te)\t什么也没有\t\n\n\n\n\n\n6)\t如果用JSP开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。\n\t\t\n\ta)\trequest\n\tb)\tpage\n\tc)\tsess\u003Cem\u003Eion\u003C\u002Fem\u003E\n\td)\tapplicat\u003Cem\u003Eion\u003C\u002Fem\u003E\n参考答案\td\n\n\n\n7)\t在web.xml中,有如下代码:\n\u003Csess\u003Cem\u003Eion\u003C\u002Fem\u003E-config\u003E\n \u003Csess\u003Cem\u003Eion\u003C\u002Fem\u003E-timeout\u003E30\u003C\u002Fsess\u003Cem\u003Eion\u003C\u002Fem\u003E-timeout\u003E\n\u003C\u002Fsess\u003Cem\u003Eion\u003C\u002Fem\u003E-config\u003E\n对于以下描述,正确的是:\t\n\t\t\tb\n\ta)\t定义了默认的会话超时时长。时长为30秒。\t\n\tb)\t可以使用HttpSess\u003Cem\u003Eion\u003C\u002Fem\u003E接口的getMaxInactiveInterval()方法把该值取出来。\t\n\tc)\t定义了默认的会话超时时长。时长为30小时。\t\n\td)\t可以使用Sess\u003Cem\u003Eion\u003C\u002Fem\u003E类的getMaxInactiveInterval()方法把该值取出来。\t\n\n\n\n\n\n8)\t对于\u003Cjsp:param\u003E标记,描述不正确的是()\n\t\t\n\ta)\t一般来说,\u003Cjsp:param\u003E是\u003Cjsp:include\u003E、\u003Cjsp:forward\u003E标记的子标记。\n\tb)\t如果aa.jsp有代码:\u003Cjsp:forward page=\"next.jsp\"\u003E\u003Cjsp:param name=\"name\" value=\"jb-aptech\" \u002F\u003E\u003C\u002Fjsp:forward\u003E,则在next.jsp中可以使用request.getParameter(\"name\");把属性name的值取出来。\n\tc)\t如果aa.jsp有代码:\u003Cjsp:forward page=\"next.jsp\"\u003E\u003Cjsp:param name=\"name\" value=\"jb-aptech\" \u002F\u003E\u003C\u002Fjsp:forward\u003E,则在next.jsp中可以使用request.getAttribute(\"name\");把属性name的值取出来。\n\td)\t如果\u003Cjsp:param\u003E标记放在\u003Cjsp:forward\u003E标记外,也就是不作为\u003Cjsp:forward\u003E标记的子标记,则使用浏览器查看时会显示错误页面。\n\n\n9)\taa.jsp与bb.jsp属于同一应用,在aa.jsp中使用\u003Cjsp:useBean id=\"beanName\" scope=\"sess\u003Cem\u003Eion\u003C\u002Fem\u003E\" class=\"mypackage.mybean\" \u002F\u003E标记,在bb.jsp中要把beanName这个bean对象变量所引用的对象取出来。那么对于以下描述,正确的是:\t\n\t\t\tc\n\ta)\t在bb.jsp中仅使用代码:mybean bc = sess\u003Cem\u003Eion\u003C\u002Fem\u003E.getAttribute(\"beanName\"); 取出beanName所引用的对象。\t\n\tb)\t在bb.jsp中取beanName所引用的对象前,先要使用\u003C%@ page import=\"mypackage.mybean\" %\u003E导入mypackage.mybean类。\t\n\tc)\t在bb.jsp中,对于使用sess\u003Cem\u003Eion\u003C\u002Fem\u003E的getAttribute方法取出的beanName所引用的对象,要进行强制类型转换。\t\n\td)\t在bb.jsp中使用sess\u003Cem\u003Eion\u003C\u002Fem\u003E的getAttribute方法取出的对象和aa.jsp中的beanName所引用的对象无关。\t\n\n\n10)\t用JSP2.0表达式语法在JSP页面上正确显示10+20的结果的是()。\n\t\t\n\ta)\t${10+20}\n\tb)\t${10+20};\n\tc)\t$(10+20)\n\td)\t$(10+20);\n参考答案\ta\n\n\n11)\t编写自定义标签处理类后,需要编写一个()去描述。\n\t\t\n\ta)\t.tag 文件\n\tb)\t.tld 文件\n\tc)\t.dtd文件\n\td)\t.xml 文件\n\n12)\t关于Tag File说法不正确的是()。\n\t\t\n\ta)\tTag File是JSP2.0新增的功能\n\tb)\tTag File是JSP1.2增的功能\n\tc)\tTag File 可以让网页开发人员直接使用JSP语法制作标签 \n\td)\tTag File的扩展名可以 .tag\n参考答案\tb\n\n\n\n13)\t关于Servlet Filter,下列说法正确的有()。\n\t\t\n\ta)\tFilter 其实就是一个Servlet\n\tb)\tFilter 可以产生response\n\tc)\tFilter可以在servlet被调用之前截获request\n\td)\tFilter可以用来处理统一认证,过滤不雅字句等。 \n参考答案\tc,d\n\n14)\t会话Bean的状态的说法正确的有(a)。\n\ta)\t有状态会话Bean的状态是借助于序列化保存下来的\n\tb)\t有状态会话Bean被激活后会恢复挂起前的状态\n\tc)\t无状态会话Bean不能有属性\n\td)\t有状态会话Bean的所有属性在挂起的时候都会被保存下来\n参考答案\t\n\n15)\t关于EJB组成部分的说法不正确的是 (ab)\n\ta)\t每一个EJB的实例对象对应于一个JNDI名字,通过JNDI名字找到相应的实例\n\tb)\t所有EJB都包含Home接口,远程接口,Bean类三个部分\n\tc)\tBean类必须实现远程接口中的方法\n\td)\t远程接口实现了RMI的Remote接口\n参考答案\t\n\n16)\t下列关于RMI远程接口定义正确的是 d\n\t\t\n\ta)\tpublic interface Demo {public long test() throws \u003Cem\u003Ejava\u003C\u002Fem\u003E.rmi.RemoteExcept\u003Cem\u003Eion\u003C\u002Fem\u003E;}\n\tb)\tPublic interface Demo extends Remote {public long test() }\n\tc)\tinterface Demo extends Remote {public long test() throws \u003Cem\u003Ejava\u003C\u002Fem\u003E.rmi.RemoteExcept\u003Cem\u003Eion\u003C\u002Fem\u003E;}\n\td)\tpublic interface Demo extends Remote {public long test() throws \u003Cem\u003Ejava\u003C\u002Fem\u003E.rmi.RemoteExcept\u003Cem\u003Eion\u003C\u002Fem\u003E;}\n参考答案\t\n\n17)\t下列选项中能获得\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E的是ab\n\t\t\n\ta)\t通过上下文的.get\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E()方法拿到\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n\tb)\t通过查找JNDI名为\u003Cem\u003Ejava\u003C\u002Fem\u003Ex.\u003Cem\u003Etran\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E.\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E的拿到\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E\n\tc)\tnew 一个\u003Cem\u003EUser\u003Cem\u003ETran\u003C\u002Fem\u003E\u003C\u002Fem\u003E\u003Cem\u003Esac\u003C\u002Fem\u003Et\u003Cem\u003Eion\u003C\u002Fem\u003E对象\n\td)\t不需要实例化,直接使用接口中的方法即可\n参考答案\t\n\n18)\t关于事务,下列说法不正确的事 a\n\t\t\n\ta)\tEJB支持平面式和嵌入式两种事务模型\n\tb)\t平面式事务模型是指要么操作都成功,如果失败,所有操作都回滚\n\tc)\tEJB有Bean管理事务和容器管理事务两种方式\n\td)\tBMT方式也可以使用JTA来控制事务边界\n参考答案\t\n\n\n19)\t关于消息确认描述正确的是 ac\n\t\t\n\ta)\t在创建消息会话的时候能指定消息的确认方式\n\tb)\tAUTO_ACKNOWLEDGE方式能确认之前收到的所有消息\n\tc)\tClient_ACKNOWLEDGE方式需要显示调用方法ACKNOWLEDGE方法来显式的确认消息\n\td)\tClient_ACKNOWLEDGE方式可以确认所有的消息\n参考答案\t\n\n20)\t关于消息Bean事务描述正确的是 c\n\t\t\n\ta)\tMDB支持RequiresNew事务方式\n\tb)\tMDB支持Mandatory事务方式\n\tc)\tNotSupported方式在容器回调OnMessage方法之后才启动事务\n\td)\tMDB不支持Required事务属性\n参考答案\t\n\n\n21)\t关于WSDL不正确的说法是 bc\t\n\t\t\ta\n\ta)\t用来描述Web服务的XML文件\t\n\tb)\t全称是WEB SERVICES DEFINIT\u003Cem\u003EION\u003C\u002Fem\u003E LANGUAGE\t\n\tc)\t客户端调用时直接用WSDL文件中的地址就可以了\t\n\td)\tSOAP协议可以基于多种底层协议\t\n\n\n二,简答题\n\n1:简述四种会话跟踪技术以及他们的优缺点\n\n\n2:请结合轻量级框架Struts,Spring和重量级框架EJB谈谈轻量级架构和重量级架构的\u003Cem\u003E区别\u003C\u002Fem\u003E?\n\n\n3:说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法\n\n\n\t4:如何给weblogic指定大小的内存?如何设定的weblogic的热启动模式(开发模式)与产品发布模式?\n\t\n\t三,代码题\n\t\n\t1:请写出\u003Cem\u003EJava\u003C\u002Fem\u003EMail发送邮件的关键代码\n\t\n\t2:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。\n\t\n\t3:用冒泡法对10个数排序(由小到大)例如: 54,12,-6,6,22,-7,9,0,999,79\n\t\n\t4:有一个登录页面,上面有用户名(name),密码(password)两个字段,对应数据库表User中的两个字段,请用Struts+EJB实现上述登陆场景!","createTime":"2011-10-21 23:03:52","dataReportQuery":"spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew&depth_1-utm_source=distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew","dataReportClick":"{\"mod\":\"popu_645\",\"index\":\"5\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","dataReportView":"{\"mod\":\"popu_645\",\"index\":\"5\",\"dest\":\"https:\u002F\u002Fdownload.csdn.net\u002Fdownload\u002Fl_ji_l\u002F3706282\",\"strategy\":\"2~default~OPENSEARCH~Rate\",\"extra\":\"{\\\"utm_medium\\\":\\\"distribute.pc_relevant_bbs_down_v2.none-task-download-2~default~OPENSEARCH~Rate-5-3706282-bbs-210036505.264^v3^pc_relevant_bbs_down_v2_opensearchbbsnew\\\",\\\"dist_request_id\\\":\\\"1714126004388_37554\\\"}\",\"spm\":\"1035.2023.3001.6557\"}","type":"download"}],"staffDOList":[{"id":null,"communityId":121,"username":"community_2","userNickname":"Java EE","roleCode":1,"status":1,"createUsername":"","updateUsername":"","avatarUrl":"https:\u002F\u002Fprofile-avatar.csdnimg.cn\u002Fdefault.jpg!1","createTime":"2021-05-12 18:01:11","updateTime":"2021-05-12 18:01:11","lastLoginTime":"2021-05-12 18:01:11"}],"communityConfig":{"scoreType":0,"scoreItems":{"0":"给本帖投票","1":"锋芒小试,眼前一亮","2":"潜力巨大,未来可期","3":"持续贡献,值得关注","4":"成绩优异,大力学习","5":"贡献巨大,全力支持"}},"shouldApply":false,"subscribeAble":false,"operatorAble":false,"commentNeedJoinCommunity":false},"default2014LiveRoom":[{"itemType":"","description":"高峰论坛","title":"2022 技术英雄会","url":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fiframe\u002Fcsdnnews\u002FfsNR5NWp?chat=1&title=1&footer=1","images":["https:\u002F\u002Fimg-home.csdnimg.cn\u002Fimages\u002F20221016050009.png"],"ext":{"time":"9:00","liveRoomUrl":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fcsdnnews\u002FfsNR5NWp"}}]},"isGooglebot":false,"canonical":"https:\u002F\u002Fwww.csdn.net\u002Ftopics\u002F210036505","openUrl":"","isApp":false,"localUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F210036505","typeId":"index","hasIndex":false},"CFG":{"ALIPLAYER_VERSION":"v4","ALIPLAYER_H5_VERSION":"mobile_v1","ENV":"prod","ROOT_URL":"https:\u002F\u002Fcms-mall.csdn.net\u002F","VUE_APP_API_URL_SERVER":"http:\u002F\u002Fcms-community-api.internal.csdn.net\u002F","VUE_APP_API_URL":"https:\u002F\u002Fcms-api.csdn.net\u002F","LOGIN_URL":"https:\u002F\u002Fpassport.csdn.net\u002Faccount\u002Flogin","VUE_APP_DOMAIN_SKILL":"https:\u002F\u002Fedu.csdn.net\u002F","VUE_APP_DOMAIN_PATH":"https:\u002F\u002Fedu.csdn.net\u002F","VUE_APP_COMMUNITY_API_URL":"https:\u002F\u002Fcommunity-api.csdn.net\u002F","VUE_APP_CCLOUD_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fcommunity-cloud\u002Fv1\u002F","VUE_APP_SKILL_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fskilltree\u002Fapi\u002F","VUE_APP_SEARCH_PLUGIN_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002Fsearchplugin\u002F","VUE_APP_COMMUNITY_ASK_API_URL":"https:\u002F\u002Fmp-ask.csdn.net\u002F","VUE_APP_ME_URL":"https:\u002F\u002Fme.csdn.net\u002F","VUE_APP_CCLOUD_RESUME":"https:\u002F\u002Fbizapi.csdn.net\u002Fjob-api\u002F","VUE_APP_CCLOUD_MAIN":"https:\u002F\u002Fwww.csdn.net\u002F","VUE_APP_CCLOUD_UC":"https:\u002F\u002Fwww.csdn.net\u002F","VUE_APP_CCLOUD_BZP_API_URL":"https:\u002F\u002Fbizapi.csdn.net\u002F","VUE_APP_CCLOUD_START_API_URL":"https:\u002F\u002Fmp-action.csdn.net\u002F","VUE_APP_PRACTIVE":"https:\u002F\u002Fbizapi.csdn.net\u002Fdaily-practice\u002F","VUE_APP_CCLOUD_HOSTPATH":"https:\u002F\u002Fbbs.csdn.net\u002F"},"queries":{"pageId":[],"domain":["ccloud.csdn.net\u002Fccloud\u002Fdetail1"],"id":["210036505"],"deviceType":"pc","isSpider":"","hostname":["bbs.csdn.net"]},"basePath":"bbs.csdn.net\u002Fccloud\u002Ftopics\u002F210036505","hrefUrl":"https:\u002F\u002Fbbs.csdn.net\u002Ftopics\u002F210036505","active":0,"navBarFixed":false,"title":"javax.transaction.UserTransaction和net.sf.hibernate.Transaction的区别?","isLive":false,"contentType":{"text":"text","picture":"picture","link":"link","video":"video","vote":"vote","live":"live","blog":"blog","long_text":"long_text","task_text":"task_text"},"liveUrl":"https:\u002F\u002Flive.csdn.net\u002Froom\u002Fiframe\u002F","spmExtra":{"id":121,"topicId":210036505},"keywords":"","description":"以下内容是CSDN社区关于javax.transaction.UserTransaction和net.sf.hibernate.Transaction的区别?相关内容,如果想了解更多关于Java EE社区其他内容,请访问CSDN社区。"}; a) 什么也不输出。 b) 弹出内容为“Is 1”的对话框。 c) 弹出内容为“Is 2”的对话框。 d) 当第一次访问这个程序时,弹出一个内容为"Is other"的对话框,从第二次开始,每次访问这个程序都弹出内容为“Is 2”的对话框。 e 当第一次访问这个程序时,弹出一个内容为"Is 1"的对话框,从第二次开始,每次访问这个程序都弹出内容为“Is 2”的对话框。 参考答案 a 4) 下面是一JSP页面的片断代码,请问页面输出结果是(). <% StringBuffer buffer =new StringBuffer (”Hello”); buffer.append(“World”); System.out.println(buffer.toString()); %> a) Hello b) World c) HelloWorld d) 什么也不输出 参考答案 d 5) aa.jsp文件如下: <%! static int I=0; int j=0; %> <% for(;I++<2;) { out.print(j++); out.print(" ");} %> 两个客户依次使用浏览器浏览aa.jsp,且每个客户只浏览一次,那么,第2个客户的浏览器将显示什么? e a) 0 1 b) 1 2 c) 3 4 d) 5 6 e) 什么也没有 6) 如果用JSP开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。 a) request b) page c) session d) application 参考答案 d 7) 在web.xml中,有如下代码: ion-config> ion-timeout>30ion-timeout> ion-config> 对于以下描述,正确的是: b a) 定义了默认的会话超时时长。时长为30秒。 b) 可以使用HttpSession接口的getMaxInactiveInterval()方法把该值取出来。 c) 定义了默认的会话超时时长。时长为30小时。 d) 可以使用Session类的getMaxInactiveInterval()方法把该值取出来。 8) 对于标记,描述不正确的是() a) 一般来说,标记的子标记。 b) 如果aa.jsp有代码:,则在next.jsp中可以使用request.getParameter("name");把属性name的值取出来。 c) 如果aa.jsp有代码:,则在next.jsp中可以使用request.getAttribute("name");把属性name的值取出来。 d) 如果标记放在标记外,也就是不作为标记的子标记,则使用浏览器查看时会显示错误页面。 9) aa.jsp与bb.jsp属于同一应用,在aa.jsp中使用标记,在bb.jsp中要把beanName这个bean对象变量所引用的对象取出来。那么对于以下描述,正确的是: c a) 在bb.jsp中仅使用代码:mybean bc = session.getAttribute("beanName"); 取出beanName所引用的对象。 b) 在bb.jsp中取beanName所引用的对象前,先要使用<%@ page import="mypackage.mybean" %>导入mypackage.mybean类。 c) 在bb.jsp中,对于使用session的getAttribute方法取出的beanName所引用的对象,要进行强制类型转换。 d) 在bb.jsp中使用session的getAttribute方法取出的对象和aa.jsp中的beanName所引用的对象无关。 10) 用JSP2.0表达式语法在JSP页面上正确显示10+20的结果的是()。 a) ${10+20} b) ${10+20}; c) $(10+20) d) $(10+20); 参考答案 a 11) 编写自定义标签处理类后,需要编写一个()去描述。 a) .tag 文件 b) .tld 文件 c) .dtd文件 d) .xml 文件 12) 关于Tag File说法不正确的是()。 a) Tag File是JSP2.0新增的功能 b) Tag File是JSP1.2增的功能 c) Tag File 可以让网页开发人员直接使用JSP语法制作标签 d) Tag File的扩展名可以 .tag 参考答案 b 13) 关于Servlet Filter,下列说法正确的有()。 a) Filter 其实就是一个Servlet b) Filter 可以产生response c) Filter可以在servlet被调用之前截获request d) Filter可以用来处理统一认证,过滤不雅字句等。 参考答案 c,d 14) 会话Bean的状态的说法正确的有(a)。 a) 有状态会话Bean的状态是借助于序列化保存下来的 b) 有状态会话Bean被激活后会恢复挂起前的状态 c) 无状态会话Bean不能有属性 d) 有状态会话Bean的所有属性在挂起的时候都会被保存下来 参考答案 15) 关于EJB组成部分的说法不正确的是 (ab) a) 每一个EJB的实例对象对应于一个JNDI名字,通过JNDI名字找到相应的实例 b) 所有EJB都包含Home接口,远程接口,Bean类三个部分 c) Bean类必须实现远程接口中的方法 d) 远程接口实现了RMI的Remote接口 参考答案 16) 下列关于RMI远程接口定义正确的是 d a) public interface Demo {public long test() throws java.rmi.RemoteException;} b) Public interface Demo extends Remote {public long test() } c) interface Demo extends Remote {public long test() throws java.rmi.RemoteException;} d) public interface Demo extends Remote {public long test() throws java.rmi.RemoteException;} 参考答案 17) 下列选项中能获得UserTransaction的是ab a) 通过上下文的.getUserTransaction()方法拿到UserTransaction b) 通过查找JNDI名为javax.transaction.UserTransaction的拿到UserTransaction c) new 一个UserTransaction对象 d) 不需要实例化,直接使用接口中的方法即可 参考答案 18) 关于事务,下列说法不正确的事 a a) EJB支持平面式和嵌入式两种事务模型 b) 平面式事务模型是指要么操作都成功,如果失败,所有操作都回滚 c) EJB有Bean管理事务和容器管理事务两种方式 d) BMT方式也可以使用JTA来控制事务边界 参考答案 19) 关于消息确认描述正确的是 ac a) 在创建消息会话的时候能指定消息的确认方式 b) AUTO_ACKNOWLEDGE方式能确认之前收到的所有消息 c) Client_ACKNOWLEDGE方式需要显示调用方法ACKNOWLEDGE方法来显式的确认消息 d) Client_ACKNOWLEDGE方式可以确认所有的消息 参考答案 20) 关于消息Bean事务描述正确的是 c a) MDB支持RequiresNew事务方式 b) MDB支持Mandatory事务方式 c) NotSupported方式在容器回调OnMessage方法之后才启动事务 d) MDB不支持Required事务属性 参考答案 21) 关于WSDL不正确的说法是 bc a a) 用来描述Web服务的XML文件 b) 全称是WEB SERVICES DEFINITION LANGUAGE c) 客户端调用时直接用WSDL文件中的地址就可以了 d) SOAP协议可以基于多种底层协议 二,简答题 1:简述四种会话跟踪技术以及他们的优缺点 2:请结合轻量级框架Struts,Spring和重量级框架EJB谈谈轻量级架构和重量级架构的区别? 3:说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法 4:如何给weblogic指定大小的内存?如何设定的weblogic的热启动模式(开发模式)与产品发布模式? 三,代码题 1:请写出JavaMail发送邮件的关键代码 2:设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 3:用冒泡法对10个数排序(由小到大)例如: 54,12,-6,6,22,-7,9,0,999,79 4:有一个登录页面,上面有用户名(name),密码(password)两个字段,对应数据库表User中的两个字段,请用Struts+EJB实现上述登陆场景!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧