Time of Update: 2018-12-03
概述:Apache:全球應用最廣泛的http伺服器,免費,出自apache基金組織 Tomcat:應用也算非常廣泛的web伺服器,支援部分j2ee,免費,出自apache基金組織 JBoss:開源的應用伺服器,比較受人喜愛,免費(文檔要收費) Weblogic:應該說算是業界第一的app server,全部支援j2ee1.4,
Time of Update: 2018-12-03
1. MySql查詢 mysql> SELECT * FROM table LIMIT 20,10; // 檢索記錄行 21-30 //為了檢索從某一個位移量到記錄集的結束所有的記錄行,可以指定第二個參數為 -1: mysql> SELECT * FROM table LIMIT 95,-1; // 檢索記錄行 96-last. //如果只給定一個參數,它表示返回最大的記錄行數目: mysql> SELECT * FROM table
Time of Update: 2018-12-03
最近這三個模式有點搞混了,而且網上也有類似情況。總結一下。簡單工廠:嚴格說並不是一個設計模式。簡單工廠沒有抽象類別,只有一個具體工廠類如MyFactory,然後MyFactory裡面有個Factory 方法CreateProduct返回一個基類產品,具體返回什麼具體執行個體通過傳入參數然後用case判斷。用手機生產做個例子:比如Nokia簡單工廠就是只有NokiaFactory工廠類,Factory
Time of Update: 2018-12-03
一、Struts的體繫結構,Struts 是MVC的一種實現,其體繫結構包括模型、視圖和控制器三部分。 下面讓我們從MVC的角度來看看struts的體繫結構與工作原理: 1. Model部分 Struts 的Model部分由 ActionFormBean和JavaBean組成。其中ActionForm用於封裝使用者請求參數,所有的使用者請求參數由系統自動封裝成ActionForm對象。該對象被ActionServlet轉寄給Action;然後
Time of Update: 2018-12-03
1.PreparedStatement是先行編譯的,對於批量處理可以大大提高效率. 也叫JDBC預存程序2.使用 Statement 對象。在對資料庫只執行一次性存取的時侯,用 Statement 對象進行處理。PreparedStatement 對象的開銷比Statement大,對於一次性操作並不會帶來額外的好處。3.statement每次執行sql語句,相關資料庫都要執行sql語句的編譯,preparedstatement是先行編譯得, preparedstatement支援批處理4.
Time of Update: 2018-12-03
可以從不同的的角度去劃分記憶體回收演算法:按照基本回收策略分引用計數(Reference Counting):比較古老的回收演算法。原理是此對象有一個引用,即增加一個計數,刪除一個引用則減少一個計數。記憶體回收時,只用收集計數為0的對象。此演算法最致命的是無法處理循環參考的問題。 標記-清除(Mark-Sweep):此演算法執行分兩階段。第一階段從引用根節點開始標記所有被引用的對象,第二階段遍曆整個堆,把未標記的對象清除。此演算法需要暫停整個應用,同時,會產生記憶體片段。 複製(Copying)
Time of Update: 2018-12-03
1. 1<>1 的用處:用於只取結構不取資料的場合例如:create table table_temp tablespace tbs_temp asselect * from table_ori where 1<>1 建成一個與table_ori 結構相同的表table_temp,但是不要table_ori 裡的資料。(除了表結構,其它結構也同理)2.1=1用於動態SQL例如:lv_string = 'select tbl_name,tbl_desc from
Time of Update: 2018-12-03
How time flies! I have graduated more than 3 years now and been working in Shanghai about 2 years. Actually I come from Shandong Province and graduated from Shandong University of Science and Technology during the 2009. After
Time of Update: 2018-12-03
由於Jsp2.0向後相容的特性, 當遇到使用Jsp 1.2(Servlet v2.3)的網站時會預設的禁用JSP2.0 EL,所以導致c:out不能正確輸出。(這裡注意Jsp 1.2禁用JSP2.0的EL,而是去使用JSTL 1.0 taglib去解析EL。所以使用JSP 1.2+JSTL 1.0不會出問題,而使用了JSP 1.2+JSTL
Time of Update: 2018-12-03
一.ThreadLocal的用法ThreadLocal的實現:package com.sodao.lucene; import java.util.Random; public class ThreadLocalTest implements Runnable{ ThreadLocal<Studen> studenThreadLocal = new ThreadLocal<Studen>(); @Override public
Time of Update: 2018-12-03
一.非Ioc方式這種方式主要是利用了com.opensymphony.xwork2.ActionContext類以及org.apache.struts2.ServletActionContext類,具體的方法如下所示。獲得request對象:1).HttpServletRequest request = ServletActionContext.getRequest ();2).ActionContext ct= ActionContext.getContext();
Time of Update: 2018-12-03
一:遍曆HashMap的兩種方法:1、使用EntrySet遍曆HashMap Map map = new HashMap();for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val =
Time of Update: 2018-12-03
HashTable的應用非常廣泛,HashMap是新架構中用來代替HashTable的類,也就是說建議使用HashMap,不要使用HashTable。可能你覺得HashTable很好用,為什麼不用呢?這裡簡單分析他們的區別。一:HashMap與HashTable的區別 1.HashTable的方法是同步的,在方法的前面都有synchronized來同步,HashMap未經同步,所以在多線程場合要手動同步 HashMap這個區別就像Vector和ArrayList一樣。 可以通過Map m =
Time of Update: 2018-12-03
1、==操作符專門用來比較變數的值是否相等。比較好理解的一點是:int a=10;int b=10;則a==b將是true。但不好理解的地方是:String a=new String("foo");String b=new String("foo");則a==b將返回false。對象變數其實是一個引用,它們的值是指向對象所在的記憶體位址,而不是對象本身。a和b都使用了new操作符,意味著將在記憶體中產生兩個內容為"foo"的字符串,既然是“兩個”,它們自然位於不同的記憶體位址。a和b的值其實是兩
Time of Update: 2018-12-03
他們的相同點都是繼承了AbstractStringBuilder類,所有方法基本相同,但是StringBuffer是安全執行緒的,方法前有synchronized關鍵字。他們的初始化大小都是16,擴容機制是新容量=(舊容量+1)×2public StringBuilder() {super(16); }public StringBuffer() {super(16); }void expandCapacity(int minimumCapacity) {int
Time of Update: 2018-12-03
1. Struts2架構圖請求首先通過Filter chain,Filter主要包括ActionContextCleanUp,它主要清理當前線程的ActionContext和Dispatcher;FilterDispatcher主要通過AcionMapper來決定需要調用哪個Action。
Time of Update: 2018-12-03
Throwable是所有Java程式中錯誤處理的父類,有兩種資類:Error和Exception。 Error:表示由JVM所偵測到的無法預期的錯誤,由於這是屬於JVM層次的嚴重錯誤,導致JVM無法繼續執行,因此,這是不可捕捉到的,無法採取任何恢複的操作,頂多隻能顯示錯誤資訊。Exception:表示可恢複的例外,這是可捕捉到的。Java提供了兩類主要的異常:runtime exception和checked exception。checked
Time of Update: 2018-12-03
1. 關於hibernate緩衝的問題: 1.1. 基本的緩衝原理Hibernate緩衝分為二級,第一級存放於session中稱為一級緩衝,預設帶有且不能卸載。第二級是由sessionFactory控制的進程級緩衝。是全域共用的緩衝,凡是會調用二級緩衝的查詢方法
Time of Update: 2018-12-03
1. struts2分發的請求處理過程:1.1. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter()方法中:1.1.1. 設定編碼和本地化資訊1.1.2. 建立ActionContext對象1.1.3. 分配當前線程的分發器1.1.4. 將request對象進行封裝1.1.5. 擷取ActionMapping對象, ActionMapping對象對應一個action詳細配置資訊1.1.6
Time of Update: 2018-12-03
HibernateHibernate 是一個開放原始碼的對象關係映射架構,它對JDBC進行了非常輕量級的對象封裝,使得Java程式員可以隨心所欲的使用對象編程思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的用戶端程式使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP【CMP(Container-Managed Persistence)表示由 EJB 容器來管理實體