原创 Spring JPA(一)

JPA進行數據持久化一般經過兩個步驟 ①獲取實體管理器(EntityManager) 實體管理器來自於實體管理器工廠,具體細節可以參照《Spring實戰》320頁 具體來講,一個實體管理器需要配置以下幾個屬性: a:數據源(datasou

原创 Spring的JDBC相關

使用JDBC標準訪問數據庫時,一般會經歷以下幾個步驟: ①拿到DataSource DataSource有很多種,像Mysql,Oracle,以及一些嵌入式數據庫h2。 ②建立與數據庫的連接Connection Spring官方推薦通過數

原创 Spring JPA(二)

上一篇通過在自己的Repository類裏注入EntityManager來實現對數據庫的相關操作。 但是Spring覺得這種方式還是會出現一些重複的模板式的代碼。於是對於Repository的實現進行了更加簡單的封裝。 分爲以下三個步驟:

原创 mybatis定義與數據庫交互的xml文件時傳入參數的幾種方式

①paramtype普通類型(int,String)等 ②不定義paramtype屬性。在mapper方法裏通過@param(“xxx”)來將參數傳入xml文件中 ③傳入一個javabean類型。即paramtype=“com.test.

原创 Spring的緩存

一:spring緩存與redis之間的關係 spring有多種緩存管理器,redis的緩存管理器RedisCacheManager實現了Spring的CacheManager,是Spring多種緩存管理器中的一種。    二:在Sprin

原创 Springboot的@Transaction關鍵字

@Transaction 今天在進行數據庫的插入操作時接觸到@Transaction 在操作數據庫的方法上加上@Transaction,就代表該方法是一個事務。 對應到各數據庫,都會有自己的事務隔離級別。例如mysql有以下四種級別:  

原创 java線程

進程是一個靜態的概念,例如一個exe文件。 所謂進程的執行實際上是指進程裏的線程開始執行了,比如一個java裏的main方法開始執行。其實電腦裏運行的是各種各樣的進程。 java裏創建一個新的線程的方法有兩個 第二種,直接繼承Thre

原创 java容器之Equals方法

Set:沒有順序可以重複 List:有順序不可以重複  所謂重複指的是兩個對象Equals,不是“==”,“==”指的是引用相等 Object本身的equals方法是等同於==的,即指向相同的引用 重寫equals方法時需要同時重寫ha

原创 JavaIO_01

字節流每次讀取一個字節(8位),字符流每次讀取一個字符(兩個字節16位),一個漢字是一個字符, 佔兩個字節。 節點流和處理流 轉換流   例如: System.in是一種InputStream,接受用戶鍵盤的輸入,因此可以作爲轉

原创 java代理

代理分爲靜態代理和動態代理 靜態代理: 通過聚合實現。即代理對象和被代理對象實現相同的接口。代理對象在重寫方法時會調用被代理對象的方法。而在調用前後會加入相關邏輯,例如日誌,安全檢查等。 舉例 接口(代理對象和被代理對象都要實現) pa

原创 java容器之Iterator

每種容器自身底層實現的原理不同,例如ArrayList底層採用數組實現,LinkedList底層採用鏈表實現。因此Collection很難給出一個統一 的用於遍歷各種容器的方法。這項工作只有交給每個容器自己去做。 具體的做法就是每個容器都

原创 java容器之Collections

注意與Collection的區別,Collection是一個接口,而Collections是一個封裝了很多基於List容器的靜態方法  

原创 JSP裏面向數據庫裏面插入數據時出現亂碼的解決方法

在插入頁面加上一句 request.setCharacterEncoding("gbk");

原创 synchronized和volatile的一些問題

關於java多線程的一些常見問題。 ①java的內存可見性模型 故每個線程都有自己的工作內存。從主內存中讀取X的值,改變X的值之後將最新的值寫入到主內存之中,各個線程之間通過主內存進行交流。 ②java中的內存可見性 內存可見性指的是