.net 筆試面試總結(3)

  • 什麼是Sql注入?如何避免Sql注入?html

用戶根據系統的程序構造非法的參數從而致使程序執行不是程序指望的惡意Sql語句。算法

使用參數化的Sql就能夠避免Sql注入。數據庫

  • 數據庫三範式是什麼?

第一範式:字段不能有冗餘信息,全部字段都是必不可少的。安全

第二範式:知足第一範式而且表必須有主鍵。服務器

       第三範式:知足第二範式而且引用其餘的表必須經過主鍵引用。性能

       eg: 員工內部->本身的老大->外部的老大大數據

               記憶順序:本身內部不重複->別人引用本身->本身引用別人優化

  • Application 、Cookie和 Session 兩種會話有什麼不一樣?

 Application是用來存取整個網站全局的信息,而Session是用來存取與具體某個訪問者關聯的信息。Cookie是保存在客戶端的,機密信息不能保存在Cookie中,只能放小數據;Session是保存在服務器端的,比較安全,能夠放大數據。網站

       談到Session的時候就侃Session和Cookie的關係:Cookie中的SessionId。和別人對比說本身懂這個原理而給工做帶來的方便之處。spa

  1. 什麼是泛型:經過參數化類型來實如今同一份代碼上操做多種數據類型。利用「參數化類型」將類型抽象化,從而實現靈活的複用。
  2. 泛型就是將類型抽象化,使用抽象化的類型或對象去實現某些功能和業務,而後全部須要使用這些功能和業務的具體類型去調用泛型的方法和委 託。
  3. 使用泛型有什麼優點?

    (1)保證了類型安全: 泛型約束了變量類型,保證類型安全 。(2) 避免了沒必要要的裝箱、拆箱操做,提升程序的性能。 (3) 提升算法、方法的重用性

  4. 泛型應用舉例 :  (1) 泛型方法使用:  DataTable轉換爲對應的List<T>集合、將DataGridViewRow對象轉換成對應的實體Model的方法  (2) 泛型類使用(3) 泛型接口以及泛型繼承的使用   (4) 泛型委託使用   (5) 泛型約束
  5. 使用泛型方法的注意事項 :    

             泛型的重載: 泛型不能夠被重載

             泛型的重寫:  泛型能夠被重寫,可是注意泛型約束的繼承 

  1.  反射應用場景:

     (1) 有時候不知道具體類型,經過反射DLL獲得具體的對象

     (2) 某些特殊方法,傳過來的是泛型類,須要經過反射處理某些特殊的業務

     (3) 通用方法DataTable和List<T>的相互轉化時須要用到反射

  2. 如何使用反射

              (1)反射dll獲得類成員

              (2) 反射對象的私有成員

              (3) 反射對象的靜態成員

              (4) 反射獲得對象以及對象的操做 。反射獲得對象有兩種方式, 經過反射對對象屬性的取值和賦值

  •   數據庫索引做用和優缺點?(參考)

             優勢:(1) 經過建立惟一性索引,能夠保證數據表中每一行數據的惟一性

                      (2)能夠大大加快 數據的檢索速度,這也是建立索引的最主要的緣由

                      (3)能夠加速表和表之間的鏈接,特別是在實現數據的參考完整性方面特別有意義。

                      (4) 在使用分組和排序 子句進行數據檢索時,一樣能夠顯著減小查詢中分組和排序的時間。

                      (5)經過使用索引,能夠在查詢的過程當中,使用優化隱藏器,提升系統的性能

              缺點:(1)建立索引和維護索引要耗費時間,這種時間隨着數據 量的增長而增長

                       (2)索引須要佔物理空間,除了數據表佔數據空間以外,每個索引還要佔必定的物理空間,若是要創建聚簇索引,那麼須要的空間就會更大。

                       (3) 當對錶中的數據進行增長、刪除和修改的時候,索引也要動態的維護,這樣就下降了數據的維護速度。

相關文章
相關標籤/搜索