原创 java面試(十三)--(1)優化Hibernate所鼓勵的7大措施 (2)線程的sleep()方法和yield()方法(3)鏈表合併

1. 優化Hibernate所鼓勵的7大措施: 1.儘量使用many-to-one,避免使用單項one-to-many 2.靈活使用單向one-to-many 3.不用一對一,使用多對一代替一對一 4.配置對象緩存,不使用集合緩存

原创 java面試(七)--(1)volatile,synchronized的區別(2)HashMap(3)類加載器(4)java內部類(5)動態規劃問題

1. volatile,synchronized的區別 關鍵字volatile是線程同步的輕量級實現,所以volatile性能肯定比synchronized要好,並且只能修改變量,而synchronized可以修飾方法,以及代碼

原创 java面試(四)--(1)如何設置請求的編碼以及響應內容的類型(2)redis的List能在什麼場景下使用(3)棧模擬隊列

1. 請你說明一下,如何設置請求的編碼以及響應內容的類型? 設置請求的編碼:request.setCharacterEncoding(String) utf-8 設置響應內容的類型:response.setContentType

原创 java面試(一)--(1)JDBC的反射,以及它的作用(2)數據庫優化方法(3)字符串替換

1.請你談談JDBC的反射,以及它的作用? 通過反射com.mysql.jdbc.Driver類,實例化該類時,會調用該類的靜態代碼塊,該代碼塊會去DriverManager類中註冊自己,DriverManager管理所有已註冊的

原创 mybatis能力提升:完成 轉賬功能,日誌記錄功能,分頁查詢

實體類 Account.java package com.wj.pojo; /** * @Auther: wj * @Date: 2019/9/11 * @Description: com.wj.mapper.pojo

原创 Nginx 安裝步驟

1 nginx 安裝環境 nginx 是 C 語言開發,建議在 linux 上運行,本教程使用 Centos6.5 作爲安裝環境。 gcc 安裝 nginx 需要先將官網下載的源碼進行編譯,編譯依賴 gcc 環境,如果沒有 gcc

原创 java面試(三)--(1)volatile(2)String(3)窗口滑動問題

1.請你介紹一下volatile? Volatile是java提供的輕量級同步機制,比sychronized開銷要小. 如果要使用 volatile 了,那肯定是在多線程併發的環境下(原子性、可見性、有序性).被volatile定

原创 java面試(九)--(1)List和ArrayList的區別,arrayList和HashSet區別(2)桶排序問題

1. List和ArrayList的區別,arrayList和HashSet區別 list是接口,arraylist是實現該接口的類,arraylist底層是動態數組,有序且可以重複hashset底層是hash表,由於會比較has

原创 java面試(六)--(1)二叉樹深度(2)快速失敗(fail-fast)和安全失敗(fail-safe)(3)StringBuffer和StringBuilder

1.輸入一棵二叉樹,求該樹的深度。 從根結點到葉結點依次經過的結點(含根、葉結點)形成樹的一條路徑,最長路徑的長度爲樹的深度。 示例代碼: /** public class TreeNode { int val = 0;

原创 java面試(十一)--(1)cookie 和 session 的區別(2)redis爲什麼是單線程(3)棧的模擬過程

1.請你說說,cookie 和 session 的區別? 1.Cookie: 通俗講,是訪問某些網站後在本地存儲的一些網站相關信息,下次訪問時減少一些步驟。更準確的說法是:Cookies是服務器在本地機器上存儲的小段文本並隨每一個

原创 java面試(二)--(1)EJB的幾種類型(2)Hibernate的悲觀鎖和樂觀鎖(3) 二叉搜索樹與雙向鏈表

1.請說明一下EJB的幾種類型分別是什麼? EJB(Enterprise JavaBean)是J2EE服務器端的組件模型,EJB包括會話Bean(Session Bean)、實體Bean(Entity Bean)、消息驅動Bean

原创 linux無法顯示IP地址問題

原文鏈接:https://blog.csdn.net/pbrlovejava/article/details/81507238 轉載:https://blog.csdn.net/pbrl

原创 java面試(八)--(1)Request對象的主要方法(2)Java領域中的Web Service框架(3)垃圾回收機制(4)互斥鎖(5)字符串轉換

1.請詳細說明一下Request對象的主要方法是什麼? Request對象的主要方法: setAttribute(String name,Object):設置名字爲name的request 的參數值 getAttribute(St

原创 java面試(十二)--(1)實現多線程同步的方法(2)內部類實現線程設計(3)數組中有一個數字出現的次數超過數組長度的一半,請找出這個數字

1.請簡述一下實現多線程同步的方法? 爲什麼要線程同步: 因爲當我們有多個線程要同時訪問一個變量或對象時,如果這些線程中既有讀又有寫操作時,就會導致變量值或對象的狀態出現混亂,從而導致程序異常。舉個例子,如果一個銀行賬戶同時被兩個

原创 java面試(十四)--(1)JVM常用命令(2)前後臺線程(3)中間件(4)DBMS事務(5)OOP基本原則(6)GC內存回收(7)反射

1.JVM常用命令 1、jps:查看本機java進程信息。 2、jstack:打印線程的棧信息,製作線程dump文件。 3、jmap:打印內存映射,製作堆dump文件 4、jstat:性能監控工具 5、jhat:內存分析工具 6、