Time of Update: 2018-12-04
該類為cache4j緩衝架構中的工具類方法,該方法實現了兩個介面介面1:計算對象在記憶體中所佔位元組數介面2:複製對象,實現深度複製效果,實現原理為先序列化對象,然後在還原序列化對象;返回一個新的對象,達到複製效果 package net.sf.cache4j.impl;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import
Time of Update: 2018-12-04
Java 編碼問題總結一、實踐原則 1、分頁檔的儲存格式做到與聲明一致 如聲明<%@ page language="java" pageEncoding="utf-8"%>,則該檔案儲存為utf-8格式 2、無論是Get、Post還是JavaScript直接調用,瀏覽器以分頁檔指定的編碼格式提交請求 3、JavaScript的方法如encodeURI、encodeURIComponent等使用utf-8格式編碼資料二、Http協議和Servlet規範
Time of Update: 2018-12-04
轉自:http://polaris.blog.51cto.com/1146394/273614一、java反射機制 JAVA反射機制是在運行狀態中,對於任意一個類,都能夠得到這個類的所有屬性和方法;對於任意一個對象,都能夠調用它的任意一個方法;這種動態擷取的資訊以及動態調用對象的方法的功能稱為java語言的反射機制。 用一句比較白的話來概括,反射就是讓你可以通過名稱來得到對象 ( 類,屬性,方法 )
Time of Update: 2018-12-04
引子 最近有經常看到類似的文章和留言我是初學者,我應該怎麼學Java啊?我想學習JSP做Web開發,我該從哪裡入手呢?也許是許多人要步入社會,才想起來要學點東西吧。此類問題我一般歸類於【百年問題】,也就是基本無法回答的問題,或者無法準確回答的問題。不過問的人太多了,我想用學踢足球對比一下,看看他們的相似性。如何踢好足球呢?我從整體上大致總結歸納一下個人觀點1 好的身體素質、意識和毅力 2 常看別人怎麼踢 3 看看一些專業書籍或者培訓資料,比如如何發角球等,並參加一些訓練隊 4 找一個好教練
Time of Update: 2018-12-04
要處理一個平文本資料匯入功能,因為未經處理資料有問題,部分欄位有亂碼和特殊字元,導致匯出的資料在以文本形式查看時,裡面的分隔字元 /t 也就是Tab被弄錯了,與前面的特殊字元組合成了一個亂碼,導致最終資料使用 split("/t") 失敗。這裡使用位元組流的方式,從最底層進行資料的抽取,以位元組的 0x9; 作為欄位分隔符號,以 /r 和 /n 作為換行。完整代碼如下:部分思路可以作為 BufferedReader + split 的替代品。[code=Java]package
Time of Update: 2018-12-04
死結的概念就是:當你去買東西的時候,店小二說給錢給貨,你說給貨給錢,你們僵住了,就死結了public class DeadLock {public static void main(String[] args) {Object o1 = new Object();Object o2 = new Object();Thread t1 = new T1(o1,o2);Thread t2 = new T2(o1,o2);t1.start();t2.start();}}class T1 extends
Time of Update: 2018-12-04
今天遍曆一個ArrayList去尋找某項是否存在,如果存在的話就從列表中刪除,方法如下:for(Person p : persons){ if(p.getName().equals(name)) persons.remove(p); } for(Person p : persons){ if(p.getName().equals(name)) persons.remove(p);
Time of Update: 2018-12-04
1. 獲得log4j.jar下載log4j.zip的地址: http://labs.mop.com/apache-mirror/logging/log4j/1.2.17/log4j-1.2.17.zip 解壓log4j.zip,獲得 log4j-1.2.17.jar2. 在Eclipse中依賴log4j-1.2.17.jar右擊項目--Build Path-- Configure Build Path--Libraries -- Add External JARs..--選中log4j-1.2.
Time of Update: 2018-12-04
綜合樣本,示範有限長度字元序列緩衝區的並發讀寫, 或者稱 生產者 - 消費者問題。錯漏之處, 懇請指出 ^_^ /** * PCProblem : * 類比生產者-消費者問題, 生產者產生字元並寫入字元序列緩衝區, 消費者從緩衝區取走字元 * * @author shuqin1984 2011-08-05 * */package threadprogramming.basic.simulation;import
Time of Update: 2018-12-04
六、測試代碼: Employ: package sample;public class Employ {public static final double BONUS = 1000;private String eduInfo;private String resume;private String annualExam;private String awardPunish;private double basicSalary;private double
Time of Update: 2018-12-04
我們將通過以下步驟來學習:輸入映像,指定要處理的映像路徑 允許使用者拖放要剪裁的部分 選擇後使用 Robot 類來確定剪裁部分的座標 剪裁所選映像並保持 代碼由兩個檔案組成,一個是ImagePanel.java,另外一個檔案是CopyImage.java。下面是代碼實現:ImagePanel.java檔案如下package com.application.sample;import java.awt.Dimension; import java.awt.Graphics; import
Time of Update: 2018-12-04
這兩天在看演算法導論中的最優二叉尋找樹,關於最優二叉尋找樹的動態規劃實現原理大家可以參考演算法導論第15章第5小節。我把自己用Java語言實現的最優二叉尋找樹貼出來供大家參考一下。package homework.part5.work1;import java.util.Scanner;public class OptimalBST {private double[] p;private double[] q;private int n;private double[][] e;private
Time of Update: 2018-12-04
有兩個途徑可以實現線程池,一個途徑是自己實現,另一個途徑是使用系統內建的ExecutorService類來實現。一、首先是自己來實現,主要的知識點是線程的喚醒和休眠,直接上代碼:先定義一個抽象任務,包含Run方法,具體的任務執行必須繼承該類。public abstract class TaskRunnable {public abstract void run();}以下是線程池管理的主要核心ThreadManager:public class ThreadPoolManager {
Time of Update: 2018-12-04
1、為什麼需要多線程?充分利用多核CPU的能力單線程阻塞,這個線程將做不了任何事情,無響應在事件驅動模型下,需要有多個線程同時服務2、為什麼需要並發?多線程存在資源的競爭問題,如I/O資源,共用變數等。在進程中,這些競爭都由OS處理,可是多線程程式需要程式員來控制,否則就得嘗試函數式編程,如Erlang。如果一個線程將一共用的資源置於不合理的狀態,另一個資源試圖訪問的時候,就會出現問題。3、僅用互同步來解決資源競爭問題可行嘛?不行又如何解決這個問題?所謂同步,就是對資源的串列訪問。可以通過:原子
Time of Update: 2018-12-04
目前JAVA實現動態代理主要有兩種方式a. 通過java.lang.reflect包中相關類,實現動態代理b. 通過開源架構CGLIB實現,該架構實現起來更加靈活cglib(Code Generation
Time of Update: 2018-12-04
該類為spring的啟動監聽器,必須在web.xml進行配置改監聽器,預設載入WEB-INF/applicationContext1.xml設定檔,當然可以通過配置制定設定檔名稱,例如WEB-INF/*Context.xml,WEB-INF/spring*.xml" or
Time of Update: 2018-12-04
轉載:http://hi.baidu.com/sosyq_bd/blog/item/c42d8330b8db7557ad4b5f94.htmljava中String的編碼格式為unicode,如果要將中文插入mysql,則表中字元列的編碼屬性應該設為utf-8.create table seugs( number int(11) default NULL, name nchar(10) default NULL, sex nchar(4) default NULL, home
Time of Update: 2018-12-04
位元組碼助記符的首碼類型 代碼 樣本描述byte b baload 從數組裝載 byte 類型short s sastore 將 short 類型存入數組中int i iload_1從局部變數 1 中裝載 int 類型long l lcmp 比較 long 類型值char c i2c 把 int 類型資料轉換為 char 類型float f fload 從局部變數中裝載 float 類型double d dconst_1 將 double 類型常量 1.0 壓入棧reference a
Time of Update: 2018-12-04
Java EE叢集技術初探 第一部分(對一些術語的解釋) 越來越多的任務關鍵型與大規模應用運行在Java EE技術上。有的應用例如銀行的或者是記費系統需要越來越高的高可用性(HA),另外一些應用比如像Google或者是Yahoo則需要越來越好的可擴充性。eBay在99年的22小時宕機,造成230萬筆交易的中斷,影響其股價下跌9.2%。這個樣本充分證明了高可用性和可擴充性在今天變得越來越重要。 Java EE的叢集技術是為了提供高可用和有容錯能力的可擴充服務。但是由於Java
Time of Update: 2018-12-04
jvm classLoader architecture :a, Bootstrap ClassLoader/啟動類載入器主要負責jdk_home/lib目錄下的核心 api 或 -Xbootclasspath 選項指定的jar封裝入工作.b, Extension ClassLoader/擴充類載入器主要負責jdk_home/lib/ext目錄下的jar包或 -Djava.ext.dirs 指定目錄下的jar封裝入工作c, System ClassLoader/系統類別載入器主要負責java -