Java
仕事で作ったけど必要なくなったので記録としてエントリーしました.通常のJComboBoxのポップアップはJComboBoxの幅に合わせて表示されます. 以下のコードは表示幅が狭い場合などポップアップ内のアイテムの文字が切れてしまうのを防ぎます. // コンボボック…
spy.propertiesを読み込ますために「p6.home」システムプロパティにファイルのパスを登録します。 このパスはOSに依存したパス形式じゃないと駄目なようです。 試しに「file:///C:/var/log」なんてURI形式で表現は受け付けませんでした。もう一つ混乱するの…
地味にハマったのでメモ コンソール上などプラットフォームの文字コードの指定 Mavenの環境変数にプラットフォームの文字コードを指定する。 特に気にしなくても、デフォルトはプラットフォームの文字コードになってます。 set MAVEN_OPTS=-Dfile.encoding=M…
よく見かける「getId」などは間違いで実は「getID」が正しい。 IDとはIdentityの略なので大文字でIDになるわけだ。当然URLやURI、ASPなども大文字になる。この命名規則を可読性を維持しつつ、コーディングに落とすと以下のようになる。 public class Custome…
JDBCを差し替えてクラスタリングをするタイプのもので手軽かも、よく分かってないんで情報求む!
HttpClientでリトライ処理を行う場合通常は、「org.apache.commons.httpclient.DefaultHttpMethodRetryHandler」を使う。このDefaultHttpMethodRetryHandlerはリクエスト中にIOExceptionが発生した場合に、リトライ対応がされる。 このとき、DefaultHttpMeth…
WEBアプリ作成だとコンテナやコンテキストの設定でプーリングの指定が出来るんですが。Javaアプリでやったことが無かったのでメモメモ。 <bean id="dsAdapter" class="org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS"> <property name="driver" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="user" value="${jdbc.user}"/> </property></property></property></bean>
package lesson.java.lang; public class ThredDeadLockTest { static LockObject lockObjA = new LockObject("lockObjA"); static LockObject lockObjB = new LockObject("lockObjB"); public static void main(String[] args) throws InterruptedException…
使い道は主にGofのデザインパターンのSingletonで良く使われるイディオムです。 また、マルチスレッドでインスタンスの生成を制限する場合も効果的です。 double-checked lockingイディオム 残念ながらJavaではアウトオブオーダーと呼ばれるメモリ制御をして…
@ITの記事で「Java Virtual MachineがJavaの弱点!?」なんて記事があって読んでみると納得。 前からJVMってバグフィックス遅いなーなんて思ってました(思ってただけで自分からバグ報告してなかったですorz)。前に確かI/O処理でバグがあって苦肉の策を取って…
AmazonのECS*1はWSDL*2で定義されたXMLです。 このXMLをJavaに取り込む場合、Javaのオブジェクトにマッピングするわけです。そこでApache AxisのJava2WSDLツールが活躍します。その前に、ECSやWSDLが分からない人はググってください。 この辺の前提知識もあ…
仕事でHibernateより手軽なORマッパーを探していたら、 SeasarのS2Daoがあった、Seasarは日本で流行ってるだけで世界的に見て マイナーだと思って軽視してたが、凄い!手軽さだけならHibernateより S2Daoのほうが上ですよ!ってことで早速、サンプルをサクサ…
しばらく使っていて結構便利だと思ったソフトです。 JDBCを使用してDBに繋ぎに行くので、Javaの開発にはうってつけ!SQuirreL SQL Client http://squirrel-sql.sourceforge.net/
OracleJDBCドライバは「oracle.jdbc.OracleDriver」を使ったほうが良い。 Oracle 9.xまたは10gでは「oracle.jdbc.driver.OracleDriver」は将来的に 拡張されなくなる可能性があるらしいので、「oracle.jdbc.OracleDriver」を使ったほうが良い。http://edocs.…
Tomcatのヒープメモリのサイズ変更するだけで、苦労したorz設定内容はstartup.batに以下のコードを入れてみた。 set JAVA_OPTS="-server -Xms128m -Xmx256m"で、動かない! 仕方ないので、エラーメッセージを見てみると、 Unrecognized option: -server -Xmx…
格子状にレイアウトします。 また、レイアウト対象のコンテナのサイズがバラバラの場合、 一番大きいモノに合わせます。 <canvas height="100" > <view width="200" bgcolor="silver"> <wrappinglayout axis='x' spacing="10"/> <view bgcolor="blue" height="30" width="50"/> <view bgcolor="blue" height="30" width="50"/> <view bgcolor="blue" height="30" width="50"/> </view></view></view></wrappinglayout></view></canvas>
resizelayoutと似ていますが、自動調整のコンテナはoptions属性 で指定しません。指定が無い場合、その場所を自動調整されます。 <canvas height="100"> <view bgcolor="yellow" width="200"> <view bgcolor="blue" height="30" width="50" /> <view bgcolor="red" height="30" width="50" /> <view bgcolor="blue" height="30" width="50" /> </view></view></view></view></canvas>
simplelayoutの逆順になります。 下の例だとsimplelayoutの場合「one two three」になりますが、 reverselayoutでは「three two one」になります。 <canvas height="85"> <view y="40" bgcolor="yellow" width="200"> <reverselayout axis="x"/> <text text="one" /> <text text="two" /> <text text="three" /> </text></text></text></reverselayout></view></canvas>
simplelayoutと似ていますが、どうやら内包するコンテナの位置によって 違いが出るようです。例えば↓のコードは「■◆■ ■◆■」と出るようなコードですが、 simplelayoutのレイアウトだと、図形の頂点の位置から図形のwidthまで を整列しています。simpleboundsl…
axis属性に従ったx方向またはy方向の整列レイアウトです。 <canvas height="85"> <view y="40" bgcolor="yellow" width="200"> <simplelayout axis='x'/> <text text="one" /> <text text="two" /> <text text="three" /> </view > </canvas>
コンテキストのパスは.deployables/{プロジェクト名}を指定します。 http://www.jx-gluck.jp/RepF/Ecli005.html
サイズの自動調整ようのレイアウトです。 例えば、下のコードを見ると、yellowのview要素の幅が200その内側が 「50,*,50」のように*が自動調整されます。 <canvas height="85"> <view y="40" bgcolor="yellow" width="200"> <view bgcolor="blue" height="30" width="50" /> <view bgcolor="red" height="30" options="releasetolayout" /> </view></view></view></canvas>
内包するコンテナのマージンを指定します。 また、constantboundslayoutとの違いは内包するコンテナに xoffsetまたはyoffsetが指定されていた場合、その分のマージンが相殺さます。 <canvas height="85"> <view bgcolor="red" > <view width="80" height="80" bgcolor="teal" xoffset="5" /> <view width="60" height="60" bgcolor="silver"/> <view width="40" height="40" bgcolor="green"/> …</view></view></view></view></canvas>
内包するコンテナのマージンを指定します。 <canvas height="85"> <view bgcolor="red" > <view width="80" height="80" bgcolor="teal" xoffset="5" /> <view width="60" height="60" bgcolor="silver"/> <view width="40" height="40" bgcolor="green"/> <constantboundslayout axis='x' value="10"/> </view > </canvas> http://www.laszlosy…
全てのLayout要素のスーパークラス http://www.laszlosystems.com/lps/docs/lzx-reference/layout.html