日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > 綜合技術(shù) > spring、hibernate、struts實例解答

spring、hibernate、struts實例解答

來源:程序員人生   發(fā)布時間:2013-12-31 14:20:18 閱讀次數(shù):2910次

  1 Action是不是線程安全的?如果不是有什么方式可以保證Action的線程安全?如果是,說明原因
  不是線程安全的。只要不申明類變量就可以保證線程安全。因為只存在一個Action實例,所有線程會共享變量。

  聲明局部變量,或者擴展RequestProcessor,讓每次都創(chuàng)建一個Action,或者在spring中用scope="prototype"來管理

  2.MVC,分析一下struts是如何實現(xiàn)MVC的
  m:JavaBean 或結(jié)合 EJB 組件或者pojo構(gòu)成
  c:ActionServlet 、action來實現(xiàn)
  v:一組 JSP 文件及其標簽構(gòu)成。

  3.struts中的幾個關(guān)鍵對象的作用(說說幾個關(guān)鍵對象的作用)
  Action:控制器類,ActionForm:表單對象,DynaValidatorForm:動態(tài)form,ActonMapping:配置文件中action節(jié)點的信息......

  4.說說AOP和IOC的概念以及在spring中是如何應(yīng)用的
  AOP:面向切面編程,ioc:依賴注入;聲明式事務(wù)和編程式事務(wù)積極一些通用部分

  5.Hibernate有哪幾種查詢數(shù)據(jù)的方式
  hql查詢,sql查詢,qbc條件查詢

  6.load()和get()的區(qū)別
  hibernate對于load方法認為該數(shù)據(jù)在數(shù)據(jù)庫中一定存在,可以放心的使用代理來延遲加載,load()默認支持延遲加載,在用到對象中的其他屬性數(shù)據(jù)時才查詢數(shù)據(jù)庫,但是萬一數(shù)據(jù)庫中不存在該記錄,只能拋異常ObjectNotFoundEcception;所說的load方法拋異常是指在使用該對象的數(shù)據(jù)時,數(shù)據(jù)庫中不存在該數(shù)據(jù)時拋異常,而不是在創(chuàng)建這個對象時。由于session中的緩存對于hibernate來說是個相當廉價的資源,所以在load時會先查一下session緩存看看該id對應(yīng)的對象是否存在,不存在則創(chuàng)建代理(load時候之查詢一級緩存,不存在則創(chuàng)建代理)。get()首先會在一級緩存找數(shù)據(jù),沒有就去二級緩存找,沒有就去數(shù)據(jù)庫找,沒有就返回null ;而對于get方法,hibernate一定要獲取到真實的數(shù)據(jù),否則返回null。

  簡單地說:如果查詢不到數(shù)據(jù)load()會拋異常,get()會返回null。

  7.談?wù)刪ibernate的延遲加載和openSessionInView
  
延遲加載要在session范圍內(nèi),用到的時候再加載;openSessionInBiew是在web層寫了一個

  filter來打開和關(guān)閉session,這樣就表示在一次request過程中session一直開著,保證了延遲

  加載在session中的這個前提。

  8.spring的事務(wù)有幾種方式?談?wù)剆pring事務(wù)的隔離級別和傳播行為。
  聲明式事務(wù)和編程式事務(wù)
  隔離級別:
  - DEFAULT使用數(shù)據(jù)庫默認的隔離級別
  - READ_UNCOMMITTED會出現(xiàn)臟讀,不可重復(fù)讀和幻影讀問題
  - READ_COMMITTED會出現(xiàn)重復(fù)讀和幻影讀
  - REPEATABLE_READ會出現(xiàn)幻影讀
  - SERIALIZABLE最安全,但是代價最大,性能影響極其嚴重
  和傳播行:
  - REQUIRED存在事務(wù)就融入該事務(wù),不存在就創(chuàng)建事務(wù)
  - SUPPORTS存在事務(wù)就融入事務(wù),不存在則不創(chuàng)建事務(wù)
  - MANDATORY存在事務(wù)則融入該事務(wù),不存在,拋異常
  - REQUIRES_NEW總是創(chuàng)建新事務(wù)
  - NOT_SUPPORTED存在事務(wù)則掛起,一直執(zhí)行非事務(wù)操作
  - NEVER總是執(zhí)行非事務(wù),如果當前存在事務(wù)則拋異常
  - NESTED嵌入式事務(wù)

  9.Hibernate中的update()和saveOrUpdate()的區(qū)別.
  
  saveOrUpdate()做下面的事:
  如果對象已經(jīng)在本session中持久化了,不做任何事
  如果另一個與本session關(guān)聯(lián)的對象擁有相同的持久化標識(identifier),拋出一個異常
  如果對象沒有持久化標識(identifier)屬性,對其調(diào)用save()
  如果對象的持久標識(identifier)表明其是一個新實例化的對象,對其調(diào)用save()
  如果對象是附帶版本信息的(通過 <version>或 <timestamp>)并且版本屬性的值表明其是一個新實例化的對象,save()它。否則update() 這個對象

  10.Spring對多種ORM框架提供了很好的支持,簡單描述在Spring中使用Hibernate的方法,并結(jié)合事務(wù)管理。(常用)
  getHiberanteTemplate里面提供了save,update,delete,find等方法。
  簡單說一個:如果配置了聲明式事務(wù),當執(zhí)行g(shù)etHibernateTemplate的各種方法的時候,事務(wù)會

  自動被加載
  如果沒有配置事務(wù),那么以上操作不會真正的被同步到數(shù)據(jù)庫,除非配置了hibernate的

  autocommit=true

  8.spring的事務(wù)有幾種方式?談?wù)剆pring事務(wù)的隔離級別和傳播行為。
  spring事務(wù)分兩種形式,聲明式事務(wù)和編程式事務(wù),spring提供了一個事務(wù)的接口

  PaltformTractionManager接口,針對不同的事務(wù),spring進行了不同的實現(xiàn),對hibernate事務(wù)

  的實現(xiàn)HIbernateTractionManager,對JDBC的JdbcTractionManager,

  DataSourceTractionManager以及JdoTractionManager。接口platformTractionManager提供了三

  個方法,獲取事務(wù),提交和回滾的方法。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲免费小视频 | 欧美日韩一区三区 | 天天射夜夜操 | 日韩在线影视 | 久久九九99 | 国产精品成人免费视频 | 三级成人av | 人人模人人看 | 黄色毛片一级片 | 激情四射综合网 | 欧美在线视频一区 | 久久在线播放 | 天天摸天天操天天干 | 男女午夜视频 | 激情毛片 | 日韩欧美精品在线 | 精品视频91| 一区二区国产在线 | 久久久久久久久国产 | 91一区二区三区在线观看 | 日本在线不卡一区 | 久久99国产精品 | 在线午夜av | 亚洲精品久久久久久下一站 | 日本xxxxwwww| 国产一区福利 | 99精品国产成人一区二区 | 欧美综合在线观看 | 免费成人一级片 | 麻豆视频一区二区 | 欧美一区二区三区在线观看视频 | 久久国产精品-国产精品 | 国产精品一二三 | 国产在线观看免费麻豆 | 色综合天天天天做夜夜夜夜做 | 国产区在线看 | 亚洲免费中文字幕 | 欧美精品一区二区三区在线 | 一级毛片一级毛片一级毛片 | 国产一区视频在线 | 99在线观看视频 |