2008-01-01から1年間の記事一覧

単純な発想も見方しだいで

マップへのインジェクトが欲しかった、Google guice2.0 に正式リリースが待ち遠しい。 しかたなく、マップ生成にInject実行を隠蔽させることにしてのパターンである。 public class VettyFactory{ private Map<String,Vetty> vmap; public VettyFactory(){ this.vmap = new</string,vetty>…

スレッドローカルで悩むこと

ThreadLocal変数を子スレッドに引き継がせる。などと文字どおりに捉えたら ナンセンスなことを考えてた。 でも実際に必要に迫られる設計もありうる。 InheritableThreadLocal の存在に気がつけば良いのであろうが、 その前は、スレッド生成時、実行前に、Thr…

使ってみると面白いQue

キュー操作というのは実際にコーディングして動かすと面白い。 import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; /** * キュー受信スレッドを定義した ArrayBlockingQueue を持つ抽象クラス * コンストラクタで…

Excel セルの結合操作を素早くする設定

マウス操作でなく、キーボード操作だけでExcel 結合を行うようにする設定 ツールバー[セルの結合]アイコンを右クリック →「ユーザ設定(C)...」を選択 ユーザ設定 ウィンドウが開く →オプションタグを選択表示させる →再度アイコンにカーソルで右クリッ…

Velocityインジェクター

import java.util.Map; import org.apache.velocity.Template; import com.google.inject.Inject; public class SampleVelocity implements VelocityLogic{ @Inject public Template _template; /* (非 Javadoc) * @see VelocityLogic#merge(java.util.Map) …

iBATISがバージョンUP

iBATISページ、時々チェックしてるのだが、2,3日前に、v.2.3.4にUPされてる。 バグ発見により緊急バージョンUPと書かれてたのでさっそくダウンロードして rease.txtを見たら、どうやらresultmap thead safetyの問題らしい。 そんな問題に出くわしたこ…

Digesterで属性認識するときに(2)

昨日ここで、SetPropertiesRuleの特殊パターンを書いたのだから、 ルールXMLでの記述も書いておくべきだ。 【解析対象のXML】 <Project> <Group key="ga" name="グループA" xmlns:group="grpA"> : ---------------- Javaコーディングでは以下のように書いていたのは、 digester.addRule("Project/Group",new SetPropert</group></project>…

Digesterで属性認識するときに

jakarta-commons のdigesterを使っていて、ふと戸惑ったこと、

トリプル DES

import java.security.spec.AlgorithmParameterSpec; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; /** トリプル DES 暗号化/複合化 */ public final …

CipherSample 暗号化処理

暗号化処理 import java.security.AlgorithmParameters; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESedeKeySpec; import javax.crypto.spec.IvParameterSpec; import …

Velocityのevaluate

先日、Velocity1.5 でのテンプレートをファイルでなく文字列インスタンスにある場合の取り扱いを書いたが、 Velocity1.4 から実行可能な、evaluate のサンプルを記しておく。 String template = "======= $foo ========"; StringWriter writer = new StringW…

LOCAL_VARIABLE

いつも思うこと。メソッドの中に書くような自動変数に付与できるLOCAL_VARIABLEのアノテーションを付けたものに、リフレクションで値を注入してみたい。。。 そんなことしたら、とんでもない方向にとは思うのだが。。。 と想いながら、今日はつまらないミス…

使うことがあるかも

transient フィールドだけを修飾することができる。 transient を付けたフィールドは、シリアラズ対象から外れる。

socket

private Socket soc = null; // Client socket. private DataOutputStream out = null; // Data writer (send to Server). private DataInputStream in = null; // Data reader (received from Server). : this.soc = new Socket(this.machine.ipadres,port…

sleep(0)の指定

気になって眠れないことがある。 JavaService.exe で常駐させるプログラムをThread.sleep(0)で待機させることである。 CPUに影響が無いか、stopできるのか。そこから何か創造として広がりがあるのか。 暇をみつけてやってみようと思う。

メモ

メモ、それだけである。何も魅力がないし感情もない。 /** * Unicode(cp932) から JIS へ文字コード変換 * ¥:0xff3c[FULLWIDTH REVERSE SOLIDUS] -> 0x005c[REVERSE SOLIDUS] * ~:0xff5e[FULLWIDTH TILDE] -> 0x301c[WAVE DASH] * ∥:0x2225[PARALLEL TO…

思い出して持ってくる

cron に似たものを作る際に必要なものがある。 スケジュールしたい処理に必要なCLASSPATH をXMLに書くことになるので、途中から、CLASSPATH を追加しなければならない。 そこで、動的なCLASSPATH は追加は、以下のようにする、 URL url; // URLClassLoaderの…

プロンプト

@ECHO OFF @rem ###################################### @rem ## Windows プロンプトの sample.cmd ## @rem ###################################### SETLOCAL set WORK=C:\work c: cd %WORK% @rem # setEnv.cmd にCLASSPATH 設定等を記述、 call %WORK%\bi…

guice インターセプト 2008/01/06 に書いたもの

実際の開発で使ってみた Google guice インターセプタの定義は、 com.google.inject.Module を実装するクラスを用意して configure(com.google.inject.Binder)メソッドで bindInterceptorメソッドによりマッチング条件でインターセプトの バインド定義するわ…

2008/01/04 の投稿 アノテーション

**** インターフェースの定義 public interface Planet{ public void see(); } **** 抽象クラスの定義 public abstract class AbstractPlanet implements Planet{ /* (非 Javadoc) * @see Planet#see() */ @Prefunction("pre") @Aftfunction("aft") public v…

カレンダーMyfaces(2)

JSF,Apache Myfaces の拡張で、カレンダー入力を popup するやつがあるけど、 これが週番号が表示されて、格好わるい。 そこで、週番号を非表示にしようと思ってタグ属性を調べたのだが、 どうも非表示にする属性はないようで、直接、JAR の中で、 カレンダ…

カレンダーMyfaces(1)

カレンダーアイコンで、カレンダー入力させるMyfaces ../images/calendar.gif 画像を用意して、 タグ宣言は、 <%@ taglib uri="">http://myfaces.apache.org/tomahawk" prefix="t"%> popupTodayString="#{example_messages['popup_today_string']}"をやめて…

MyFacesフィルタの例

<context-param> <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name> <param-value>true</param-value> <init-param> <param-name>maxFileSize</param-name> <param-value>20m</param-value> <description>Set the size limit for uploaded files. Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - …</description></init-param></context-param>

JSF定義を分割する

膨大な量の faces-config.xml を分割記述する場合、 カンマ区切りで、configファイルを並べて、 web.xml に以下を記述する。ただし、faces-config.xml は消滅させる <context-param> <param-name>javax.faces.CONFIG_FILES</param-name> <param-value> /WEB-INF/faces-config1.xml ,/WEB-INF/faces-config2.xml </param-value> </context-param>…

cron設定

crontab [- u user] {-l|-r|-e} -e crontabを編集 -l crontabファイルの内容を表示 -r crontabファイルを削除 -u user userで指定したユーザのcrontabファイルを操作の対象(rootで) 分 時 日 月 曜日 コマンド 分 0~59 時 0~23 日 1~31 月 1~12 or jan…

2008/01/02投稿 Perl で検索

=========================== #!/opt/local/perl5/bin/perl # if (1 chdir($ARGV[1]); }else{ print "No such Directory : $ARGV[1]\n"; exit 1; } } }else{ print "\nUsage: ygrep pattern [ Directory ]\n"; exit(1); } $cwd = `pwd`; foreach (`ls -oR`) …

過去のブログから、、EJB

============== Stateless Bean ==================== package bean; import javax.ejb.Remote; import javax.ejb.Stateless; import org.jboss.annotation.ejb.Local; @Stateless @Remote @Local public class CountupBean implements Countup{ /* (non-Jav…

X509

import java.security.cert.X509Certificate; public class ForcedX509TrustManager implements com.sun.net.ssl.X509TrustManager { private X509Certificate chain; private String authType; /** * 信頼されない証明書でも強制的に認証する(クライアント…

2008/01/02投稿 csh で書いた日付など

一度閉鎖したブログをまた復活する目的に、過去の記事を採掘するという普通の人にはありえない事をしています。 3日前をcsh で求めるとき、 #!/bin/csh set REQDAY = 3 @ REQDAY = 24 * $REQDAY - 9 set YMD=`env TZ=JST+$REQDAY date '+%Y%m%d'` set NOW =…

2008/01/01 の投稿

2007年3月に始め、8月に諸事情により閉鎖した 2008年1月にブログを復活。 しばらくの間、前のブログで書いていたメモを載せることに注力する。Oboe 吹きとしての活動もあり書いていくことは、少しずつということで。。。 setenv CLASSPATH ${JSDK}:${CLASSP…