<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

    【開源技術】

    開源技術文章
         摘要: 前言

    模板消息僅用于公眾號向用戶發送重要的服務通知,只能用于符合其要求的服務場景中,如信用卡刷卡通知,商品購買成功通知等。不支持廣告等營銷類消息以及其它所有可能對用戶造成騷擾的消息。具體模板消息運營規則請讀 模板消息運營規范

    關于使用規則,請注意:

    1、所有服務號都可以在功能->添加功能插件處看到申請模板消息功能的入口,但只有認證后的服務號才可以申請模板消息的使用權限并獲得該權限;
    2、需要選擇公眾賬號服務所處的2個行業,每月可更改1次所選行業;
    3、在所選擇行業的模板庫中選用已有的模板進行調用;
    4、每個賬號可以同時使用15個模板。
    5、當前每個賬號的模板消息的日調用上限為10萬次,單個模板沒有特殊限制。【2014年11月18日將接口調用頻率從默認的日1萬次提升為日10萬次,可在MP登錄后的開發者中心查看】。當賬號粉絲數超過10W/100W/1000W時,模板消息的日調用上限會相應提升,以公眾號MP后臺開發者中心頁面中標明的數字為準。
    關于接口文檔,請注意:

    1、模板消  閱讀全文
    posted @ 2016-09-23 17:12 rogerfan 閱讀(421) | 評論 (0)  編輯

         摘要: 由于柳峰老師的新書還沒有出來,網上也沒有過多介紹基于Java語言的開發微信公眾平臺模板消息的例子,因此有了本文。由于個人表達能力和編程能力有限,請多多包涵。本文僅介紹擁有模板消息權限的微信公眾賬號開發。

    本文分為以下兩部分:

    1.開發模板消息SDK

    2.構造模板消息并發送

    首先看一下模板消息接口文檔:


    模版消息
    我的模板模板庫返回上一層模板庫 / 模板消息接口文檔
    為了保證用戶不受到騷擾,在開發者出現需要主動提醒、通知用戶時,才允許開發者在公眾平臺網站中模板消息庫中選擇模板,選擇后獲得模板ID,再根據模板ID向用戶主動推送提醒、通知消息。



    模板消息調用時主要需要模板ID和模板中各參數的賦值內容。請注意:

    1.模板中參數內容必須以".DATA"結尾,否則視為保留字;

    2.模板保留符號"{{ }}"

      閱讀全文
    posted @ 2016-09-23 17:02 rogerfan 閱讀(921) | 評論 (0)  編輯

         摘要: 注意:以下相關軟件是以2015-03-23日能找到的最新的版本為基礎提供的教程


    一、下載并安裝memcached服務器端軟件

    這個就好比mysql數據庫,必須安裝mysql服務器端軟件。

    1、下載服務端memcached軟件

    32bit:下載 memcached-win32-1.4.4-14.zip(直接下)里面包含6個文件,將解壓后的文件夾隨便放在什么位置(例如:D:\wamp_win7\bin\memcached-win32-1.4.4-14,我本地使用wamp搭建的服務器)。
    memcached-win32-1.4.4-14.zip下載頁面:http://blog.couchbase.com/memcached-144-windows-32-bit-binary-now-available

      閱讀全文
    posted @ 2016-09-21 15:21 rogerfan 閱讀(479) | 評論 (0)  編輯

         摘要: 首先,我們明確目標,做Tomcat集群的目的是為了提供更高的負載能力,把訪問均攤到不同的服務器上。

    直觀地來說,就是訪問test.localhost.com時,nignx會隨機將訪問請求分發到tomcat1,tomcat2,為了保持session同步,使用memcached去管理session。

    為此我們準備的配置清單是: windows x 1 nginx x 1 memcached x 1 tomcat x 2 mysql x 1  閱讀全文
    posted @ 2016-09-19 09:53 rogerfan 閱讀(386) | 評論 (0)  編輯

         摘要: 注:以下批處理是針對tomcat安裝版,或者在windows服務中有tomcat服務的解決方案。

    定時重啟TOMCAT批處理命令:
    @echo off
    net stop tomcat6
    ping 127.0.0.1 -n 20
    net start tomcat6

    (注:這里的tomcat6根據tomcat在安裝時的服務名確定,如tomcat6.0的服務名為tomcat6,這個名字你可以先啟動服務器,之后在任務管理器的進程窗口里查看)

    如果要在重啟tomcat時候,再刪除work下的文件和logs目錄下的log文件,批處理命令:  閱讀全文
    posted @ 2016-09-19 09:36 rogerfan 閱讀(501) | 評論 (0)  編輯

         摘要: CDN是什么?


    談到CDN的作用,可以用8年買火車票的經歷來形象比喻:


    8年前,還沒有火車票代售點一說,12306.cn更是無從說起。那時候火車票還只能在火車站的售票大廳購買,而我所住的小縣城并不通火車,火車票都要去市里的火車站購買,而從縣城到市里,來回就是4個小時車程,簡直就是浪費生命。后來就好了,小縣城里出現了火車票代售點,可以直接在代售點購買火車,方便了不少,全市人民再也不用在一個點苦逼的排隊買票了。


    CDN就可以理解為分布在每個縣城的火車票代售點,用戶在瀏覽網站的時候,CDN會選擇一個離用戶最近的CDN邊緣節點來響應用戶的請求,這樣海南移動用戶的請求就不會千里迢迢跑到北京電信機房的服務器(假設源站部署在北京電信機房)上了。

    CDN的優勢很明顯:(1)CDN節點解決了跨運營商和跨地域訪問的問題,訪問延時大大降低;(2)大部分請求在CDN邊緣節點完成,CDN起到了分流作用,減輕了源站的負載。
      閱讀全文
    posted @ 2016-07-07 14:45 rogerfan 閱讀(1536) | 評論 (0)  編輯

         摘要: 1. CAS 簡介
    1.1. What is CAS ?
    CAS ( Central Authentication Service ) 是 Yale 大學發起的一個企業級的、開源的項目,旨在為 Web 應用系統提供一種可靠的單點登錄解決方法(屬于 Web SSO )。

    CAS 開始于 2001 年, 并在 2004 年 12 月正式成為 JA-SIG 的一個項目。

    1.2. 主要特性
    1、 開源的、多協議的 SSO 解決方案; Protocols : Custom Protocol 、 CAS 、 OAuth 、 OpenID 、 RESTful API 、 SAML1.1 、 SAML2.0 等。

    2、 支持多種認證機制: Active Directory 、 JAAS 、 JDBC 、 LDAP 、 X.509 Certificates 等;

    3、 安全策略:使用票據( Ticket )來實現支持的認證協議;

    4、 支持授權:可以決定哪些服  閱讀全文
    posted @ 2016-06-08 10:04 rogerfan 閱讀(390) | 評論 (0)  編輯

         摘要: 一、概述

    單點登錄(Single Sign On , 簡稱 SSO )是目前比較流行的服務于企業業務整合的解決方案之一, SSO 使得在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。CAS(Central Authentication Service)是一款不錯的針對 Web 應用的單點登錄框架,本文介紹了 CAS 的原理、協議、在 Tomcat 中的配置和使用,對于采用 CAS 實現輕量級單點登錄解決方案的入門讀者具有一定指導作用。



    二、CAS介紹

    CAS 是 Yale 大學發起的一個開源項目,旨在為 Web 應用系統提供一種可靠的單點登錄方法,CAS 在 2004 年 12 月正式成為 JA-SIG 的一個項目(http://www.jasig.org)。CAS 具有以下特點:

    1)開源的企業級單點登錄解決方案

    2)CAS Server 為需要獨立部署的 Web 應用

    3)CAS Client 支持非常多的客戶端(指Web 應用),  閱讀全文
    posted @ 2016-06-08 10:03 rogerfan 閱讀(440) | 評論 (0)  編輯

    posted @ 2016-04-22 18:01 rogerfan 閱讀(551) | 評論 (0)  編輯

    posted @ 2016-04-22 18:00 rogerfan 閱讀(794) | 評論 (0)  編輯

    posted @ 2016-04-22 17:58 rogerfan 閱讀(596) | 評論 (0)  編輯

         摘要: 本文記錄nginx+redis+tomcat實現session共享的過程

    nginx安裝:http://www.tkk7.com/fanyingjie/archive/2016/04/22/430204.html

    redis安裝:http://www.tkk7.com/fanyingjie/archive/2016/04/22/430203.html

    準備兩個tomcat,修改相應的端口




    名稱 IP 端口 tomcat版本 JDK
    tomcat1 10.10.49.23 8080 7.0.40 1.7.0_25
    tomcat2 10.10.49.15 8081 7.0.40 1.7.0_25
      閱讀全文
    posted @ 2016-04-22 17:15 rogerfan 閱讀(420) | 評論 (0)  編輯

         摘要: 1,安裝redis并配置和啟動, tomcat也做相就的下載,其他地方都有,可以在其他地方查閱。
    2, 獲取tomcat依賴包:
    Tomcat使用 從https://github.com/xetorthio/jedis/downloads下載jedis作為java的redis客戶端,
    從https://github.com/jcoleman/tomcat-redis-session-manager/downloads下載tomcat的redis session manager插件
    從http://commons.apache.org/proper/commons-pool/download_pool.cgi下載apache的common pool2包,2.2,將這幾個jar包拷貝到tomcat7的lib目錄下
    包有: redis2.8、jedis.jar、common-pool2.2.jar、tomcat-redis-session-manager-1.  閱讀全文
    posted @ 2016-04-22 17:14 rogerfan 閱讀(406) | 評論 (0)  編輯

    posted @ 2016-04-22 17:11 rogerfan 閱讀(313) | 評論 (0)  編輯

         摘要: 1.下載redis-3.0.3;
    2.tar -zxvf redis-3.0.3.tar.gz
    3.make
    這里可能會報錯,tclsh8.5: not found 發現少了tcl 報錯
    解決方法:下載,安裝tcl
    #wget http://downloads.sourceforge.net/tcl/tcl8.5.9-src.tar.gz

    #cd /tcl8.5.9-src/unix

    #./configure

    #make

    #make install

    接著make ,make test 就沒報錯了
    接著進入redis目錄下的src目錄
    src目錄下這些文件作用如下
    redis-server:Redis服務器的daemon啟動程序
      閱讀全文
    posted @ 2016-04-22 17:10 rogerfan 閱讀(334) | 評論 (0)  編輯

         摘要: 1、redis簡介
    redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hashs(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎上實現了master-slave(主從)同步。

    Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部分場合可以對關系數據庫起到很好的補充作用。它提供了Python,Ruby,Erlang,PHP客戶端,使用很方便。
      閱讀全文
    posted @ 2016-04-22 16:45 rogerfan 閱讀(241) | 評論 (0)  編輯

         摘要: 1、技術目標


    了解并創建Security框架所需數據表
    為項目添加Spring Security框架
    掌握Security框架配置
    應用Security框架為項目的CRUD操作綁定權限


    注意:本文所用項目為"影片管理",參看
    http://hotstrong.iteye.com/blog/1156785

    2、權限管理需求描述

    為系統中的每個操作定義權限,如定義4個權限:
    1)超級權限,可以使用所有操作
    2)添加影片權限
    3)修改影片權限
    4)刪除影片權限
    為系統設置管理員帳號、密碼
    為系統創建權限組,每個權限組可以配置多個操作權限,如創建2個權限組:
    1)"Administrator"權限組,具有超級權限
    2)"影片維護"權限組,具有添加影片、修改影片權限
    可將管理員加入權限組,管理員登錄后具備權限組所對應操作權限
    管理員可不屬于某權限組,可為管理員直接分配權限  閱讀全文
    posted @ 2016-03-28 14:01 rogerfan 閱讀(465) | 評論 (0)  編輯

         摘要: 一:Git是什么?

      Git是目前世界上最先進的分布式版本控制系統。

      二:SVN與Git的最主要的區別?

      SVN是集中式版本控制系統,版本庫是集中放在中央服務器的,而干活的時候,用的都是自己的電腦,所以首先要從中央服務器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服務器。集中式版本控制系統是必須聯網才能工作,如果在局域網還可以,帶寬夠大,速度夠快,如果在互聯網下,如果網速慢的話,就納悶了。

      Git是分布式版本控制系統,那么它就沒有中央服務器的,每個人的電腦就是一個完整的版本庫,這樣,工作的時候就不需要聯網了,因為版本都是在自己的電腦上。既然每個人的電腦都有一個完整的版本庫,那多個人如何協作呢?比如說自己在電腦上改了文件A,其他人也在電腦上改了文件A,這時,你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。  閱讀全文
    posted @ 2016-03-25 10:18 rogerfan 閱讀(265) | 評論 (0)  編輯

         摘要: 以前寫了一篇《Myeclipse 2015 stable 1.0 完美破解方法》,現在跟新一下Myeclipse 2015 stable 2.0 破解方法,此方法來源于貼吧的一篇文章:http://tieba.baidu.com/p/3809637196?pn=1 ;在此先感謝一下作者的付出。下面是我在MAC下破解的圖文過程(Linux和windows其實大同小異)。破解方法和我寫得《Myeclipse 2015 stable 1.0 完美破解方法》基本一樣。這里我用作者的思路:[單擊圖片可查看高清圖片,灰色可先忽略當出問題時回過頭來在看]

    破解包地址: http://pan.baidu.com/s/1c0x0yqs 密碼: natw
    (myeclipse軟件需要從上面網盤鏈接里下載,近期官網出來的新版本用此破解包不前無法破解)
    注冊機我拿源碼改了一下,屏蔽了ReplaceJarFile,大家破解就手動吧(主要是替換Jar包那里我懶得改了,也沒那個時間)
    *注意算號器的作者不是本人,我只是修改了一下,順便膜拜下作者(別問我作者是誰,我不記得了,  閱讀全文
    posted @ 2016-03-03 15:21 rogerfan 閱讀(845) | 評論 (0)  編輯

         摘要: MyEclipse 2015優化速度方案仍然主要有這么幾個方面:去除無需加載的模塊、取消冗余的配置、去除不必要的檢查、關閉更新。

    >MyEclipse 2015下載<

    第一步: 去除不需要加載的模塊

    一個系統20%的功能往往能夠滿足80%的需求,MyEclipse也不例外,我們在大多數時候只需要20%的系統功能,所以可以將一些不使用的模塊禁止加載啟動。通過Windows- Preferences打開配置窗口,依次選擇左側的General--> Startup and Shutdown,這個時候在右側就顯示出了Eclipse啟動時加載的模塊,可以根據自己的實際情況去除一些模塊。  閱讀全文
    posted @ 2016-03-03 15:19 rogerfan 閱讀(248) | 評論 (0)  編輯

         摘要: 序言
    一直以來,報表都是很多項目中一個重要的、不可獲取的組成部分。然而其復雜性和專業性又使得程序員不能夠也沒時間自己設計屬于目前手頭正在構建的系統的報表模塊;即便設計來了又可能由于通用性等原因不能夠應用到下一個系統當中,這就導致了報表類庫/組件在市場上的火爆。典型的例子就是水晶報表,幾乎無處不在。還有一些專門處理中國式報表的組件也陸續出現在軟件市場上。然而遺憾的是,他們中的絕大多數都是要收費的--這也無可厚非,畢竟人都是要生存的。所以大多數預算不夠充裕的程序員都將目光轉向了開源軟件,而JasperReport就將是第一個進入他們視線中的佼佼者。
    然而代碼開源不代表我們就可以大大方方的拿來就用了,人家的文檔也是要收費的,所以市面上有關于JasperReport的文檔雖然也不少,但大多數都集中在簡單應用和介紹基本操作的基礎之上。對于復雜的報表設計并不能提供良好的幫助。本文將火力集中在相對復雜的報表設計(不包括圖片和超連接等對辦公系統或過程沒有太大用途的頁面元素),交叉表的生成等高級報表設計方案。對于那些基本的操作則留給讀者自行體會,相信可以為各位解決一些實際問題。
      閱讀全文
    posted @ 2013-08-29 10:50 rogerfan 閱讀(2309) | 評論 (0)  編輯

         摘要: 1.1 簡介
    JasperReport是報表的引擎部分,界面設計是用iReport。為什么選擇這兩個軟件呢?因為這兩個軟件都是開源的,即免費的(雖然某些文檔收費,但是磨滅不了我們使用它的理由)。

    JasperReport是一個報表制作程序,用戶按照它制定的規則編寫一個XML文件,然后得到用戶需要輸出的格式文件。它支持輸出的文件格式包括PDF,HTML,XML,XLS,CSV等等。

    用JasperReport做報表,可以分為兩種方式:

    1、 直接利用程序定義一個報表

    2、 寫一個xml文件來描述這個報表,通常需要借助于iReport

    JasperReport做報表時用的都是底層的東西,如線條、靜態文本等,底層的好處就是強大、容易控制報表,但缺點就是編寫很麻煩。慶幸的是,我們有iReport這個軟件,這個軟件完全是彌補JasperReport的不足,將底層編寫推向可視化,大大的方便了我們。

      閱讀全文
    posted @ 2013-08-29 10:46 rogerfan 閱讀(4107) | 評論 (0)  編輯

         摘要: 安裝:
    1. 從Oracle網站下載wls1035_oepe111172_win32.exe,約有1G大小。下載地址:http://www.oracle.com/technetwork/middleware/fusion-middleware/downloads/index.html?ssSourceSiteId=ocomen
      閱讀全文
    posted @ 2013-08-05 15:55 rogerfan 閱讀(2408) | 評論 (0)  編輯

         摘要: Tomcat內存設置方法
    windows中大家都知道,JAVA程序啟動時都會JVM都會分配一個初始內存和最大內存給這個應用程序。這個初始內存和最大內存在一定程度都會影響程序的性能。比如說在應用程序用到最大內存的時候,JVM是要先去做垃圾回收的動作,釋放被占用的一些內存。
    所以想調整Tomcat的啟動時初始內存和最大內存就需要向JVM聲明,一般的JAVA程序在運行都可以通過中-Xms -Xmx來調整應用程序的初始內存和最大內存:
    如:java -Xms64m -Xmx128m a.jar.
    tomcat的啟動程序是包裝過的,不能直接使用java -X..... tomcat.*來改變內存的設置。在Tomcat在改變這個設置
    有兩種方法:
    1. 適合用%tomcat_home%\bin中的startup.bat腳本啟動,需要在環境變量中加上CATALINA_OPTS這個屬性 。
    如 SET CATALINA_OPTS= -Xms64m -Xmx512m;
    ms是最小的,mx是  閱讀全文
    posted @ 2011-01-11 16:57 rogerfan 閱讀(744) | 評論 (0)  編輯

         摘要: 分享一下多年來在myeclipse中支持jquery、ext、YUI、mooto等主流框架的自動完成、提示、調試等方法。百忙之中非常想念各位群友,MMT很快就會回來。以下著重介紹link方式安裝,不推薦升級模式安裝,升級安裝會帶來很多問題,并且嘗嘗安裝不成功。

    1、從http://update1.aptana.org/studio/3.2/024747/index.html下載aptana studio的eclipse插件 aptana_update_024747.zip

    2、在D:\Myeclipse下創建myPlugins文件夾。 (我的myeclipse裝在D盤)

    3、在 D:\Myeclipse\eclipse\links 下創建一個link文件aptana.link,內容如下:path=D:\\Myeclipse\\myPlugins\\aptana

    4、在 D:\Myeclipse\myPlugins中創建文件夾aptana,在這個aptana文件夾下創建名為eclipse的文件夾。 閱讀全文
    posted @ 2010-12-09 15:40 rogerfan 閱讀(1914) | 評論 (0)  編輯

         摘要: 當網站從服器端請求的數據較大時,在有限的帶寬下就會造成瀏覽器加載緩慢,有時候會造成頁面沒有響應,使用戶體驗變得很差,tomcat為我們提供了有效的解決了辦法,就是使用壓縮來解決傳輸問題。
    tomcat使用HTTP/1.1 GZIP 來壓縮,以減少帶寬壓力,
    首先介紹下gzip:
    HTTP協議上的GZIP編碼是一種用來改進WEB應用程序性能的技術。大流量的WEB站點常常使用GZIP壓縮技術來讓用戶感受更快的速度。這一般是指WWW服務器中安裝的一個功能,當有人來訪問這個服務器中的網站時,服務器中的這個功能就將網頁內容壓縮后傳輸到來訪的電腦瀏覽器中顯示出來.一般對純文本內容可壓縮到原大小的40%.這樣傳輸就快了,效果就是你點擊網址后會很快的顯示出來.當然這也會增加服務器的負載. 一般服務器中都安裝有這個功能模塊的.
    我們使用簡單的例子來介紹tomcat的壓縮使用:(使用firebug查看請求情況)  閱讀全文
    posted @ 2010-09-28 10:18 rogerfan 閱讀(316) | 評論 (0)  編輯

         摘要: $TOMCAT_HOME$/CATALINA.BAT第一行,增加

    set JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx900m -Duser.timezone=GMT+08

    =================================================================================================================================

    $JONAS_HOME/bin/unix/jonas 中:
    export JAVA_OPTS="-server -Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128M -DFF_HOME=$JONAS_ROOT/ffhome"'-Xms【初始化內存大小】 -Xmx【可以使用的最大內存】'

    http://jasli.itpub.net/post/15912/300322

    =======  閱讀全文
    posted @ 2010-09-20 16:34 rogerfan 閱讀(3609) | 評論 (0)  編輯

         摘要: HP QC(Quantity Center)是一款不錯的測試管理工具,最近把公司的操作系統從Windows XP升級到Windows 7之后,發現登錄到QC Server的Addin頁面,很多客戶端組件不能正常下載,從而導致整個QC不能使用。通過Google找到了解決方案(http://www.sqaforums.com/showflat.php?Cat=0&Number=596807&Main=595276),特發出來與大家共享,希望那些在Windows 7上使用HP QC的朋友遇到該問題的時候,能過及時得到解決。下面是解決的步驟:

    Step I:關閉UAC (User Account Control)

    通過開始菜單搜索框,輸入UAC,會出現Change User Account Control菜單項。選在該菜單彈出如下一個User Account  Control Settingde 對話框。通過滾動條選擇“Never notify”。然后重啟機器。
      閱讀全文
    posted @ 2010-09-20 09:34 rogerfan 閱讀(1213) | 評論 (0)  編輯

         摘要: CronTrigger 支持比 SimpleTrigger 更具體強大的調度,實現起來卻不是很復雜。CronTrigger基于 cron 表達式,支持類似日歷的重復間隔更為復雜的調度時間上的要求。

     Cron 表達式包括以下 7 個字段:

      ·秒

      ·分

      ·小時

      ·月內日期

      ·月

      ·周內日期

      ·年(可選字段)

      Cron 觸發器利用一系列特殊字符,如下所示:

      ·反斜線(/)字符表示增量值。例如,在秒字段中“5/15”代表從第 5 秒開始,每 15 秒一次。

      ·問號(?)字符和字母 L 字符只有在月內日期和周內日期字段中可用。問號表示這個字段不包含具體值。所以,如果指定月內日期,可以在周內日期字段中插入“?”,表示周內日期值無關緊要。字母 L 字符是 last 的縮寫。放在月內日期字段中,表示安排在當月最后一天執行。在周內日期字段中,如果“L”單獨存在,就等于  閱讀全文
    posted @ 2010-09-17 09:25 rogerfan 閱讀(840) | 評論 (0)  編輯

         摘要: Eclipse IDE是目前Java開發人群中使用得最廣泛的IDE。Eclipse有一大堆的插件(請看http://www.eclipseplugincentral.com/),無數的組織在它之上開發他們自己的軟件。顯然,Eclipse無處不在。m2Eclipse項目在Eclipse IDE中提供了對Maven的支持,本章,我們將會研究它提供的特性,以幫助你在Eclipse IDE中使用Maven。

    m2eclipse插件(http://m2eclipse.codehaus.org/)為Eclipse提供了Maven的集成。m2Eclipse同時也以掛鉤的方式連接了Subclipse插件(http://subclipse.tigris.org/)和Mylyn插件(http://www.eclipse.org/mylyn/)的特性。Subclipse插件為m2eclipse提供了與Subversion倉庫交互的能力,Mylyn插件為m2eclipse提供了與任務集中接口交互的能力,該接口能跟蹤開發過程的上下文。m2clipse提供的一些特性包括:

    創  閱讀全文
    posted @ 2010-08-06 14:07 rogerfan 閱讀(264) | 評論 (0)  編輯

         摘要: 全局 查找并替換 Ctrl+F
    文本編輯器 查找上一個 Ctrl+Shift+K
    文本編輯器 查找下一個 Ctrl+K
    全局 撤銷 Ctrl+Z
    全局 復制 Ctrl+C
    全局 恢復上一個選擇 Alt+Shift+↓
    全局 剪切 Ctrl+X
    全局 快速修正 Ctrl1+1
    全局 內容輔助 Alt+/
    全局 全部選中 Ctrl+A
    全局 刪除 Delete
    全局 上下文信息 Alt+?
    Alt+Shift+?
    Ctrl+Shift+Space
    Java編輯器 顯示工具提示描述 F2
    Java編輯器 選擇封裝元素 Alt+Shift+↑
    Java編輯器 選擇上一個元素 Alt+Shift+←
    Java編輯器 選擇下一個元素 Alt+Shift+→
    文本編輯器 增量查找 Ctrl+J
    文本編輯器 增量逆向查找 Ctrl+Shift+J
    全局 粘貼 Ctrl+V
    全局 重做 Ctrl+Y   閱讀全文
    posted @ 2010-08-06 14:02 rogerfan 閱讀(270) | 評論 (0)  編輯

         摘要: 個人經驗

    1.申請完護照后在花生殼網站上申請免費域名。 注冊花生殼 得到免費域名并激活

    2.路由器的設置

    a.先登陸你的路由器管理界面(瀏覽器里輸入192.168.1.1,默認的管理員用戶名密碼都是admin,只要你的路由器密碼沒有被修改過,就用這個登陸)

    b.設置“虛擬服務器”

    內容為:

    服務端口:80,

    ip地址:192.168.0.*(*就是你ip的最后一位),

    協議:http

    如果你還想添加ftp服務,那只需要再添加一個端口號為21的,其他設置和上面的 web的設置一樣。然后就是保存

    c.設置“DMZ主機”
    啟用DMZ主機,并且在DMZ主機ip地址里寫你的地址。保存。


    3.tomcat 在server.xml文件,
    把端口號改為80,
      閱讀全文
    posted @ 2010-07-28 15:58 rogerfan 閱讀(6259) | 評論 (1)  編輯

         摘要: spring security 2安全功能,添加用戶驗證碼的實現,方案有3個:
    方案1、由于AuthenticationProcessingFilter過濾器是攔截/j_spring_security_check地址,他的實現類里只讀取的j_username和j_password,
    沒有讀取其他的用戶登陸信息,所以我就把驗證碼(code)在login.jsp頁面和j_username拼裝在一起,在UserDetailServiceImpl類UserDetails loadUserByUsername(String userName)
    方法里對傳進的userName進行拆分,分解出用戶名和驗證碼,剩下的工作不用我詳細說了。
    方案2、繼承AuthenticationProcessingFilter重寫一下AuthenticationProcessingFilter類的實現類,該方案的缺點是對現有的spring security 2配置改動較大;
    方案3(我推薦的),優點自己體會。
    步驟1寫過濾器,代碼如下:
    package com.s  閱讀全文
    posted @ 2010-07-23 16:38 rogerfan 閱讀(1461) | 評論 (0)  編輯

         摘要: 1.HttpSessionContextIntegrationFilter




    位于過濾器頂端,第一個起作用的過濾器。



    用途一,在執行其他過濾器之前,率先判斷用戶的session中是否已經存在一個SecurityContext了。如果存在,就把SecurityContext拿出來,放到SecurityContextHolder中,供Spring Security的其他部分使用。如果不存在,就創建一個SecurityContext出來,還是放到SecurityContextHolder中,供Spring Security的其他部分使用。



    用途二,在所有過濾器執行完畢后,清空SecurityContextHolder,因為SecurityContextHolder是基于ThreadLocal的,如果在操作完成后清空ThreadLocal,會受到服務器的線程池機制的影響。
      閱讀全文
    posted @ 2010-07-23 16:36 rogerfan 閱讀(699) | 評論 (0)  編輯

         摘要: Eclipse IDE是目前Java開發人群中使用得最廣泛的IDE。Eclipse有一大堆的插件(請看http://www.eclipseplugincentral.com/),無數的組織在它之上開發他們自己的軟件。顯然,Eclipse無處不在。m2Eclipse項目在Eclipse IDE中提供了對Maven的支持,本章,我們將會研究它提供的特性,以幫助你在Eclipse IDE中使用Maven。

    m2eclipse插件(http://m2eclipse.codehaus.org/)為Eclipse提供了Maven的集成。m2Eclipse同時也以掛鉤的方式連接了Subclipse插件(http://subclipse.tigris.org/)和Mylyn插件(http://www.eclipse.org/mylyn/)的特性。Subclipse插件為m2eclipse提供了與Subversion倉庫交互的能力,Mylyn插件為m2eclipse提供了與任務集中接口交互的能力,該接口能跟蹤開發過程的上下文。m2clipse提供的一些特性包括:

    創  閱讀全文
    posted @ 2010-07-14 19:50 rogerfan 閱讀(5810) | 評論 (0)  編輯

         摘要: 附:cronExpression表達式解釋:
    0 0 12 * * ?---------------在每天中午12:00觸發
    0 15 10 ? * *---------------每天上午10:15 觸發
    0 15 10 * * ?---------------每天上午10:15 觸發
    0 15 10 * * ? *---------------每天上午10:15 觸發
    0 15 10 * * ? 2005---------------在2005年中的每天上午10:15 觸發
    0 * 14 * * ?---------------每天在下午2:00至2:59之間每分鐘觸發一次
    0 0/5 14 * * ?---------------每天在下午2:00至2:59之間每5分鐘觸發一次
    0 0/5 14,18 * * ?---------------每天在下午2:00至2:59和6:00至6:59之間的每5分鐘觸發一次
    0 0-5 14 * * ?---------------每天在下午2:00至2:  閱讀全文
    posted @ 2010-07-14 10:03 rogerfan 閱讀(822) | 評論 (1)  編輯

         摘要: dwr.xml是DWR的配置文件。默認情況下,應該把它放到WEB-INF目錄(web.xml的目錄)下

    創建dwr.xml文件
    dwr.xml文件的結構如下:

    閱讀全文
    posted @ 2010-07-11 19:18 rogerfan 閱讀(1576) | 評論 (0)  編輯

         摘要: DWR是一個框架,簡單的說就是能夠在javascript直接調用java方法,而不必去寫一大堆的javascript代碼。它的實現是基于ajax的,可以實現無刷新效果。

    網上有不少DWR的例子,但大都只是某種方法的調用,本文只在使用層面上介紹DWR,并不涉更多的技術與設計,其目的是讓初學者能夠很快的學會各種java方法在javascript中是如何調用的。

    本文以DWR 1.1 為基礎,對于DWR 2.0,因為還沒有正式發布版,故不做介紹。

    一、dwr配置篇之web.xml

    1、最小配置
      閱讀全文
    posted @ 2010-07-11 19:17 rogerfan 閱讀(574) | 評論 (0)  編輯

         摘要: 我的試驗主要包括4種:
    1.回傳一個普通的String字符串.
    2.回傳一個組織好的Javascript字符串.
    3.回傳一個Json對象.(需要引入json.jar)
    4.回傳一個XML對象.
    基本實現如下:
    其中測試頁面為:  閱讀全文
    posted @ 2010-07-11 19:06 rogerfan 閱讀(1555) | 評論 (0)  編輯

         摘要: 一、使用校驗規則創建Person-validation.xml文件


    為了利用WebWork校驗框架實現數據校驗有兩件事情要做,第一是創建一個validation.xml文件,第二是在需要進行校驗的action中加入一個校驗interceptor引用。

    WebWork允許兩種類型的校驗 —— per-action和model-based。因為所有的Action對Person引用都要使用相同的校驗規則,所以本文將使用model-based類型的校驗。

    在src/dao/**/model目錄下創建Person-validation.xml文件并加入下列內容:
      閱讀全文
    posted @ 2010-07-11 18:46 rogerfan 閱讀(368) | 評論 (0)  編輯

         摘要: 準備工作

      首先先下載Windows版本的SVN服務器(各位都會使用搜索引擎所以就不提供下載地址了),這里我以svn-win32-1.4.3的ZIP解壓縮版為例,將其解壓縮到目標目錄,例如我是解壓到D盤下的Subversion目錄,把D:\Subversion\bin加到系統環境變量,如果你的解壓位置與我不同,那么請按照你的實際路徑設置環境變量。

    第一步:創建SVN數據庫

      打開Windows命令提示符,執行命令svnadmin create F:\SVN,svnadmin create是創建SVN數據庫的命令,F:\SVN是你的SVN數據庫位置,這里我只是舉個例子,你可以自己決定SVN數據庫位置,執行完以上命令后就會在F盤下多出一個SVN目錄,里面有若干目錄和文件,conf目錄是用來存放權限配置的,后面會詳細說明,dav目錄用來提供給apache和mod_dav_svn存儲內部數據,db目錄是所有版本控制的數據文件,hooks目錄用來放置hook腳本文件,locks目錄存放Subversion文件庫鎖定數據,用來追蹤存取  閱讀全文
    posted @ 2010-07-09 09:02 rogerfan 閱讀(659) | 評論 (0)  編輯

         摘要: 需要的軟件:

    1.apache 2.2.11 (此下載地址被墻,翻*墻可下載,其他版本的Apache可以在這里找到 http://archive.apache.org/dist/httpd/binaries/win32/)

    2.Subversion 1.6.5

    3.TortoiseSVN 1.6.8

    4.TortoiseSVN 1.6.8 中文語言包



    安裝方法:



    1.先安裝apache ,沒有什么特別的,這里就按照默認安裝路徑 C:/Program Files (x86)/Apache Software Foundation/Apache2.2/



    2.安裝Subversion 也按默認路徑安裝 C:\Program Files (x86)\Subversion
      閱讀全文
    posted @ 2010-07-06 11:13 rogerfan 閱讀(746) | 評論 (0)  編輯

         摘要: maxRequests
    同時執行 SQL 語句的最大線程數。大于這個值的線程將阻塞直到另一個線程執行完成。不同的 DBMS有不同的限制值,但任何數據庫都有這些限制。通常這個值應該至少是maxTransactions(參見以下)的 10 倍,并且總是大于 maxSessions 和maxTranactions。減小這個參數值通常能提高性能。

    例如:maxRequests=“256”
    缺省值:512

    maxSessions
    同一時間內活動的最大 session 數。一個 session 可以maxSessions是代碼請求的顯式 session,也可以是當線程使用SqlMapClient 實例(即執行一條語句)自動獲得的session。它應該總是大于或等于 maxTransactions 并小于 maxRequests。減小這個參數值通常能減少內存使用。

    例如:maxSessions=“64”
    缺省值:128  閱讀全文
    posted @ 2010-07-01 11:21 rogerfan 閱讀(2068) | 評論 (0)  編輯

         摘要: 1.ibatis中使用緩存
    首先設置SqlMapConfig.xml中節點的屬性cacheModelsEnabled="true"

    然后在具體sqlmap文件中書寫

    Xml代碼







    posted @ 2010-06-30 16:58 rogerfan 閱讀(190) | 評論 (0)  編輯

         摘要: 最近開始重構公司一套手機論壇系統(為什么我不說wap論壇,是因為需要針對不同的手機瀏覽器,實現自動適配成wap、html以及wap2.0版本的頁面)。原系統存在架構層次不清晰(表現層全jsp,直接配合數據層獲取數據),訪問速度慢的問題。其使用的OR映射框架是Hibernate,鑒于Hibernate的一些不滿足需要情況下,我們在重構的時候換成了iBatis,為了加快訪問速度,采用了iBatis的緩存技術。

    iBatis的緩存配置比較簡單易懂,以我使用的iBatis2.3為例,做以下配置即可實現對某些查詢進行緩存:

    1、在sqlMap文件中加入cacheModel的配置:





    閱讀全文
    posted @ 2010-06-29 21:55 rogerfan 閱讀(915) | 評論 (0)  編輯

         摘要: 支持英文、數字、中文(簡體)混合分詞
    常用的數量和人名的匹配
    超過22萬詞的詞庫整理
    實現正向最大匹配算法

    //采用正向最大匹配的中文分詞算法,相當于分詞粒度等于0
    MMAnalyzer analyzer = new MMAnalyzer();

    //參數為分詞粒度:當字數等于或超過該參數,且能成詞,該詞就被切分出來
    MMAnalyzer analyzer = new MMAnalyzer(2);


    //增加一個新詞典,采用每行一個詞的讀取方式
    MMAnalyzer.addDictionary(reader);

    //增加一個新詞
    MMAnalyzer.addWord(newWord);
      閱讀全文
    posted @ 2010-06-21 10:10 rogerfan 閱讀(3004) | 評論 (0)  編輯

         摘要: 1. 各種Query
    1.1. 概述
    query.toString()查看原子查詢

    1.2. 使用特定的分析器搜索
    IndexSearcher searcher = new IndexSearcher(path );

    Hits hits = null;

    Query query = null;

    QueryParser parser =new QueryParser("contents", new StandardAnalyzer());

    query =parser.parse("11 a and hello");

    hits=searcher.search(query); //查找 name:11 name:hello 共1個結果

    System.out.println("查找 "+query.toString()+" 共" + hits.length() + "個結果");
      閱讀全文
    posted @ 2010-06-21 10:07 rogerfan 閱讀(320) | 評論 (0)  編輯

         摘要: 1. 排序
    1.1. Sort類
    public Sort()

    public Sort(String field)

    public Sort(String field,Boolean reverse) //默認為false,降序排序

    public Sort(String[] fields)

    public Sort(SortField field)

    public Sort(SortField[] fields)

    Sort sort=new Sort(“bookname”);按照“bookname“這個Field值進行降序排序

    Sort sort=new Sort(“bookname”,true) //升序排序

    Sort sort=new Sort(new String[]{“bookNumber”,”bookname”,”publishdate”});按照三個Field進行排序,但無法指定升序排序,所以用SortField <  閱讀全文
    posted @ 2010-06-21 10:06 rogerfan 閱讀(596) | 評論 (0)  編輯

         摘要: 1. lucene中主要的類
    1.1. Document文檔類
    1.1.1.常用方法
    方法
    描述

    void add(Field field)
    往Document對象中添加字段

    void removeField(String name)
    刪除字段。若多個字段以同一個字段名存在,則刪除首先添加的字段;若不存在,則Document保持不變

    void removeFields(String name)
    刪除所有字段。若字段不存在,則Document保持不變

    Field getField(String name)
    若多個字段以同一個字段名存在,則返回首先添加的字段;若字段不存在,則Document保持不變

    Enumeration fields()
    返回Document對象的所有字段,以枚舉類型返回

    Field [] getFields(String name)
    根據名稱得到一個F  閱讀全文
    posted @ 2010-06-21 10:05 rogerfan 閱讀(317) | 評論 (0)  編輯

         摘要: 1. 概述
    Lucene是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎。Lucene以其方便使用、快速實施以及靈活性受到廣泛的關注。它可以方便地嵌入到各種應用中實現針對應用的全文索引、檢索功能,本總結使用lucene--2.3.2。

    2. lucene 的包結構
    1、org.apache.lucene.analysis對需要建立索引的文本進行分詞、過濾等操作, 語言分析器,主要用于的切詞Analyzer是一個抽象類,管理對文本內容的切分詞規則。

    2、org.apache.lucene.analysis.standard是標準分析器

    3、org.apache.lucene.document提供對Document和Field的各種操作的支持。索引存儲時的文檔結構管理,類似于關系型數據庫的表結構。Document相對于關系型數據庫的記錄對象,Field主要負責字段的管理。

    4、org.apache.lucene.index是最重要的包,用于向Lucene提供建立索引時各種操作的支持。  閱讀全文
    posted @ 2010-06-21 10:04 rogerfan 閱讀(208) | 評論 (0)  編輯

         摘要: 4 索引是如何創建的
    為了使用Lucene來索引數據,首先你比把它轉換成一個純文本(plain-text)tokens的數據流(stream),并通過它創建出Document對象,其包含的Fields成員容納這些文本數據。一旦你準備好些Document對象,你就可以調用IndexWriter類的addDocument(Document)方法來傳遞這些對象到Lucene并寫入索引中。當你做這些的時候,Lucene首先分析(analyzer)這些數據來使得它們更適合索引。詳見《Lucene In Action》
      閱讀全文
    posted @ 2010-06-21 09:58 rogerfan 閱讀(255) | 評論 (0)  編輯

         摘要: 1 什么是索引
    為了使用Lucene來索引數據,首先你得把它轉換成一個純文本(plain-text)tokens的數據流(stream),并通過它創建出Document對象,其包含的Fields成員容納這些文本數據。一旦你準備好些Document對象,你就可以調用IndexWriter類的addDocument(Document)方法來傳遞這些對象到Lucene并寫入索引中。當你做這些的時候,Lucene首先分析(analyzer)這些數據來使得它們更適合索引。詳見《Lucene In Action》

    下面先了解一下索引結構的一些術語。

    1.1 索引數據結構介紹
    1.1.1 術語定義
    Lucene中基本的概念(fundamental concepts)是index、Document、Field和term。

    ú 一條索引(index)包含(contains)了一連串(a sequence of)文檔(documents)。

    ú   閱讀全文
    posted @ 2010-06-21 09:58 rogerfan 閱讀(282) | 評論 (0)  編輯

         摘要: 3 索引類關系圖
    下面逐個介紹與建立索引有關的一些類及它們的關系。



    3.1 org.apache.lucene.store.IndexWriter
    一個IndexWriter對象只創建并維護一個索引。IndexWriter通過指定存放的目錄(Directory)以及文檔分析器(Analyzer)來構建,direcotry代表索引存儲(resides)在哪里;analyzer表示如何來分析文檔的內容;similarity用來規格化(normalize)文檔,給文檔算分(scoring);IndexWriter類里還有一些SegmentInfos對象用于存儲索引片段信息,以及發生故障回滾等。以下是它們的類圖:
      閱讀全文
    posted @ 2010-06-21 09:56 rogerfan 閱讀(225) | 評論 (0)  編輯

         摘要: 1 Lucene是什么
    Apache Lucene是一個高性能(high-performance)的全能的全文檢索(full-featured text search engine)的搜索引擎框架庫,完全(entirely)使用Java開發。它是一種技術(technology),適合于(suitable for)幾乎(nearly)任何一種需要全文檢索(full-text search)的應用,特別是跨平臺(cross-platform)的應用。

    Lucene 通過一些簡單的接口(simple API)提供了強大的特征(powerful features):

    可擴展的高性能的索引能力(Scalable, High-Performance Indexing)

    ü 超過20M/分鐘的處理能力(Pentium M 1.5GHz)

    ü 很少的RAM內存需求,只需要1MB heap

    ü 增量索引(incremental indexi  閱讀全文
    posted @ 2010-06-21 09:53 rogerfan 閱讀(204) | 評論 (0)  編輯

         摘要: 附:MyEclipse 5.0 官方提供的圖文教程:

    http://www.myeclipseide.com/ContentExpress-display-ceid-81.html#webservices

    開發環境
    Sun Java 5+ Eclipse 3.2 +MyEclipse 5.0.0.

    概述

    本文介紹了使用MyEclipse Web Service來迅速開發和測試一個HelloWorld Web Service,其中包括:
    1. 介紹了MyEclipse Web Services的基本概念
    2. 創建一個MyEclipse Web Services工程
    3. 創建一個簡單的HelloWorld Web Service
    4. 在Web容器中,如Tomcat 5中部署Web Service
    5. 使用Web Services Explorer來測試部署的Web Services
    <  閱讀全文
    posted @ 2010-05-27 14:54 rogerfan 閱讀(845) | 評論 (0)  編輯

         摘要: 本實例的原BLOG網站地址為:http://blog.csdn.net/meteorlWJ/archive/2009/09/12/4545100.aspx,有興趣的朋友多多支持
    在開始前,先介紹一些概念:

    XFire Java SOAP框架概述 (摘自:http://tech.it168.com/j/e/2006-10-28/200610281432707.shtml)
    MyEclipse Web Services是建立在XFire JavaSOAP框架和工具基礎上的, XFire是一款開源的JavaSOAP框架。它擁有一個輕量級的信息處理模塊,通過STAX來與SOAP信息相結合。提供了一個工作在WebServices下的簡單API,支持POJO和schema開發. XFire支持 Web Services standards,Spring整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP,In-memory傳輸協議

    一、環境配置:MyEcl  閱讀全文
    posted @ 2010-05-27 11:31 rogerfan 閱讀(5118) | 評論 (7)  編輯

         摘要: maven2 起步
    相信maven1 大家都已經很熟悉了,具體maven能做什么,就不詳細說了。個人覺得maven在開源項目中用的還是比較多的,公司內部,就不太清楚了。我以前的公司用過一段時間,不過后來就沒有下文了。
    與maven1 相比,maven2可算是幾乎重寫了,不過從速度來說應該更快。
    主要的幾個新特性包括:(詳細參考http://www.ibm.com/developerworks/cn/opensource/os-maven2/index.html)
    1. 更快、更簡單
    速度方面可以比上ant了
    2. 更少的配置文件
    現在的配置文件只剩下了settings.xml和pom.xml了。
    3. Plugin語言更換
    語言開始支持java,BeanShell和ant
    4. 提供了預定義的模版
    這點是最有幫助的,用戶可以自己定義自己的項目模版了,就像用  閱讀全文
    posted @ 2010-05-09 19:10 rogerfan 閱讀(182) | 評論 (0)  編輯

         摘要: iBatis的sqlMap配置文件的selectKey元素有個type屬性,可以指定pre或者post表示前生成(pre)還是后生成(post)。

      閱讀全文
    posted @ 2010-04-30 13:46 rogerfan 閱讀(4059) | 評論 (1)  編輯

         摘要: 使用XFire+Spring構建Web Service

    XFire是與Axis 2并列的新一代Web Service框架,通過提供簡單的API支持Web Service各項標準協議,幫助你方便快速地開發Web Service應用。

    相 對于Axis來說,目前XFire相對受歡迎,加上其提供了和Spring集成的支持,在目前的Web Service開源社區擁有眾多的追隨者。并且因為XFire為Spring提供的支持,使得我們可以很容易在Spring中使用XFire構建Web Service應用。

    XFire與Axis2相比具有如下特征:

    l 支持一系列Web Service的新標準--JSR181、WSDL2.0 、JAXB2、WS-Security等;

    l 使用Stax解釋XML,性能有了質的提高。XFire采用Woodstox 作Stax實現;

    l 容易上手,可以方便快速地從pojo發布服務;

    l 支持Spring、Pico、Plexus、Loom  閱讀全文
    posted @ 2010-04-27 10:53 rogerfan 閱讀(3511) | 評論 (0)  編輯

    posted @ 2010-04-27 10:51 rogerfan 閱讀(2046) | 評論 (0)  編輯

         摘要: 現在在Java開發中,使用的開發工具大部分都是Eclipse,并且和Eclipse關系緊密的要數MyEclipse了,但是 MyEclipse是一個EXE可執行程序,對于沒有安裝Eclipse與MyEclilpse的電腦來說,首先得先解壓Eclipse,然后再安裝 MyEclipse,這不光很麻煩,而且還很費時,對于已經安裝好的電腦來說,如果哪天電腦出了問題或是Eclipse崩潰了,導致工具不能用,這時又不得不重新安裝時,那可真夠郁悶滴~~~,因此,大象本著我為人人,人人為我的奉獻精神,在此,將Eclipse+MyEclipse的完全綠色版制作方法寫出來,和大家一起分享,讓大家都能享受到這種方便。

    在這里,大象采用Eclipse3.3.1與MyEclipse_6.0.1GA_E3.3.1_Installer版來舉例說明,其它的版本做法與此相同。

    第1步:下載Eclipse3.3.1和MyEclipse_6.0.1GA

    這里我要提醒大家注意一下:下載3.2的版本,因為3.3版本以上的支持,另外就是下載MyEclipse6.0.1的插件  閱讀全文
    posted @ 2010-03-18 17:34 rogerfan 閱讀(1504) | 評論 (0)  編輯

         摘要: 最近項目中需要用到CXF,但是本人使用的MyEclipse Blue Edition 6.1居然沒有集成CXF的支持。因此抽時間研究了下將Eclipse SOA Tools Platform插件集成到其中。

    MyEclipse Blue Edition 6.1中使用的Eclipse Platform為3.3.2。因此本人下載了多個Eclipse 3.3.2版本的STP插件進行測試。最后發現STP R200710161054版可以和MyEclipse Blue Edition 6.1版完美集成。

    此處可以下載STP R200710161054 all in one版。

    具體安裝其實超簡單,將下載的ZIP包解壓到MyEclipse安裝目錄下的myeclipse目錄中。此處需要特別小心,注意:eclipse,feature和plugins目錄可以覆蓋;但是feature和plugins中的同名目錄不能覆蓋。

    此外,由于STP插件中的文件的目錄和文件名比較長,解壓后可能會發生  閱讀全文
    posted @ 2010-03-18 17:33 rogerfan 閱讀(1580) | 評論 (0)  編輯

         摘要: 這次發布的Spring Security-3.0.1是一個bug fix版,主要是對3.0中存在的一些問題進行修正。文檔中沒有添加新功能的介紹,但是將之前拼寫錯誤的一些類名進行了修正,建議開發者以這一版本的文檔為參考。

    另:Spring Security從2010-01-01以后,版本控制從SVN換成了GIT,我們在翻譯文檔的時候,主要是根據SVN的變化來進行文檔內容的比對,這次換成GIT后,感覺缺少了之前那種文本比對工具,如果有對GIT熟悉的朋友,還請推薦一下文本比對的工具,謝謝。  閱讀全文
    posted @ 2010-03-16 17:03 rogerfan 閱讀(192) | 評論 (0)  編輯

         摘要: Maven的基本原理很簡單,采用遠程倉庫和本地倉庫以及一個類似build.xml的pom.xml,將pom.xml中定義的jar文件從遠程倉庫下載到本地倉庫,各個應用使用同一個本地倉庫的jar,同一個版本的jar只需下載一次,而且避免每個應用都去拷貝jar。如圖1。同時它采用了現在流行的插件體系架構,只保留最小的核心,其余功能都通過插件的形式提供,所以maven下載很小(1.1M),在執行maven任務時,才會自動下載需要的插件。
    這個基本原理與Pear――PHP擴展與應用庫(the PHP Extension and Application Repository)的原理非常相似,都有一個官方的倉庫,都是微內核,通過網絡將需要的文件下載到本地,通過官方倉庫將相應的類庫進行統一管理。Pear已經成為PHP開發事實上的標準,而Maven在Java世界的地位也逐漸加強,成為標準指日可待。  閱讀全文
    posted @ 2010-02-04 22:41 rogerfan 閱讀(427) | 評論 (0)  編輯

         摘要: 為了方便ajax調用傳輸數據,在struts2中加入的json插件用來做對象的序列化和反序列化,json插件的下載地址

    http://code.google.com/p/jsonplugin/

    1. 下載json插件包,將jar包拷貝到WEB-INF/lib目錄

    注:struts2的json插件有兩個版本0.32和0.34,我用的struts2的版本是2.0.11,在加入0.34版本json插件時啟動發生異常,提示找不到相關方法,后來就換成了低版本的0.32一切OK,仔細查看文檔后發現struts2的2.0.*版本的對應插件的0.32版本,struts2.1.*版本對應0.34版本
      閱讀全文
    posted @ 2010-01-26 11:36 rogerfan 閱讀(19265) | 評論 (7)  編輯

         摘要: 這是ntfs權限造成的,解決辦法:

    1、選擇“工具” > “文件夾選項” >“查看”,去掉“使用簡單文件共享”前的勾

    2、找到數據庫所在文件夾,點擊右鍵“屬性”并切換到“安全”選項卡,添加給EveryOne 用戶所有權限。

    添加方法為:安全>添加>高級>立即查找>選中everyone>確定>點上“修改”一項

    3、同理給internet來賓帳戶添加修改權限

    4、找到數據庫,右鍵>安全,為internet來賓帳戶添加“修改”權限,確定。這項很重要,一定要做

    現在數據庫就可以順利連上了

    fat32系統一般不會出現這類問題  閱讀全文
    posted @ 2010-01-10 16:22 rogerfan 閱讀(2109) | 評論 (0)  編輯

         摘要: 前言
    關于Struts2入門以及提高等在這里就不介紹了,但是關于Struts2的學習有以下推薦:

    struts2-showcase-2.0.6.war:這個是官方自帶的Demo(struts-2.0.6-all.zip\struts-2.0.6\apps目錄下),非常全面,直接部署就可以了(很多朋友Struts2能學很好我估計還是直接從這里學來的)。
    wiki-WebWork:入了門的朋友應該都知道,strust2由webwork2和struts1.x合并起來的,但主要還是以webwork2為主,所以如果找不到Struts2的資料可以找WebWork資料看看。
    Max On Java的博客,他的博客的資料在中文的Struts2算是比較全的了,寫得很詳細。
    The Code Project、Google - CodeSearch、Koders:這幾個代碼搜索網站在我找不到中文資料甚至英文文章的時候幫了我大忙!
    關于JFreeChart入門等這里我也不打算介紹了,中文資料很多了。

    閱讀全文
    posted @ 2010-01-06 17:08 rogerfan 閱讀(2089) | 評論 (0)  編輯

         摘要: 目前從實際應用來看,ORM的老大自然是Hibernate,可是iBatis因為相對比較直觀、學習曲線相對較低,因而也贏得了不少用戶的青睞。
    本文主要介紹作為iBatis輔助工具的iBator的使用方法。
    iBator是一個iBatis相關代碼的自動生成工具。
    1、安裝iBator的插件
    在Eclipse中,使用添加站點的方法,輸入網址http://ibatis.apache.org/tools/ibator,進行iBator的安裝。
    2、建議不要直接在使用iBatis的項目里直接使用iBator,推薦另外單獨建立一個項目來生成。比如,建立一個項目叫:IbatorPrj
    3、右鍵點擊IbatorPrj這個項目,如果剛才的插件安裝正確的話,就會看到一個“Add iBATOR to the build path”的選項,點擊一下。
    4、創建iBator的配置文件。下面是我的例子,大家在實際使用的過程中,需要根據自己的情況進行相應的修改。  閱讀全文
    posted @ 2009-11-24 10:26 rogerfan 閱讀(2132) | 評論 (0)  編輯

         摘要: OSCache是當前運用最廣的緩存方案,JBoss,Hibernate,Spring等都對其有支持,
    下面簡單介紹一下OSCache的配置和使用過程。

    1.安裝過程
    從http://www.opensymphony.com/oscache/download.action下載合適的OSCache版本,
    我下載的是oscache-2.0.2-full版本。
    解壓縮下載的文件到指定目錄

    從解壓縮目錄取得oscache.jar 文件放到 /WEB-INF/lib 或相應類庫目錄 目錄中,
    jar文件名可能含有版本號和該版本的發布日期信息等,如oscache-2.0.2-22Jan04.jar

    如果你的jdk版本為1.3.x,建議在lib中加入Apache Common Lib 的commons-collections.jar包。
    如jdk是1.4以上則不必

    從src或etc目錄取得oscache.properties 文件,放入src根目錄或發布環境的/W  閱讀全文
    posted @ 2009-11-17 14:36 rogerfan 閱讀(160) | 評論 (0)  編輯

         摘要: 一。簡介

    OSCache是OpenSymphony組織提供的一個J2EE架構中Web應用層的緩存技術實現組件,它的出現解決了我們面臨的問題。 OSCache目前最新的穩定版本是2.3.2,本文中的例子都是基于這個版本的,如果大家運行例子的過程中發生問題,請首先確認是否采用了正確的軟件版本。

    二。安裝

    1. 下載、解壓縮OSCache

    請到OSCache的主頁http://www.opensymphony.com/oscache/download.action下載Oscache的最新版本,作者下載的是OSCache的最新穩定版本2.3.2。

    將下載后的。Zip文件解壓縮到c:\oscache(后面的章節中將使用%OSCache_Home%來表示這個目錄)目錄下

    2. 新建立一個web應用

    3. 將主要組件%OSCache_Home%\oscache.jar放入WEB-INF\lib目錄

    4. commons-log  閱讀全文
    posted @ 2009-11-17 14:34 rogerfan 閱讀(179) | 評論 (0)  編輯

         摘要: 什么是動態定時任務:是由客戶制定生成的,服務端只知道該去執行什么任務,但任務的定時是不確定的(是由客戶制定)。
    這樣總不能修改配置文件每定制個定時任務就增加一個trigger吧,即便允許客戶修改配置文件,但總需要重新啟動web服務啊,研究了下Quartz在Spring中的動態定時,發現
    《bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean" 》
    《property name="jobDetail" ref="schedulerJobDetail"/》
    《property name="cronExpression"》
    《value》0/10 * * * * ?《/value》
    《/property》
    中cronExpression是關鍵,如果可以動態設置cronExpression的值,也就說如果我們可以直接調用CronTrigge  閱讀全文
    posted @ 2009-08-11 10:00 rogerfan 閱讀(3479) | 評論 (1)  編輯

         摘要: 一、前言
    早就知道maven 在java 項目的管理方面名聲顯赫,于是就想著學習掌握之,于是查閱了大量文檔。發現這些文檔的作者都是java 的大腕,大多都是站在掌握了一定maven 基礎的角度上進行介紹,讓我這初學者看的云里霧里不知所云。于是又去查看maven 的官方網站,總算是有所了解,但一旦動手實際操作卻又霧里看花。唉,沒辦法,就只有一遍一遍的動手嘗試,經過種
    種磨難總算是有一點眉目了。現在就將我的經驗寫出來,一來避免將來遺忘,二來也給和我一樣的菜鳥們提供一點點的方便。呵呵。本文的主題在于實用操作,個中原理還是麻煩大家去查一下java大腕們的文章吧。這里推薦兩篇文章:

    Maven 2.0:編譯、測試、部署、運行
    http://www.ideagrace.com/html/doc/2006/06/14/00847.html

    Maven2 的新特性
    http://www-128.ibm.com/developerworks/cn/opensource/os-maven2/index.html  閱讀全文
    posted @ 2009-07-13 14:55 rogerfan 閱讀(589) | 評論 (0)  編輯

         摘要: 簡介
    Maven作為Apache的一個開源項目,旨在給項目管理提供更多的支持,主頁地址為http://maven.apache.org 。它最早的意圖只是為了給apache組織的幾個項目提供統一的開發、測試、打包和部署,能讓開發者在多個項目中方便的切換。很多偉大的事業,出發點都很簡單,ebay就是很好的例證。而maven的成功又一次驗證了這一點,越來越多的項目開始使用maven。
    基本原理
    Maven的基本原理很簡單,采用遠程倉庫和本地倉庫以及一個類似build.xml的pom.xml,將pom.xml中定義的jar文件從遠程倉庫下載到本地倉庫,各個應用使用同一個本地倉庫的jar,同一個版本的jar只需下載一次,而且避免每個應用都去拷貝jar。如圖1。同時它采用了現在流行的插件體系架構,只保留最小的核心,其余功能都通過插件的形式提供,所以maven下載很小(1.1M),在執行maven任務時,才會自動下載需要的插件。
      閱讀全文
    posted @ 2009-07-13 14:35 rogerfan 閱讀(164) | 評論 (0)  編輯

         摘要: 近期在學習Maven,主要是想把Ant構建的項目換成Maven構建,查了不少資料,也做了一些實踐,感覺已經有些入門,現將自己的學習過程整理出來,希望對看到這篇文章的人員有所幫助。由于查了不少資料,參考了不少文檔,在此表示感謝!

    1、下載

    開源網址:http://maven.apache.org/
    下載網址:http://maven.apache.org/download.html  閱讀全文
    posted @ 2009-07-13 11:44 rogerfan 閱讀(264) | 評論 (0)  編輯

         摘要: UML建模軟件目前用的主要有3種:

    商業版本:Telelogic TAU 和 Rational Rose

    開源版本:StarUML

    Telelogic TAU與Rational Rose的功能很強,但是需要買License。

    StarUML就是希望能提供和TAU/Rose一樣功能的開源版本。

    目前使用起來還是不錯的。

    能熟練使用其中一個是軟件設計人員的基本功。
      閱讀全文
    posted @ 2009-06-19 17:31 rogerfan 閱讀(1905) | 評論 (0)  編輯

         摘要: 導讀:
    StarUML是專業的UML建模工具,又因為它是免費開源的,因此是初學者的首選軟件。廢話少說,開始:
    1、界面介紹:
    主要是四個方面:工具欄、工作區、瀏覽區和屬性區。結構如下圖:  閱讀全文
    posted @ 2009-06-19 10:43 rogerfan 閱讀(1701) | 評論 (2)  編輯

         摘要: 編輯
    作用域 功能 快捷鍵
    文本編輯器 查找上一個 Ctrl+Shift+K
    文本編輯器 查找下一個 Ctrl+K
    全局 恢復上一個選擇 Alt+Shift+↓
    全局 快速修正 Ctrl1+1
    全局 內容輔助 Alt+/
    全局 上下文信息 Alt+?Alt+Shift+?Ctrl+Shift+Space
    Java編輯器 顯示工具提示描述 F2
    Java編輯器 選擇封裝元素 Alt+Shift+↑
    Java編輯器 選擇上一個元素 Alt+Shift+←
    Java編輯器 選擇下一個元素 Alt+Shift+→
    文本編輯器 增量查找 Ctrl+J
    文本編輯器 增量逆向查找 Ctrl+Shift+J
    全局 重做 Ctrl+Y   閱讀全文
    posted @ 2009-05-13 11:47 rogerfan 閱讀(384) | 評論 (0)  編輯

         摘要: Maven1.0已經歷了幾年的時間,并且作為Ant的替代品已被廣大的開發人員所接收,但它并沒有在很大程度使開發人員從Ant的build.xml文件中解脫出來。Maven1.0速度慢并且笨拙,使用起來的困難度并不亞于使用Ant的項目。事實上,它的核心是基于Ant實現的。在經過了幾乎徹底的重寫后,Maven2.0誕生了。

    一個Java項目中最困難的地方就是如何著手啟動它。在啟動項目之前,我們必須配置好所有的邏輯關系。比如,Java源代碼應該放在何處?單元測試應該在何處進行?依賴的jar包應該如何放置?如何構建項目,如何形成文檔,如何測試和部署項目?在這種情況下,開發人員不同的處理選擇將會影響項目的余下部分。您的選擇可能會使你陷入困境,也可能會在將來證明您是一位Java架構大師。我們假定后者是我們奮斗的目標,接下來就進入我們的正題。  閱讀全文
    posted @ 2009-03-20 11:21 rogerfan 閱讀(373) | 評論 (0)  編輯

         摘要: maven2 起步
    相信maven1 大家都已經很熟悉了,具體maven能做什么,就不詳細說了。個人覺得maven在開源項目中用的還是比較多的,公司內部,就不太清楚了。我以前的公司用過一段時間,不過后來就沒有下文了。
    與maven1 相比,maven2可算是幾乎重寫了,不過從速度來說應該更快。
    主要的幾個新特性包括:(詳細參考http://www.ibm.com/developerworks/cn/opensource/os-maven2/index.html)
    1. 更快、更簡單
    速度方面可以比上ant了
    2. 更少的配置文件
    現在的配置文件只剩下了settings.xml和pom.xml了。
      閱讀全文
    posted @ 2009-03-20 11:17 rogerfan 閱讀(749) | 評論 (0)  編輯

         摘要: Abator動作環境:
    * Eclipse 3.0 or higher
    (including Rational Application Developer/Software rchitect 6.0)
    * JDK 1.4 or Higher


    Abator可以自動生成:
    ?POJO
    ?DAO接口和實裝
    ?SqlMapConfigXML


    Abator Eclipse插件
    Update URL:http://ibatis.apache.org/tools/abator  閱讀全文
    posted @ 2009-03-20 11:10 rogerfan 閱讀(333) | 評論 (0)  編輯

         摘要: 有關Maven:http://maven.apache.org/


    m2eclipse主要功能特點
    1,支持Eclipse環境直接啟動Maven build
    2,Maven項目, pom.xml等創建向導功能


    m2eclipse首頁:
    http://m2eclipse.codehaus.org/

    m2eclipse在線安裝:
    http://m2eclipse.codehaus.org/update/  閱讀全文
    posted @ 2009-03-20 11:05 rogerfan 閱讀(726) | 評論 (0)  編輯

         摘要: 測試任何可能的錯誤。單元測試不是用來證明您是對的,而是為了證明您沒有錯。

    2、單元測試代碼和被測試代碼使用一樣的包,不同的目錄。
    --junit4.0使用注意說明;

    3、測試方法必須按照規范書寫
    1. 測試方法必須使用注解 org.junit.Test 修飾。
    2. 測試方法必須使用 public void 修飾,而且不能帶有任何參數。
    @Test public void wordFormat4DBegin(){
    String target = "EmployeeInfo";
    String result = WordDealUtil.wordFormat4DB(target);

    assertEquals("employee_info", result);
    }  閱讀全文
    posted @ 2009-03-06 11:30 rogerfan 閱讀(841) | 評論 (0)  編輯

         摘要: 提要 本文將向你介紹如何實現從JUnit 3.8向JUnit 4的遷移。同時,還討論JUnit 4中的一些新特征,特別包括對注解的使用;最后,簡要介紹這個新版本的IDE集成現狀。

      一、 引言

      在本文開始,我將假定,你已經了解由Kent Beck和Erich Gamma發明的這個Java單元測試框架并因此而略過必要的簡介。所以,我將集中分析從JUnit 3.8到最新版本-JUnit 4的遷移過程以及其在IDE和Ant中的集成。

      JUnit 4是一種與其之前的版本完全不同的API,它根據Java 5.0中的新特征(注解,靜態導入等)構建而成。如你所見,JUnit 4更簡單、更豐富和更易于使用,而且它引入了更為靈活的初始化和清理工作,還有限時的和參數化測試用例。   閱讀全文
    posted @ 2009-03-06 10:46 rogerfan 閱讀(335) | 評論 (0)  編輯

         摘要: Struts簡介
    Struts是一個基于Sun J2EE平臺的MVC框架,很好地實現了MVC模式,它由Craig McClanahan創建。Struts最早是作為Apache Jakarta項目的組成部分問世運作,Struts這個名字來源于在建筑中使用的金屬架。使用它的目的是為了減少運用MVC設計模型來開發Web應用的時間。它只有一個中心控制器,采用XML定制轉向的URL,采用Action來處理邏輯。

    Struts通過一個配置文件,即可把握整個系統各部分之間的聯系,但這樣做不容易查找錯誤。Struts 其實就是在Model2基礎上實現的一個MVC框架。Model2的示意圖如圖11.1所示。

    圖11.1 Model2的示意圖

    與Spring一樣,通過在web.xml中的配置,使得所有的視圖層請求都要通過ActionServlet,由它進行客戶端的請求處理。它主要通過struts-config.xml文件來進行用戶請求的動作和對應Action的請求,將請求傳遞給Action,并將處理后的結果返回給視圖層。Struts的體系結構  閱讀全文
    posted @ 2009-03-06 10:32 rogerfan 閱讀(1942) | 評論 (0)  編輯

         摘要: JUnit簡介
    JUnit主要用來幫助開發人員進行Java的單元測試,其設計非常小巧,但功能卻非常強大。

    下面是JUnit一些特性的總結:

    — 提供的API可以讓開發人員寫出測試結果明確的可重用單元測試用例。

    — 提供了多種方式來顯示測試結果,而且可以擴展。

    — 提供了單元測試批量運行的功能,而且可以和Ant很容易地整合。

    — 對不同性質的被測對象,如Class,JSP,Servlet等,JUnit有不同的測試方法。
      閱讀全文
    posted @ 2009-03-06 10:29 rogerfan 閱讀(1098) | 評論 (0)  編輯

         摘要: 1. 美國Segue公司的Silk系列產品Segue公司一直專注于軟件質量優化領域。在Segue的產品套件中,擁有業內最強勁且最容易使用的、用于企業應用測試、調優和監測的自動化工具,能夠幫助用戶保障應用在其生命周期內的可靠性和性能。
     
      (1) SilkPerformer——企業級性能測試工具u 企業級自動化測試工具能夠支持多種系統,如Java、。Net、Wireless、COM、CORBA、Oracle、Citrix、MetaFrame、客戶機/服務器、以及各種ERP/CRM應用u 多項專利技術精確模擬各種復雜的企業環境u 可視化腳本記錄功能及自定義工具簡化了測試創建工作u SilkPerformer的Java/.NET瀏覽器以及JUnit/NUnit測試輸入功能簡化了對并發訪問情況下遠程應用組件的早期負載測試工作u 方便易用,工作流向導會逐步引導用戶完成整個測試流程  閱讀全文
    posted @ 2009-03-06 10:06 rogerfan 閱讀(346) | 評論 (0)  編輯

         摘要: 引言

      一個例子

      我們先看一個例子,以了解對”規則”做單元測試的特點。我們有一個性能調優工具 WPA, 它能夠將與性能相關的參數的值進行評估并推薦最優值。它的評估和推薦最優值算法都是基于”規則”的。

      Java 虛擬機的初始堆大小(JVM initial heap size)是一個影響 JVM 的性能的關鍵參數。性能調優工具 WPA 有一套規則對“ JVM initial heap size ”的值進行評估(參見清單 1)。評估的結果有 5 個級別。級別“ 1 ”表示設置良好,可提高性能;級別“ 5 ”表示設置很差,會降低性能。
      閱讀全文
    posted @ 2009-03-06 10:04 rogerfan 閱讀(390) | 評論 (0)  編輯

         摘要: 引言

    毋庸置疑,程序員要對自己編寫的代碼負責,您不僅要保證它能通過編譯,正常地運行,而且要滿足需求和設計預期的效果。單元測試正是驗證代碼行為是否滿足預期的有效手段之一。但不可否認,做測試是件很枯燥無趣的事情,而一遍又一遍的測試則更是讓人生畏的工作。幸運的是,單元測試工具 JUnit 使這一切變得簡單藝術起來。

    JUnit 是 Java 社區中知名度最高的單元測試工具。它誕生于 1997 年,由 Erich Gamma 和 Kent Beck 共同開發完成。其中 Erich Gamma 是經典著作《設計模式:可復用面向對象軟件的基礎》一書的作者之一,并在 Eclipse 中有很大的貢獻;Kent Beck 則是一位極限編程(XP)方面的專家和先驅。

    麻雀雖小,五臟俱全。JUnit 設計的非常小巧,但是功能卻非常強大。Martin Fowler 如此評價 JUnit:在軟件開發領域,從來就沒有如此少的代碼起到了如此重要的作用。它大大簡化了開發人員執行單元測試的難度,特別是 JUnit 4 使用 Java 5 中的注解(annotatio  閱讀全文
    posted @ 2009-03-06 09:59 rogerfan 閱讀(357) | 評論 (0)  編輯

         摘要: 單元測試基礎

      當今軟件測試十分盛行時,本人通過項目實踐和個人親身體會淺談單元測試,本人一直堅持“用代碼說話的原則”,同時也希望個人能給出寶貴意見,共同探討、共同進步,為中國軟件事業有更大的發展共同奮斗!

      最早我們項目組開發的項目時,寫代碼都是從底層一直寫到表現層到jsp,然后開發人員在web層調試頁面,近乎98%都會報一大堆exception,然后再在代碼中加斷點一步一步查到底哪一層代碼出現問題……,比較好點做法就是在各個類中加上main方法測試,但總體很不理想,給web層開發人員的調試和質量控制人員帶來繁重的工作壓力;使用單元測試后,針對每一個方法都做嚴格的把關,大大減少調試的時間;同時質量控制人員返回過來的bug少了近60%,現在對于開發人員寫測試用例非常熟練,并且本人根據實際情況對測試用例做了點小小改動(這部分主要在后面代碼中詳述),帶來很好的效果!
      閱讀全文
    posted @ 2009-03-06 09:55 rogerfan 閱讀(1072) | 評論 (0)  編輯

         摘要: 1. UltraEdit官方網站下載所需文件格式的語法方案
    http://www.ultraedit.com/index.php?name=Content&pa=showpage&pid=40#wordfiles
    也可以打包下載所有的wordfiles,1.32MB

    2. 每個wordfile是一個*.txt文件,第一行:/L20"Fortran 90" FORTRAN_LANG Line Comment =......
    /L20指的就是它將被設置為UltraEdit的第20種高亮顯示語言(在View->Syntax Highlighting)下可以看到已有哪些類型了。可以將該數字改為1-20(因為UltraEdit只一次支持20種)的任何一個數字,只要不和其它的高亮方案沖突即可。  閱讀全文
    posted @ 2009-01-15 17:45 rogerfan 閱讀(1783) | 評論 (0)  編輯

         摘要: Log4J日志管理類使用詳解,java開發必備,不多說了

    一、前言:
    log4j 是一個開放源碼項目,是廣泛使用的以Java編寫的日志記錄包。由于log4j出色的表現, 當時在log4j完成時,log4j開發組織曾建議sun在jdk1.4中用log4j取代jdk1.4 的日志工具類,但當時jdk1.4已接近完成,所以sun拒絕使用log4j,當在java開發中實際使用最多的還是log4j, 人們遺忘了sun的日志工具類。 它的一個獨有特性包括在類別中繼承的概念。通過使用類別層次結構,這樣就減少了日志記錄輸出量,并將日志記錄的開銷降到最低。

    它允許開發者控制以任意間隔輸出哪些日志語句。通過使用外部配置文件,完全可以在運行時進行配置。幾乎每個大的應用程序都包括其自己的日志記錄或跟蹤 API。經驗表明日志記錄是開發周期中的重要組成部分。同樣,日志記錄提供一些優點。首先,它可以提供運行應用程序的確切 上下文。一旦插入到代碼中,生成日志記錄輸出就不需要人為干涉。其次,日志輸出可以保存到永久媒體中以便以后研究。最后,除了在開發階段中使用,十分豐富的日志記  閱讀全文
    posted @ 2009-01-08 15:15 rogerfan 閱讀(319) | 評論 (0)  編輯

         摘要: 【IT168 快訊】11月22日消息,據市場分析機構Evans Data的一項調查報告顯示,接近半數的Java企業使用了輕量級開源Java框架Spring。另外,73%的受訪機構表示,它們有的已經在使用Spring框架,有的則計劃在兩年之內使用它。這些機構在企業應用開發過程中使用Spring框架的關鍵原因是,該框架簡單易用,可以讓應用程序開發者具有很高的開發效率。
      最近Evans Data的一個調查報告顯示,Spring框架市場已經頗具規模,而且仍然在繼續高速增長。
      閱讀全文
    posted @ 2009-01-07 11:38 rogerfan 閱讀(218) | 評論 (0)  編輯

         摘要: 18.14 系統初始化模塊
    用戶登錄后,選擇“系統管理”→“系統初使化”菜單項,進入到系統初使化,在該頁面中將顯示提示信息,單擊【進行系統初使化】按鈕,將進行系統初使化操作。系統初始化頁面運行結果如圖18.31所示。
    18.15 疑難問題分析與解決
    18.15.1 在Struts中解決中文亂碼
    通常情況下解決中文亂碼采用的是編寫一個將ISO-8859-1編碼轉換為gb2312編碼的方法,然后在出現亂碼的位置調用該方法即可達到解決中文亂碼的目的,但是這樣做很不方便。Struts提供了一個快速解決中文亂碼的方法,那就是通過配置和擴展RequestProcessor類實現。下面將詳細介紹在Struts中解決中文亂碼的方法。
      閱讀全文
    posted @ 2009-01-07 10:46 rogerfan 閱讀(275) | 評論 (0)  編輯

         摘要: 18.13 查詢統計模塊
    18.13.1 查詢統計模塊總體架構
    查詢統計模塊主要包括以下功能。

    ● 采購單查詢:用于根據不同的條件查詢采購單信息。

    ● 入庫查詢:用于根據不同的條件查詢入庫單信息。

    ● 部門領用查詢:用于根據不同的條件查詢部門領用信息。

    ● 部門領用匯總:用于根據不同的條件對部門領用信息進行匯總。

    ● 部門報損查詢:用于根據不同的條件查詢部門報損信息。

    ● 部門報損匯總:用于根據不同的條件對部門報損信息進行匯總。

    ● 借出查詢:用于根據不同的條件查詢物資借出及歸還信息。

    ● 部門匯總:用于對全部或指定時間段內部門領用及報損的物資信息進行匯總。
      閱讀全文
    posted @ 2009-01-07 10:44 rogerfan 閱讀(271) | 評論 (0)  編輯

         摘要: 18.12 物資處理模塊
    18.12.1 物資處理模塊總體架構
    物資處理模塊主要包括以下功能。

    ● 庫存盤點:用于分頁打印庫存盤點表;

    ● 部門報損:用于對部門報損信息進行登記。
      閱讀全文
    posted @ 2009-01-07 10:43 rogerfan 閱讀(247) | 評論 (0)  編輯

         摘要: 18.11 物資出庫模塊
    18.11.1 物資出庫模塊總體架構
    物資出庫模塊主要包括以下功能:

    ● 部門領用:用于對部門領用信息進行登記;

    ● 物資借出:用于對物資借出信息進行登記;

    ● 借出審核:用于對物資借出信息進行審核。
      閱讀全文
    posted @ 2009-01-07 10:42 rogerfan 閱讀(176) | 評論 (0)  編輯

         摘要: 18.10 物資入庫模塊
    18.10.1 物資入庫模塊總體架構
    物資入庫模塊主要包括以下功能。

    ● 采購登記:用于進行采購登記。

    ● 審核入庫:用于對采購單進行審核操作,審核合格的采購單將進行入庫操作,審核不合格的采購單將作廢。

    ● 借出歸還:用于對已借出的物資進行歸還登記。
      閱讀全文
    posted @ 2009-01-07 10:41 rogerfan 閱讀(472) | 評論 (0)  編輯

         摘要: 18.9 物資管理模塊
    18.9.1 物資管理模塊總體架構
    1.模塊功能介紹
    物資管理模塊主要包括以下功能。

    ● 查看物資列表:用于分類顯示未刪除的和已刪除的物資信息;

    ● 添加物資信息:用于添加物資信息;

    ● 修改物資信息:用于修改物資信息;

    ● 刪除/恢復物資信息:用于刪除或恢復物資信息。
      閱讀全文
    posted @ 2009-01-07 10:40 rogerfan 閱讀(280) | 評論 (0)  編輯

         摘要: 18.8 用戶管理模塊
    18.8.1 用戶管理模塊總體架構
    1.模塊功能介紹
    用戶管理模塊主要包括以下功能。

    ● 用戶登錄:用于登錄系統。

    ● 添加用戶:用于添加用戶信息。

    ● 查看用戶列表:用于查詢并顯示系統中的除超級用戶mr之外的用戶及其權限信息。

    ● 修改用戶權限:用于修改或設置用戶權限。

    ● 刪除用戶:用于刪除系統中的用戶及權限信息。

    ● 修改密碼:用于用戶登錄后修改自己的密碼。
      閱讀全文
    posted @ 2009-01-07 10:39 rogerfan 閱讀(563) | 評論 (0)  編輯

         摘要: Hibernate作為一個成熟且功能強大的持久層框架,它對JDBC進行了輕量級的對象封裝,使程序員可能隨心所欲地使用面向對象編程思想來操縱數據庫。Struts作為一款優秀的基于MVC的Java Web框架,已經得到了廣大企業和Java Web程序員的認可。Struts+Hibernate可謂開發Web程序的黃金組合。

    本章將介紹運用Struts+Hibernate開發物資管理系統的全過程。本系統具有以下亮點。

    ● 通過Struts框架實現MVC模式,不但可以提高網站的開發速度,而且可以增強程序的可讀性和易維護性。

    ● 系統中采用了Struts的RequestProcessor類解決中文亂碼問題,使原本繁瑣的工作變得非常簡單。

    ● 通過Hibernate的HQL查詢及關聯操作使數據檢索操作變得簡單易行。
      閱讀全文
    posted @ 2009-01-07 10:37 rogerfan 閱讀(461) | 評論 (0)  編輯

         摘要: 命令行 Subversion 入門
    如果您參與的項目正在使用 Subversion 進行版本控制,您將需要使用 Subversion 訪問和更改項目源文件。您可以點擊項目的左側導航窗格上的“Subversion”鏈接,在線瀏覽源代碼以查看該項目的目錄結構和文件。

    “Subversion”頁面顯示三個子目錄:branches/、tags/、trunk/ 和一個自述文件。自述文件可以使您對 Subversion 存儲庫有一個整體了解。您可以點擊“訪問選項”,查看 Subversion 客戶端安裝說明。您的本地計算機上必須安裝有 Subversion 客戶端。
      閱讀全文
    posted @ 2009-01-04 11:10 rogerfan 閱讀(121) | 評論 (0)  編輯

         摘要: Eclipse的商業智能和報表工具(BIRT)項目是一個基于當今流行的Eclipse IDE的開源項目,用于在Java或者J2EE環境下構建和部署報表。該項目提供的主要下載項中包括以下內容:
    BIRT設計器—用來構建報表。
    Web查看器—一個用來部署報表的J2EE示例,其中包含了一個JSP標簽庫以降低與現存的web應用的耦合。
    BIRT制圖包—支持構建復雜的圖表。
      閱讀全文
    posted @ 2008-09-05 14:29 rogerfan 閱讀(1648) | 評論 (0)  編輯

         摘要: 我做Java編程大概有四年了,但我仍然處在從Java初級程序員向中級程序員過渡的階段。 Java 包含的東西實在太多,三大體系 J2ME,J2SE,J2EE 每個都包含了大量的內容,身為一個 Java 程序員其實挺悲哀的,不僅要不停地學習那么多基礎知識,還要應付層出不窮的框架。不光要學理論,還要注重實踐。想想原來搞 Perl, PHP 的時候,哪來的那么多知識點。雖然我的Java水平不高,但我始終對要學的東西保持自己的看法,對于技術我總是抱著懷疑一切的態度,有時候甚至很固執,就算我是錯的,我也要自己撞了南墻來體驗。我的觀點是:"好話左右不了我,我會自己判斷的。大家都說好,我可能偏不喜歡"。

    我曾經在編程技術上做過四次選擇:
    1:選擇了 Velocity ,放棄了 JSP.
    2: 選擇了 Ruby ,放棄了 Python.
    3: 選擇了 Hivemind, 放棄了 Spring.
    4: 選擇了 Intellij, 放棄了 Eclipse.
      閱讀全文
    posted @ 2008-09-02 17:23 rogerfan 閱讀(652) | 評論 (0)  編輯

         摘要: Torque是Apache的公開源代碼項目,最開始是Turbine框架的組成部分,后面被獨立出來作為一個單獨的組件,歸入了Apache的DB項目下。目前最新的版本是3.3。Torque的主要功能是實現對數據庫的訪問,方式是通過生成訪問數據庫的資源(包括創建數據庫、表和初始化表的sql語句)和java代碼、提供使用這些代碼訪問數據庫的運行時(runtime)環境。關于Torque的詳細介紹請大家參考http://db.apache.org/torque/。

    目前Torque支持的數據庫包括mysql、oracle、sqlserver、db2等,還包括對weblogic的數據源的支持,詳細的支持列表大家可以到http://db.apache.org/torque/查找到,你還可以參考http://db.apache.org/torque/db-adapters.html編寫你自己的數據庫支持類。
      閱讀全文
    posted @ 2007-11-14 14:57 rogerfan 閱讀(953) | 評論 (0)  編輯

         摘要: 名聲顯赫而招搖的數據持久層框架Hibernate,通過query.setFirstResult和query.setMaxResult來實現了對數據的分頁,這個分頁的實質在SqlServer中是TOP N的方法,Oracle是rownum
    但是,Hibernate分頁,并不能得到頁腳,所以尚不通用。承接Jpage分頁的方便性,寫了這版分頁,以方便已與群眾。

    下面,就是在Hibernate下的通用分頁,屬于Jpage分頁的第三項功能。思路是定義一個Dao類,讓其它數據庫的dao都繼承這個Dao類。  閱讀全文
    posted @ 2007-11-01 21:32 rogerfan 閱讀(1236) | 評論 (2)  編輯

         摘要: 一、前言

      在企業的信息系統中,報表處理一直占比較重要的作用,本文將介紹一種生成PDF報表的Java組件--iText。通過在服務器端使用Jsp或JavaBean生成PDF報表,客戶端采用超級連接顯示或下載得到生成的報表,這樣就很好的解決了B/S系統的報表處理問題。

      二、iText簡介

      iText是著名的開放源碼的站點sourceforge一個項目,是用于生成PDF文檔的一個java類庫。通過iText不僅可以生成PDF或rtf的文檔,而且可以將XML、Html文件轉化為PDF文件。

      iText的安裝非常方便,在http://www.lowagie.com/iText/download.html - download 網站上下載iText.jar文件后,只需要在系統的CLASSPATH中加入iText.jar的路徑,在程序中就可以使用iText類庫了。  閱讀全文
    posted @ 2007-09-15 13:43 rogerfan 閱讀(1812) | 評論 (6)  編輯

         摘要: 對于singleton bean,Spring容器知道bean何時實例化結束,何時銷毀,Spring可以管理實例化結束之后,和銷毀之前的行為,管理bean的生命周期行為主要未如下兩個時機:

    Bean全部依賴注入之后
    Bean即將銷毀之前

    (1)依賴關系注入后的行為實現:
    有兩種方法:A.編寫init方法 B.實現InitializingBean接口
      閱讀全文
    posted @ 2007-09-11 20:47 rogerfan 閱讀(680) | 評論 (0)  編輯

         摘要: (一)Turbine簡介
    1. 概述
    Turbine是Apache Jakarta項目中的一個開源的服務器端Java框架。任何支持Servlet2.2或以上規范的容器都可以運行Turbine應用程序。
    當然,Turbine的最大優勢是免費,并且向開發人員提供全部的源代碼。

    表示層 - Velocity or JSP
    數據庫層(持久層) - Turbine 使用 Torque, 但是也支持其他的持久層工具,如OJB或者 Hibernate。.
    HTML 表單數據驗證使用 "Intake"-Service.
    日志(Logging) - Turbine 使用 Commons Logging并且支持眾多的日志輸出工具,如Log4J。(注:Scarab使用Log4j,不過有些問題。), jdk14 or simple file logging
    基于服務的框架,在Turbine2.4及以后版本中使用和Avalon框架兼容的組件。   閱讀全文
    posted @ 2007-09-07 15:24 rogerfan 閱讀(1703) | 評論 (0)  編輯

         摘要: Genuitec宣布:MyEclipse 6.0發布了。MyEclipse 6.0的發布極大的增強了Eclipse 3.3/Europa集成開發環境的功能,增加了Java 6支持的組件和加快了AJAX的開發率,革命性的提高了開發者的開發效率。

      另外,MyEclipse 6.0現在已經和Spring、JPA整合。這項整合,允許用戶們創建實體管理器和事務beans, 生成實體和DOA。這些功能很大程度上多虧有了MyEclipse。  閱讀全文
    posted @ 2007-09-06 17:34 rogerfan 閱讀(599) | 評論 (0)  編輯

         摘要: Hibernate一共包括了23個jar包,令人眼花繚亂。本文將詳細講解Hibernate每個jar包的作用,便于你在應用中根據自己的需要進行取舍。

    下載Hibernate,例如2.0.3穩定版本,解壓縮,可以看到一個hibernate2.jar和lib目錄下有22個jar包:

    hibernate2.jar:

    Hibernate的庫,沒有什么可說的,必須使用的jar包   閱讀全文
    posted @ 2007-09-06 16:47 rogerfan 閱讀(277) | 評論 (0)  編輯

         摘要: Ajax不是萬能的,在適合的場合使用Ajax,才能充分發揮它的長處,改善系統性能和用戶體驗,絕不可以為了技術而濫用。Ajax的特點在于異步交互,動態更新web頁面,因此它的適用范圍是交互較多,頻繁讀取數據的web應用。現在來看幾個Ajax的應用實例,讀者可以了解如何使用Ajax技術改進現有的web應用系統。  閱讀全文
    posted @ 2007-09-05 17:19 rogerfan 閱讀(1271) | 評論 (2)  編輯

         摘要: 前端時間在論壇里回了fins的一個帖子(http://daoger.javaeye.com/blog/40310)后,有幾個網友想看我的例子代碼,由于搞自己的一個小系統比較忙,在這里簡單說一下dhtmlXGrid的使用心得!
    我現在使用的版本是1.2(免費版),我的實現也大部分基于這個免費版,有哪位老兄能提供一份專業版的話更好了!
    1.2免費版中的一些功能其實是1.1專業版中的!廢話少說,切入正題!  閱讀全文
    posted @ 2007-09-03 13:51 rogerfan 閱讀(6982) | 評論 (3)  編輯

         摘要: 前言
    在java的應用領域,有許多成熟的開源軟件,利用它們一樣可以打造優越、靈巧的應用框架,本文首先將先介紹 所要構建的系統結構和借助的開源產品。然后逐一講解各開源軟件的具體運用。希望本文能給那些正在學習這些 開源軟件的同行提供參考。續該文之后筆者將結合這些開源軟件,借助實際項目,做更深入的應用講解。

    本文中涉及到的例子、源代碼均經過本人調試,且正常運行的,但是不否定這其中有不合理的使用。運行環境: win2000 adivance server + tomcat5.0.25 + mysql-4.0.14-nt

    第 1 章 整體框架
    筆者在項目中所搭建的架構參考了 “Mark Eagle” 的《Wiring Your Web Application with Open Source Java》 一文中所闡述的架構思想。   閱讀全文
    posted @ 2007-06-28 13:45 rogerfan 閱讀(970) | 評論 (0)  編輯

    主站蜘蛛池模板: 一级一看免费完整版毛片| 亚洲国产成人五月综合网| WWW免费视频在线观看播放| 亚洲日韩一中文字暮| 亚洲综合小说久久另类区| 亚洲精品中文字幕无码蜜桃| 国产免费拔擦拔擦8x| 日本精品人妻无码免费大全| 久久永久免费人妻精品下载| 99re8这里有精品热视频免费| 黄色网址在线免费观看| 亚洲精品国产av成拍色拍| 99999久久久久久亚洲| 亚洲天堂福利视频| 99久久精品国产亚洲| 亚洲AV电影院在线观看| 久久久青草青青国产亚洲免观| 国产成人精品高清免费| 韩国欧洲一级毛片免费| 在线免费一区二区| 免费看国产成年无码AV片| 免费可以看黄的视频s色| 免费观看国产网址你懂的| 99久久久国产精品免费牛牛四川 | 95老司机免费福利| 国产激情免费视频在线观看 | 国产亚洲真人做受在线观看| 国产精品亚洲mnbav网站 | 亚洲国产精品美女| 亚洲国产精品人久久电影| 亚洲国产精品成人综合久久久| 亚洲成在人线中文字幕| 亚洲一区二区三区深夜天堂 | 永久免费看mv网站入口| 午夜时刻免费入口| 国产无遮挡裸体免费视频| 亚洲国产综合久久天堂| 中文字幕在亚洲第一在线| 国产国拍亚洲精品mv在线观看 | 日韩精品极品视频在线观看免费| 无码av免费一区二区三区试看|