1. 程式人生 > >第二次面試(電話面試)

第二次面試(電話面試)

分頁 存取 集合 管理系 sele 字段 獲取 負責 冒泡排序

第二次面試(電話面試)

  1. 自我介紹一下自己。

    我叫任秀興,平時的愛好是寫寫程序,實現個功能讓自己開心一下。溝通能力比較強、自我管理能力比較好,在復雜的事情面前能夠保持一個樂觀的心態,能在較短的時間內處理復雜的問題。善於使用搜索工具解決問題,能夠敏銳的發現問題所在。
  2. 說一下你做過的項目。

    做過一個簡單的項目,servlet+jsp的,是給政府質檢部門做的一個報告管理系統。我擔任裏面的項目負責人,主要做的工作是:與客戶溝通,了解開發方向及客戶想要實現的功能;功能方面,驗證碼登錄、權限劃分、文件的上傳及下載、對報告的模糊查詢、復制報告、分頁處理、報告打印等;以及項目在Windows環境下的部署。

  3. 說一下冒泡排序,時間復雜度,最大的交換次數?

    冒泡排序是通過相鄰兩個數比較,第一行第一個數與第二個數進行比較,大的或者小的放在前邊或者後邊,然後第二個與第三個數進行比較。。等第一行比較結束時,最大或者最小數也就找到了,然後同樣使用此方法進行第二行的排序直至所有的排序完成。

    技術分享圖片

  4. Servlet的執行過程

    前端通過超鏈接或者表單將數據傳遞給相應的servlet,servlet接收到前端傳來的數據進行處理,操縱數據庫等,然後將處理過得結果返還到前端。
  5. Servlet將值返回給jsp的形式

    獲取session對象-->通過session獲取應用上下文對象-->獲取存儲在應用上下文對象的集合對象-->將封裝信息的javabean存在集合對象中-->將集合對象存儲在應用上下文中-->重定向到jsp頁面
  6. 了解sql註入嗎?如何防止

    SQL註入,就是利用現有應用程序,將(惡意)的SQL命令註入到後臺數據庫引擎執行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個存在安全漏洞的網站上的數據庫,而不是按照設計者意圖去執行SQL語句。

    防止SQL註入

    1.執行sql語句時使用addslashes進行sql語句轉換

    2.Sql語句書寫盡量不要省略小引號和單引號

    3.過濾掉sql語句中的一些關鍵字:update、insert、delete、select、*

    4.提高數據庫表和字段的命名技巧,對一些重要的字段根據程序的特點命名,取不易被猜到的。

    5.控制錯誤信息,不要再瀏覽器上輸出錯誤信息,將錯誤信息寫到日誌文件中。

    6.永遠不要信任用戶的輸入。對用戶的輸入進行校驗,可以通過正則表達式,或限制長度;對單引號和雙"-"進行轉換或刪除等。

    7.永遠不要使用動態拼裝sql,可以使用參數化的sql或者直接使用存儲過程進行數據查詢存取。

    8.使用預編譯綁定變量的SQL語句

    9.嚴格加密處理用戶機密信息

    一個好的程序一定要註意安全性,否則只適合練手。
  7. 如何防止死鎖?

    死鎖產生的條件:兩個進程都在互相等待對方結束才能進行下面的操作,防止就是不讓程序出現這種情況。
  8. 還記得數據結構中的鏈表嗎?
  9. 你對算法的了解有多少?
  10. 你學過json、ajax嗎?

第二次面試(電話面試)