SQLの窓

2013年06月17日


SQL 文へのデータバインド用 public class GetSQL

やり方としてはごく一般的なものですが、プログラマ初心者の発想には無いものだと思われます。
import java.util.Iterator;
import java.util.Map;

public class GetSQL {
	
	private String target;

	public GetSQL(String target) {
		this.target = target;
	}

	public String buildSQL(Map<String,String> rdata) {
		String result = target;
		
		Iterator<String> it =  rdata.keySet().iterator();
		String key = null;
		String value = null;
		String data = null;
		while(it.hasNext()) {
			key = it.next().toString();
			data = "$" + key;
			value = rdata.get(key);
			result = result.replace(data, value);
		}		
		return result;
	}

}

▼ 以下使用方法


replace メソッドは、正規表現では無く CharSequence での処理ですが、二箇所の $insert_date が一度の実行で置き換えられています。


posted by lightbox at 2013-06-17 17:00 | Java | このブログの読者になる | 更新情報をチェックする

2013年04月20日


ADT( Android Development Tools ) Eclipse に Window Builder をインストールして Swing アプリケーションを作成する(2)

ADT( Android Development Tools ) Eclipse に Window Builder をインストールして Swing アプリケーションを作成する(1) からの続きです。

Swing プロジェクトの作成

新規でまず、Java プロジェクトを作成します



JRE は、1.6 を選べます



作成したプロジェクトから、新規作成て『その他』を選択します



Window Builder 内の Swing Designer で JFrame を選択します



名前を入力します



contentPane を選択して、レイアウトを絶対指定に設定します
( Window のサイズは、JFrame を選択します )



ボタンを追加します



イベントを追加します



イベント内にテストコードを記述します



実行して動作を確認します






関連する記事


posted by lightbox at 2013-04-20 20:47 | Java | このブログの読者になる | 更新情報をチェックする

2009年09月26日


Java : Windows の環境変数の列挙( 含ソート )

Java は SDK だけでは、何をするにも回りくどい感があります。
また、実際の実装時には考慮しなければならない専門知識が多いと思います。

ですが、Java ができたなら、VB.NET,C#,ActionScript,JavaScript,PHP は楽勝でしょう
import java.util.*;

public class Main {

	public static void main(String[] args) {

		// 環境変数取り出し
		Map<String, String> myData = System.getenv();
		
		// 列挙の準備
		Set myKeyset = myData.keySet();
		Iterator myIterator = myKeyset.iterator();

		// 列挙
		String strKey = null;
		String strValue = null;
		while( myIterator.hasNext() ) {
			// キーの取り出し
			strKey = (String)myIterator.next();
			// 値の取り出し
			strValue = (String)myData.get(strKey);
			System.out.println( strKey + " : " + strValue );
		}

		System.out.println( "-----------------------------------" );

		// ソートして列挙
		int i = 0;

		Object[] myKeyArray = myKeyset.toArray();
		Arrays.sort(myKeyArray);
		for( i = 0 ; i < myKeyArray.length; i++ ) {
			// キーの取り出し
			strKey = (String)myKeyArray[i];
			// 値の取り出し
			strValue = (String)myData.get(strKey);
			System.out.println( strKey + " : " + strValue );
		}

	}

}



タグ:java
posted by lightbox at 2009-09-26 20:50 | Java | このブログの読者になる | 更新情報をチェックする

Java : クラスメソッドとインスタンスメソッド

概要
クラスメソッドは static で定義され、実行時に常に全ての情報を渡す
他言語における一般的な「関数」にあたります。

インスタンスメソッドは、実行単位毎にメモリ上に存在して、
各々固有の情報を持ちます。それは、コンストラクタでインスタンス作成時
に渡される場合もありますが、後からメソッドでデータを引き渡す場合も
あります。

それらは、内部で保持される為、その値を使うメソッドを実行する場合、
呼び出すたびに値を引き渡す必要はありません


Main.java
import lightbox.*;

public class Main {

	public static void main(String[] args) {

		System.out.println(Test.getDateSystem());
		
		Test lb = new Test();
		System.out.println(lb.getDateString());

	}

}



Test.java
package lightbox;

import java.text.DateFormat;
import java.util.Date;

public class Test {

	private Date myDate = null;
	
	// *****************************************************
	// コンストラクタ 
	// *****************************************************
	public Test() {
		myDate = new Date();
	}

	// *****************************************************
	// 日付文字列 ( インスタンス ) 
	// インスタンス作成時の日付
	// *****************************************************
	public String getDateString( ) {

		String strDate = null;

		strDate = DateFormat.getDateInstance().format(myDate);

		return strDate;

	}

	// *****************************************************
	// 日付文字列 ( クラス ) :
	// 呼び出した時の日付
	// *****************************************************
	public static String getDateSystem( ) {

		Date myDate = null;
		String strDate = null;

		myDate = new Date();
		strDate = DateFormat.getDateInstance().format(myDate);

		return strDate;

	}

}



タグ:java
posted by lightbox at 2009-09-26 19:57 | Java | このブログの読者になる | 更新情報をチェックする

2009年09月16日


Java : システムプロパティと実行時のディレクトリ情報の取得


import java.io.File;

public class Main {

	public static void main(String[] args) {

		// 以下の二通り、いずれも。
		// Eclipse からだと Main.class ではなくプロジェクトディレクトリ
		// そのディレクトリで java Main とすれば、そのディレクトリ

		String sCurrentDir = new File(".").getAbsoluteFile().getParent();

		System.out.println(sCurrentDir);

		sCurrentDir = System.getProperty("user.dir");

		System.out.println(sCurrentDir);

		// コマンドラインの引数で、java -cp . Main "%cd%" 
		// とすれば実行時のカレントディレクトリ
		// eclipse の構成ならば、${project_loc}\bin を引数にセットする
		System.out.println(args[0]);

	}

}


キー対応する値の説明
java.versionJava Runtime Environment のバージョン
java.vendorJava Runtime Environment のベンダー
java.vendor.urlJava ベンダーの URL
java.homeJava のインストール先ディレクトリ
java.vm.specification.versionJava Virtual Machine の仕様バージョン
java.vm.specification.vendorJava Virtual Machine の仕様のベンダー
java.vm.specification.nameJava Virtual Machine の仕様名
java.vm.versionJava Virtual Machine の実装バージョン
java.vm.vendorJava Virtual Machine の実装のベンダー
java.vm.nameJava Virtual Machine の実装名
java.specification.versionJava Runtime Environment の仕様バージョン
java.specification.vendorJava Runtime Environment の仕様のベンダー
java.specification.nameJava Runtime Environment の仕様名
java.class.versionJava クラスの形式のバージョン番号
java.class.pathJava クラスパス
java.library.pathライブラリのロード時に検索するパスのリスト
java.io.tmpdirデフォルト一時ファイルのパス
java.compiler使用する JIT コンパイラの名前
java.ext.dirs拡張ディレクトリのパス
os.nameオペレーティングシステム名
os.archオペレーティングシステムのアーキテクチャ
os.versionオペレーティングシステムのバージョン
file.separatorファイル区切り文字 (UNIX では "/")
path.separatorパス区切り文字 (UNIX では ":")
line.separator行区切り文字 (UNIX では "\n")
user.nameユーザのアカウント名
user.homeユーザのホームディレクトリ
user.dirユーザの現在の作業ディレクトリ



タグ:java
posted by lightbox at 2009-09-16 12:36 | Java | このブログの読者になる | 更新情報をチェックする

javaサンプル : ファイルを開くダイアログ

要点
FileDialog の親ウインドウとして、JFrame を作成しています。
実際使う場合は、jFrame.setVisible(true); は必要ありません。( setSizeも )
flDialog.setVisible(true); は、ファイルを開くダイアログが閉じられるまで
制御を戻しません( 解りづらいですね )

import java.awt.FileDialog;
import javax.swing.JFrame;

public class Main {

	public static void main(String[] args) {
		
		JFrame jFrame = new JFrame();
		jFrame.setSize(300, 300);
		jFrame.setVisible(true);
		
		FileDialog flDialog = new FileDialog(jFrame);
		flDialog.setMode(FileDialog.LOAD);
		flDialog.setVisible(true);
		
		String file = flDialog.getFile();
		String dir = flDialog.getDirectory();
		System.out.println(dir + file);
		
		flDialog.dispose();
		jFrame.dispose();

	}

}

eclipse( Galileo 3.5 ) では、メニューの新規から java プロジェクトを作成し、
プロジェクトを選択して右クリックで「クラス」を作成します
Jclass


posted by lightbox at 2009-09-16 10:51 | Java | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり