面試總結(深圳第五天)

1、execute和submit的區別是:
1)可以收受的任務類型,execute只能接收runnable,而submit不僅可以,還能接收Callable類型
2)execute沒有返回值,submit有返回值
2、HTTP三次握手
1)主機A向主機B發送一個位碼,爲1,主機B收到後就知道主機A要連入
2)主機B生成隨機串並將1發送給A,A檢查1是否正確
3)A發送1和隨機串給B,此時,A和B完成三次握手
3、HTTP四次揮手
1)主機A發送給服務器,我要關閉了
2)服務器收到,關閉並返回
3)主機A收到,關閉併發送我也關閉了
4)服務器收到,服務器知道了
4、Spring事務的傳播屬性
1)REQUIRED:業務方法需要在一個事務中運行。如果方法運行時,已經處在一個事務中,那麼這個時候就會加入到該事務中,如果當前沒有事務環境的話,就會爲自己創建一個新的事務。默認情況下,業務方法的事務傳播屬性就是REQUIRED。在應用開發中,80%的情況下都會使用這種事務傳播屬性。
2)NOT_SUPPORTED:聲明方法不需要事務。如果方法沒有關聯到一個事務,容器不會爲它開啓事務。如果方法在一個事務中被調用(在其他業務bean的方法中被調用了,而其他業務bean的方法是開啓了事務的),該事務會被掛起,在方法調用結束後,原先的事務便會恢復執行。
3)REQUIRESNEW:該屬性表明不管當前是否存在事務,業務方法總會爲自己發起一個新的事務。如果方法已經運行在一個事務中,則原有事務會被掛起,新的事務會被創建,直到方法執行結束,新事務纔算結束,原先的事務纔會恢復執行。
4)MANDATORY:該屬性指定業務方法只能在一個已經存在的事務中執行,業務方法不能發起自己的事務。如果業務方法在沒有事務的環境下調用,容器就會拋出異常。
5)SUPPORTS:這一事務屬性表明,如果業務方法在某個事務範圍內被調用,則方法成爲該事務的一部分。如果業務方法在事務範圍外被調用,則方法在沒有事務的環境下執行。即當標註了事務傳播屬性——SUPPORTS的業務方法在另一個bean的業務方法中執行時,如果另一個bean的業務方法開啓了事務,那麼執行到標註了事務傳播屬性——SUPPORTS的業務方法時,它就會處在事務中執行,如果另一個bean的業務方法也沒開啓事務,那麼標註了事務傳播屬性——SUPPORTS的業務方法也在沒有事務的環境中進行。
6)Never:指定業務方法絕對不能在事務範圍內執行。如果業務方法在某個事務中執行,容器會拋出異常,只有業務方法沒有關聯到任何事務,才能正常執行。
NESTED:如果一個活動的事務存在,則當前方法運行在一個嵌套的事務中。 如果沒有活動事務,則按REQUIRED屬性執行。它使用了一個單獨的事務,這個事務擁有多個可以回滾的保存點。內部事務的回滾不會對外部事務造成影響。它只對DataSourceTransactionManager事務管理器起效果。
5、redis數據結構
Redis中的5種數據類型String、Hash、List、Set、Sorted Set;
應用場景:排行,共同好友。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章