1.spring裏面的註解有哪些?spring
@Component 是全部受Spring 管理組件的通用形式,@Component註解能夠放在類的頭上@Component不推薦使用。設計模式
@controller 對應表現層的Bean數組
@ Repository 對應數據訪問層Bean瀏覽器
@Autowired顧名思義,就是自動裝配,是spring註解安全
@Resource後面沒有任何內容,默認經過name屬性去匹配bean,找不到再按type去匹配,是j2ee註解session
2.線程建立的方式有哪幾種?數據結構
兩種 一種是extend thread類,還有一種是實現runable接口。通常咱們都是用實現。由於繼承只能繼承一個,而實現能夠實現多個接口,還能再繼承。多線程
3.線程的安全性問題,怎麼解決?併發
兩個或者兩個以上的線程去爭奪或者訪問同一個資源,就會引起一些問題,因爲每一個線程執行的過程是不可控的,因此極可能致使最終的結果與實際上的願望相違背或者直接致使程序出錯。mvc
基本上全部的併發模式在解決線程安全問題上,都採用「序列化訪問臨界資源」的方案,即在同一時刻,只能有一個線程訪問臨界資源,也稱同步互斥訪問。一般來講,是在訪問臨界資源的代碼前面加上一個鎖,當訪問完臨界資源後釋放鎖,讓其餘線程繼續訪問。在Java中,提供了兩種方式來實現同步互斥訪問:synchronized和Lock。
4.http底層 http的一些方法
http1.0定義了get post head
http1.1定義了options, put, delete, trace 和 connect
5.get和post的區別
Get是安全的和冪等的 以get?參數&參數這種形式將參數顯示在地址欄上,是不安全的
get容許傳輸的數據會受到限制,所以get的傳輸效率要比較高
Post 一般用於表單提交,不帶參數,比較安全,容許傳輸大量數據
但這二者的保密性都是不強的
6.springmvc的運行原理
瀏覽器發送http請求到DispatcherServlet, DispatcherServlet尋找一個或者多個handmapping處理器,而後調用處理器找處處理請求的controller,controller經過調用modelandview模型處理業務,將結果返回到DispatcherServlet,DispatcherServlet經過視圖解析印射(ViewResolver)將模型數據傳給view顯示,http將view顯示在瀏覽器上
7.Spring中的ioc和aop用到了哪一種設計模式
ioc 控制反轉,ioc對象的生成交給spring容器完成DI(Dependency Injection),依賴注入等價於Aop面向切面
ioc用到的是工廠設計模式,經過sessionfactory去注入實例
Aop用到的是代理模式,主要是動態代理跟靜態代理兩種模式
8.list set map
List特色:繼承了Collection,元素有放入順序,元素可重複
Set : 繼承了Collection,存入Set的每一個元素都必須是惟一的,由於Set不保存重複元素。加入Set的元素必須定義equals()方法以確保對象的惟一性。Set與Collection有徹底同樣的接口。Set接口不保證維護元素的次序
Map 是一種把鍵對象和值對象映射的集合,它的每個元素都包含一對鍵對象和值對象。 Map沒有繼承於Collection接口 從Map集合中檢索元素時,只要給出鍵對象,就會返回對應的值對象。 get(Object key):得到與關鍵字key相關的值 。Map集合中的鍵對象不容許重複,也就說,任意兩個鍵對象經過equals()方法比較的結果都是false.
9.Array list linked list
10.hashmap和hashtable
11.stringbuffer跟stringbuild
StringBuffer是可變類,任何對它所指代的字符串的改變都不會產生新的對象,StringBufferd支持併發操做,線性安全的,適 合多線程中使用.StringBuilder不支持併發操做,線性不安全的,不適合多線程中使用