原创 Hibernate的一級緩存Session和二級緩存SessionFactory

Hibernate的一級緩存是指Session(屬於事務範圍的緩存,由Hibernate管理,無需干預),它是一塊內存空間,用來存放相互管理的java對象,有了一級緩存,應用程序可以減少訪問數據庫的次數,提高了性能。 在使用Hib

原创 【轉載】java多線程synchronized volatile解析

原文地址:點擊這裏 先簡單說說原子性:具有原子性的操作被稱爲原子操作。原子操作在操作完畢之前不會線程調度器中斷。即一個操作或者多個操作 要麼全部執行並且執行的過程不會被任何因素打斷,要麼就都不執行。在Java中,對除了long和d

原创 棧的兩種遍歷方式

一、普通遍歷 public void test05(){ MyLinkedStack<String> myStack = new MyLinkedStack<String>(); mySta

原创 關於HashSet添加元素時的equals()方法和hashCode()方法

HashSet集合不能存儲重複的元素,那麼元素之間是否重複,HashSet是根據什麼機制去判斷的呢? HashSet在添加一個元素時(比如此時添加的是”a”這個元素),都會將該元素與set中所遍歷到的每個元素作比較,比較的過程是這

原创 Struts2運行過程簡介

利用Struts2框架寫一個HelloWorldAction入門案例執行流程: (0)項目啓動,struts.xml文件被加載(這個文件包括了struts2的action配置文件) (1)客戶端發送請求helloWorld.a

原创 後臺線程

“後臺線程”也叫“守護線程”,他爲用戶線程提供服務,當用戶線程(前臺線程)死亡的時候,JVM也會通知“後臺線程”死亡,但在“後臺線程”接收到信息到死亡需要一定的時間;“後臺線程”、創建的子線程默認是“後臺線程”,“用戶線程”創建的

原创 二叉樹的遍歷和查找

就如圖所示的二叉樹進行遍歷: (1)前序遍歷:A B D G H C E I F (2)中序遍歷:G D H B A E I C F (3)後序遍歷:G H D B I E F C A 遞歸前序遍歷算法: priva

原创 MVC模式原理

MVC模式將軟件程序分爲3個核心模塊:模型(Model)、視圖(View)和控制器(Controller)。 模型(Model): (1)負責管理應用程序的業務數據、(2)訪問和修改這些數據的業務規則以及(3)爲視圖提供查詢模型

原创 Hibernate的事務

一、事務的併發問題 在實際應用中,數據庫是要被I多個用戶共同訪問的,在多個事務同時使用相同的數據時,可能會發生併發的問題,具體爲: 髒讀:一個事務讀取到另一個事務未提交的數據。 不可重複讀:一個事務對同一行數據重複讀取兩次,但

原创 Struts2的Action控制類的實現及Action訪問Servlet API

Struts2的Action控制類的實現 Struts2的應用開發中,Action作爲框架的核心類,實現對用戶請求的處理,Action類被稱爲業務邏輯控制器。一個Action類代表一次請求或調用,每個請求的動作都對應於一個相應的A

原创 循環隊列

爲了避免數組刪除時候需要移動數據,引入了循環隊列,解決了刪除時候需要消耗大量時間的弊端,使得本來刪除時的時間複雜度爲O(n)(因爲要移動數據)變成了O(1)。 這裏的循環隊列用數組來實現,以下是幾個約定或者說是公式: 1、隊列的

原创 樹的概念總結;樹的存儲結構;樹、二叉樹、森林的相互轉換

樹的相關概念 1、結點分爲:根結點(無雙親、有孩子)、內部結點(有雙親、有孩子)、葉結點(有雙親、無孩子) 2、結點與結點的關係:孩子、雙親、祖先、兄弟、堂兄弟 3、結點的度:結點的度是結點的孩子個數 4、樹的度是各結點度數的最

原创 Action處理請求參數(屬性驅動與模型驅動)

在Struts2中,頁面(指的是瀏覽器,不過在實際的開發中,不管是瀏覽器端還是手機端,前後端數據的交互都是用json)的請求蘇劇和Action有兩種基本的對應方式,分別是字段驅動方式(屬性驅動)和模型驅動方式。 1、屬性驅動 屬性

原创 自己實現順序表和單鏈表以及他們的對比

線性表包括:順序表和單鏈表;順序表是一串連着的內存空間,因此用數組來實現;單鏈表是分散的內存空間塊,用對象來實現,一個結點是一個對象,對象裏面有兩個域,一個是data域,一個是nextNode域。 由於順序表和單鏈表都涉及到迭代器

原创 一個關於SQL注入的簡單例子

什麼是SQL注入? SQL注入是利用某些數據庫的外部接口將用戶數據插入到數據庫的操作語言中,從而達到入侵數據庫乃至操作系統的目的。 數據庫有一張user表;表定義如下: CREATE TABLE `user` ( `id