一個朋友的項目裡用到了fusionchart,同時需要提供多個報表的word下載功能。 毫無疑問,只是一個很棘手的問題。 fusionchart提供了服務端和用戶端產生圖片的功能,都是基於client端展示了flash以後做的。 朋友的項目是基於linux的,office本身的那套com機制是沒辦法通過jacob調用了。 純java的操作word,POI和docx4j,可以產生word文檔,table,插入圖片。
java註解是附加在代碼中的一些元資訊,用於一些工具在編譯、運行時進行解析和使用,起到說明、配置的功能。 註解不會也不能影響代碼的實際邏輯,僅僅起到輔助性的作用。包含在 java.lang.annotation 包中。 1、元註解 元註解是指註解的註解。包括 @Retention @Target @Document @Inherited四種。 1.1、@Retention: 定義註解的保留原則 Java代碼 複製代碼 代碼如下:
利用Java複製檔案到處都可以用到,這裡總結了一個類供大家參考。裡面總共有兩個方法: public static boolean copyFile(String srcFileName, String destFileName,boolean overlay); public static boolean copyDirectory(String srcDirName, String destDirName,boolean overlay) ; 其中: srcFileName 待覆制的檔案名稱
1. 建立自己的bean檔案:beans.xml<?xml version="1.0" encoding="UTF-8"?><busi-beans><beans><bean id="SysHelloImpl"
Java語言的關鍵字,當它用來修飾一個方法或者一個代碼塊的時候,能夠保證在同一時刻最多隻有一個線程執行該段代碼。一、當兩個並發線程訪問同一個對象object中的這個synchronized(this)同步代碼塊時,一個時間內只能有一個線程得到執行。另一個線程必須等待當前線程執行完這個代碼塊以後才能執行該代碼塊。二、然而,當一個線程訪問object的一個synchronized(this)同步代碼塊時,另一個線程仍然可以訪問該object中的非synchronized(this)同步代碼塊。&nb
複製代碼 代碼如下: package com.zxd.test; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import
可以協助識別和解決應用程式缺陷,在本文中,作者將使用大家常用的的開發工具Eclipse來調試Java應用程式。但這裡介紹的調試方法基本都是通用的,也適用於NetBeans IDE,我們會把重點放在運行時上面。在開始之前,推薦大家去看看Eclipse shortcuts這篇文章,它將會給你帶來很多方便。在本文中使用的是Eclipse Juno版(Eclipse 4.2),在開始前給大家提3點建議!不要使用System.out.println作為調試工具 把所有涉及到的組件記錄層級啟用並使用
N皇后問題是一個典型的約束求解問題,利用遞迴機制,可以很快的得到結果。 N皇后問題的描述: 在一個n*n的棋盤上,擺放n個皇后,要求每個皇后所在行、列、以及兩個對角線上不能出現其他的皇后,否則這些皇后之間將會相互攻擊。如下圖所示。 利用遞迴機制,可以很容易的求解n皇后問題。針對八皇后,總共有92種解。下面將給出N-皇后問題的一般求解代碼,在這裡代碼是使用java編碼的。 總共設計了三個類,一個是皇后類(Queen),一個棋盤類(Board),一個是求解主程式類(NQueens)。具體代碼如下:
對於JAVA的Pattern類 和 Matcher類可參考網址 http://www.ibm.com/developerworks/cn/java/l-regp/part2/Regex中的特殊字元: \\ 反斜線 \t 間隔 ('\u0009') \n 換行 ('\u000A') \r 斷行符號 ('\u000D') \d 數字等價於[0-9] \D 非數字等價於[^0-9] \s 空白符號
velocity使用1.7版本。 在win7下使用intelliJ IDEA建立一基於tomcat的web app項目,命名為todo_web,設定path為/todo,匯入velocity相關jar包。只匯入velocity-1.7.jar這個包可能會報錯,根據提示再匯入velocity內建的其他包。 項目結構如下:測試Tomcatindex.jsp內容如下:複製代碼 代碼如下:<%-- Created by IntelliJ IDEA. --%><%@ page
記憶體對應檔原理首先說說這篇文章要解決什麼問題? 1.虛擬記憶體與記憶體對應檔的區別與聯絡. 2.記憶體對應檔的原理. 3.記憶體對應檔的效率. 4.傳統IO和記憶體映射效率對比.虛擬記憶體與記憶體對應檔的區別與聯絡 二者的聯絡虛擬記憶體和記憶體對應檔都是將一部分內容載入到,另一部分放在磁碟上的一種機制,二者都是應用程式動態性的基礎,由於二者的虛擬性,對於使用者都是透明的.
圖片上傳和檔案上傳本質上是一樣的,圖片本身也是檔案。檔案上傳就是將圖片上傳到伺服器,方式雖然有很多,但底層的實現都是檔案的讀寫操作。注意事項1.form表單一定要寫屬性enctype="multipart/form-data"2.為了能保證檔案能上傳成功file控制項的name屬性值要和你提交的控制層變數名一致,例如空間名是file那麼你要在後台這樣定義private File file; //file控制項名private String
之前的項目中,在Socket通訊的時候需要傳int類型的值,不過java中outputsteam貌似不能直接傳int類型,只能傳byte[],所以在這裡記錄一下int和byte[]互轉的方法。/** * int轉byte[] */ public static byte[] intToBytes(int i) { byte[] bytes = new byte[4]; bytes[0] = (byte) (i & 0xff); bytes[1] = (byte) ((i >> 8) &
前言:最近公司進行中業務組件化進程,其中的路由實現用到了Java的反射機制,既然用到了就想著好好學習總結一下,其實無論是之前的EventBus 2.x版本還是Retrofit、早期的View註解架構都或多或少的用到Java的反射機制。什麼是Java反射機制?JAVA反射機制是在運行狀態中,對於任意一個類,都能夠知道這個類的所有屬性和方法;對於任意一個對象,都能夠調用它的任意一個方法;這種動態擷取的以及動態調用對象的方法的功能稱為Java的反射機制。反射機制提供了哪些功能?
複製代碼 代碼如下:import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class HelloWorld { public static void main(String[] args) { //指定時間輸出格式
HashMap也是我們使用非常多的Collection,它是基於雜湊表的 Map 介面的實現,以key-value的形式存在。在HashMap中,key-value總是會當做一個整體來處理,系統會根據hash演算法來來計算key-value的儲存位置,我們總是可以通過key快速地存、取value。下面就來分析HashMap的存取。一、定義HashMap實現了Map介面,繼承AbstractMap。其中Map介面定義了鍵映射到值的規則,而AbstractMap類提供 Map
java中函數的參數傳遞總結: 1.將對象(對象的引用)作為參數傳遞時傳遞的是引用(相當於指標)。也就是說函數內對參數所做的修改會影響原來的對象。 2.當將基本類型或基本類型的封裝集作為參數傳遞時,傳遞的是值。也就是說函數內對參數所做的修改不會影響原來的變數。 3.數組(數組引用))作為參數傳遞時傳遞的是引用(相當於指標)。也就是說函數內對參數所做的修改會影響原來的數組。
用Dockerfile 構建一個java的編譯環境,這裡整理下實現步驟:1、包括以下軟體包 ubuntu jdk maven svn 2、jdk、maven 需要手動下載,下載之後分別為jdk-8u51-linux-x64.gzapache-maven-3.3.3-bin.tar.gz3、建立一個Dockerfile檔案,包含以下內容FROM ubuntuRUN apt-get updateRUN apt-get -y install subversionADD
Java開發人員對於物件導向編程思維與命令列編程思維的協調程度,取決於他們如下幾種能力的水平:技巧(任何人都可以編寫命令列形式的代碼)教條(有的人使用“模式 -
java jvm