久久99热66热这里只有精品,特黄特色的大片在线观看,亚洲日本三级在线观看,国产三级农村妇女在线,亚洲av毛片免费在线观看,哺乳叫自慰在线看,天天干美女av网

Spring面試試題

時(shí)間:2024-09-19 01:22:01 學(xué)人智庫 我要投稿
  • 相關(guān)推薦

Spring面試試題

  1. 你一般用spring做什么?

Spring面試試題

  控制反轉(zhuǎn)IOC AOP

  2. spring中的哪個(gè)類的哪個(gè)方法可用于獲取bean

  3. spring是什么?根據(jù)你的理解詳細(xì)談?wù)勀愕囊娊狻?/p>

  目的:解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性

  功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能

  范圍:任何Java應(yīng)用

  簡(jiǎn)單來說,Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。

  輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不依賴于Spring的特定類。

  控制反轉(zhuǎn)——Spring通過一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過被動(dòng)的方式傳遞進(jìn)來,而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI相反——不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì)象請(qǐng)求就主動(dòng)將依賴傳遞給它。

  面向切面——Spring提供了面向切面編程的豐富支持,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)()管理)進(jìn)行內(nèi)聚性的開發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的——完成業(yè)務(wù)邏輯——僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。

  容器——Spring包含并管理應(yīng)用對(duì)象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的每個(gè)bean如何被創(chuàng)建——基于一個(gè)可配置原型(prototype),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例——以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用。

  框架——Spring可以將簡(jiǎn)單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開發(fā)留給了你。

  所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測(cè)試的代碼。它們也為Spring中的各種模塊提供了基礎(chǔ)支持。

  4. 項(xiàng)目中如何體現(xiàn)Spring中的切面編程,距離說明。

  面向切面編程:主要是橫切一個(gè)關(guān)注點(diǎn),將一個(gè)關(guān)注點(diǎn)模塊化成一個(gè)切面。在切面上聲明一個(gè)通知(Advice)和切入點(diǎn)(Pointcut); 通知: 是指在切面的某個(gè)特定的連接點(diǎn)(代表一個(gè)方法的執(zhí)行。通過聲明一個(gè)org.aspectj.lang.JoinPoint類型的參數(shù)可以使通知(Advice)的主體部分獲得連接點(diǎn)信息。)上執(zhí)行的動(dòng)作。通知中定義了要插入的方法。切入點(diǎn):切入點(diǎn)的內(nèi)容是一個(gè)表達(dá)式,以描述需要在哪些對(duì)象的哪些方法上插入通知中定義的方法。

  項(xiàng)目中用到的Spring中的切面編程最多的地方:聲明式事務(wù)管理。

  a、定義一個(gè)事務(wù)管理器

  b、配置事務(wù)特性(相當(dāng)于聲明通知。一般在業(yè)務(wù)層的類的一些方法上定義事務(wù))

  c、配置哪些類的哪些方法需要配置事務(wù)(相當(dāng)于切入點(diǎn)。一般是業(yè)務(wù)類的方法上)

  5. spring中可以用注入獲得屬性值,還有其他的方式嗎?

  讀取配置文件

  6. spring在項(xiàng)目中如何充當(dāng)粘合劑

  1、在項(xiàng)目中利用spring的IOC(控制反轉(zhuǎn)或依賴注入),明確地定義組件接口(如UserDAO),開發(fā)者可以獨(dú)立開發(fā)各個(gè)組件, 然后根據(jù)組件間的依賴關(guān)系組裝(UserAction依賴于UserBiz,UserBiz依賴于UserDAO)運(yùn)行,很好的把Struts(Action)和hibernate(DAO的實(shí)現(xiàn))結(jié)合起來了。

  2、spring的事務(wù)管理把hibernate對(duì)數(shù)據(jù)庫的操作進(jìn)行了事務(wù)配置。

  7. spring的事務(wù)如何配置

  spring的聲明式事務(wù)配置:

  1.

  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

  /WEB-INF/classes/hibernate.cfg.xml

  2. 配置事務(wù)管理器

  class="org.springframework.orm.hibernate3.HibernateTransactionManager">

  3. 配置事務(wù)特性

  4. 配置哪些類的哪些方法配置事務(wù)

  isolation設(shè)定事務(wù)的隔離級(jí)別,事務(wù)管理器根據(jù)它來控制另外一個(gè)事務(wù)可以看到本事務(wù)內(nèi)的哪些數(shù)據(jù)。

  定義的5個(gè)不同的事務(wù)隔離級(jí)別:

  DEFAULT:默認(rèn)的隔離級(jí)別,使用數(shù)據(jù)庫默認(rèn)的事務(wù)隔離級(jí)別

  READ_COMMITTED:保證一個(gè)事務(wù)修改的數(shù)據(jù)提交后才能被另外一個(gè)事務(wù)讀取。另外一個(gè)事務(wù)不能讀取該事務(wù)未提交的數(shù)據(jù)。這種事務(wù)隔離級(jí)別可以避免臟讀出現(xiàn),但是可能會(huì)出現(xiàn)不可重復(fù)讀和幻像讀。

  READ_UNCOMMITTED:這是事務(wù)最低的隔離級(jí)別,它充許別外一個(gè)事務(wù)可以看到這個(gè)事務(wù)未提交的數(shù)據(jù)。這種隔離級(jí)別會(huì)產(chǎn)生臟讀,不可重復(fù)讀和幻像讀。

  REPEATABLE_READ:這種事務(wù)隔離級(jí)別可以防止臟讀,不可重復(fù)讀。但是可能出現(xiàn)幻像讀。它除了保證一個(gè)事務(wù)不能讀取另一個(gè)事務(wù)未提交的數(shù)據(jù)外,還保證了避免不可重復(fù)讀。

  SERIALIZABLE:這是花費(fèi)最高代價(jià)但是最可靠的事務(wù)隔離級(jí)別。事務(wù)被處理為順序執(zhí)行。除了防止臟讀,不可重復(fù)讀外,還避免了幻像讀。

  propagation定義了7個(gè)事務(wù)傳播行為

  REQUIRED: 如果存在一個(gè)事務(wù),則支持當(dāng)前事務(wù)。如果沒有事務(wù)則開啟一個(gè)新的事務(wù)。

  SUPPORTS: 如果存在一個(gè)事務(wù),支持當(dāng)前事務(wù)。如果沒有事務(wù),則非事務(wù)的執(zhí)行。但是對(duì)于事務(wù)同步的事務(wù)管理器,SUPPORTS與不使用事務(wù)有少許不同。

  REQUIRES_NEW 總是開啟一個(gè)新的事務(wù)。如果一個(gè)事務(wù)已經(jīng)存在,則將這個(gè)存在的事務(wù)掛起。

  NOT_SUPPORTED 總是非事務(wù)地執(zhí)行,并掛起任何存在的事務(wù)。

  NEVER 總是非事務(wù)地執(zhí)行,如果存在一個(gè)活動(dòng)事務(wù),則拋出異常

  NESTED:如果一個(gè)活動(dòng)的事務(wù)存在,則運(yùn)行在一個(gè)嵌套的事務(wù)中. 如果沒有活動(dòng)事務(wù), 則按TransactionDefinition.PROPAGATION_REQUIRED 屬性執(zhí)行。

  嵌套事務(wù)一個(gè)非常重要的概念就是內(nèi)層事務(wù)依賴于外層事務(wù)。外層事務(wù)失敗時(shí),會(huì)回滾內(nèi)層事務(wù)所做的動(dòng)作。而內(nèi)層事務(wù)操作失敗并不會(huì)引起外層事務(wù)的回滾。

  REQUIRED應(yīng)該是我們首先的事務(wù)傳播行為。它能夠滿足我們大多數(shù)的事務(wù)需求。

  8. transaction有那幾種實(shí)現(xiàn)(事務(wù)處理)(Spring)

  在Spring中,事務(wù)處理主要有兩種方式

  (1) 代碼控制事務(wù)

  在程序中引入新的模版類,這個(gè)類封裝了事務(wù)管理的功能

  (2) 參數(shù)配置控制事務(wù),在Application-Context.xml增加一個(gè)事務(wù)代理(UserDAOProxy)配置

  2. IBATIS中的事物屬性怎么配置

  SQL MAP XML配置文件中的transactionManager

【Spring面試試題】相關(guān)文章:

投行面試題07-24

軟件測(cè)試面試題01-17

來看看谷歌的面試題08-17

中層副職競(jìng)聘面試題09-05

濟(jì)南稼軒中學(xué)小升初面試題07-21

考察個(gè)人價(jià)值觀的另類面試題02-21

壓力危機(jī)類面試題目突破技巧11-09

今年最強(qiáng)的面試題和最牛的答卷09-20

人力資源行業(yè)常見面試題匯總02-03

面試中的邏輯思維能力測(cè)試題10-21