• [Java]eclipseセットアップ
①フォントの設定
 
Windows
⇒Preferrence
⇒Fonts
でText Fontを変更する。
 
 
②JDKの設定
デフォルトでは、
JREのjava.exeが設定されているので
JDKのjava.exeに変更する。
 
Windows
⇒Preference
⇒Java
⇒Installed JREs
で
Standard VMにJREがデフォルトチェックが
入っている
これに
インストールしてあるJDK1.4.XのJDKを設定する。
 
●TOMCATプラグイン動作方法
 
②のJDK設定の後、
Windows
⇒Preference
⇒Tomcat
⇒TOMCATの設定
でJREを変更したJDK1.4.xのものを指定する。
 
●JSP.XMLの色分けプラグインの設定
(Solar Eclipse Web)
Windows
⇒Preference
⇒Solar Eclipse Web
で
Add To List に xml を追加
 

  • [Java]HTTPでHTMLをゲット

■実行方法
以下の内容の.batファイルを作成、第一引数のURLHTMLファイルを標準出力する。
 
java -Dhttp.proxyHost=proxy1.wwww.abc.co.jp -Dhttp.proxyPort=8080 DisplayURL2 %1 
 
 
import java.io.*;
import java.net.*;
 
public class DisplayURL2{
 public static void main(String[] args){
  for(int i=0; i<args.length;i++){
   System.out.println("URL= "+ args[i]);
 
   try{
    URL url = new URL(args[i]);
    BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream(),"Shift_JIS"));
 
    String line="";
 
    while((line =reader.readLine()) != null){
     System.out.println(line); 
    }
 
    reader.close();
 
   }catch(MalformedURLException e){
    System.out.println("URLの形式が間違っています:" + e);   
   }catch(IOException e){
    System.out.println("I/Oエラーです:" +e);
   }
 
  }
 }
 

}}


  • [Java]JUnit使用例
■JUnitのテスト画面起動
 
>java junit.ui.TestRunner
 
 
■サンプルコード
 
●テスト対象クラス 
 
public final class Sample{
 public int value = 0;
 
 Sample(int v){
  this.value = v;
 }
 
 public int twice(){
  this.value *= 3;
  //this.value *=2;
  return(this.value);
 }
 public int add1(){
  this.value+=1;
  return(this.value);
 }
}
 
●Sampleクラスに対するテスト実行クラス
import junit.framework.*;
 
public final class SampleTester extends TestCase{
 public SampleTester(String name){
  super(name);
 }
 
 protected void setUp(){
  //ここで設定する 
 }
 
 public static TestSuite suite(){
  TestSuite suite = new TestSuite();
  //テストケースを加える
  suite.addTest(new SampleTester("testAdd1"));
  suite.addTest(new SampleTester("testTwice"));
 
  return suite;
 }
 
 
 //テスト用メソッドの記述
 public void testAdd1(){
  Sample s1 = new Sample(10);
  s1.add1();
  assert(s1.value == 11);
 }
 
 public void testTwice(){
  Sample s1 = new Sample(10);
  Sample s2 = new Sample(5);
 
  assert(s1.value != s2.value);
 
  s2.twice();
 
  assert(s1.value == s2.value);
 
}
}   //end of SampleTester
 
 
使用法:
 
SampleTester.classのあるフォルダから
>java junit.ui.TestRunner
でGUIを起動し、
testclassnameに SampleTester と入力しRUNボタンを押す。
その結果が表示される。
 
 

  • [Java]MyDBAccess.java

//package myjdbc;
//import myjdbc.*;
import java.sql.*;
 
public class MyDBAccess {
 
 private String driver;
 private String url;
 private String user;
 private String password;
 private Connection conn;
 private Statement stmt;
 private ResultSet resultset;
 /**
  * コンストラクタ
  * @param driver ドライバー
  * @param url URL
  * @param user ユーザ名
  * @param password パスワード
  *  
  */
 
 public MyDBAccess(
  String driver,
  String url,
  String user,
  String password) {
  this.driver = driver;
  this.url = url;
  this.user = user;
  this.password = password;
 }
 
 
/*引数なしのコンストラクタ
  * 既定値の利用
  * 
  */
 
 public MyDBAccess() {
  this.driver = "oracle.jdbc.driver.OracleDriver";
  this.url = "jdbc:oracle:thin:@192.168.1.1:1521:DB01";
  this.user = "test";
  this.password = "test";
 
//  this.driver = "com.mysql.jdbc.Driver";
//  this.url = "jdbc:mysql://192.168.1.1/test";
//  this.user = "root";
//  this.password = "";
 }
 
 /**
  * データベースへの接続を行う
  */
 public synchronized void open() throws Exception {
//  Class.forName(driver);
  Class.forName(driver).newInstance();
  conn = DriverManager.getConnection(url, user, password);
  stmt = conn.createStatement();
 }
 
 /**
  * SQL 文を実行した結果の ResultSet を返す
  * @param sql SQL 文
  */
 public ResultSet getResultSet(String sql) throws Exception {
  if (stmt.execute(sql)) {
   return stmt.getResultSet();
  }
  return null;
 }
 
 /**
  * SQL 文の実行
  * @param sql SQL 文
  */
 public void execute(String sql) throws Exception {
  stmt.execute(sql);
 }
 
/**
  * データベースへのコネクションのクローズ
  */
 public synchronized void close() throws Exception {
  if (resultset != null)
   resultset.close();
  if (stmt != null)
   stmt.close();
  if (conn != null)
   conn.close();
 }
 
 public static void main(String[] args) {
  MyDBAccess db = new MyDBAccess();
  try {
   db.open();
   ResultSet rs = db.getResultSet("SELECT * FROM LOGIN_TBL");
   int i=0;
   while (rs.next()) {
    i++;
    String _user_id = rs.getString("USER_ID");
    String _password = rs.getString("PASSWORD");
    System.out.println(i + ":"+ _user_id + "," + _password);
   }
   db.close();
  } catch (Exception e) {
   e.printStackTrace();
  }
 
 }
}
 
 

[Java]OracleJdbcTest1.java

import java.sql.*;
//import jdbc.sql.*;
 
 
public class OracleJdbcTest1 {
 
 
 public static void main (String args [])
   throws SQLException, ClassNotFoundException
 {
    // Connectionの作成
    Class.forName ("oracle.jdbc.driver.OracleDriver");
    Connection conn =
  DriverManager.getConnection ("jdbc:oracle:thin:@192.168.1.1:1521:DB01","scott", "tiger");
//   OCIの場合
//   DriverManager.getConnection ("jdbc:oracle:oci8:@TNSname","scott", "tiger");
 
   // Statement の作成
   Statement stmt = conn.createStatement ();
   // Resultset の作成
   ResultSet rset = stmt.executeQuery ("select ENAME from EMP");
   // データの表示
   while (rset.next ())
  System.out.println (rset.getString (1));
 }
 
 
}
 
 

  • [Java]TripleDES DECODE

import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;
import java.net.URLDecoder;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
import java.io.*;
 
import javax.crypto.BadPaddingException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.SecretKeySpec;
 
 
 
public class  ANGO_DECODE {
 
  byte[] keyMaterial ={
   (byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,
   (byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,(byte)0x12,
   (byte)0xAB,(byte)0xCD,(byte)0xAB,(byte)0xCD,(byte)0xAB,(byte)0xCD,(byte)0xAB,(byte)0xCD
  };
 
  //暗号文
 
 
  //ファイル読み込み
  String line = null;
  String ciphertext = null;
  int count = 0;
 
 try{
 
 
 
  BufferedReader reader = new BufferedReader( new FileReader(args[0]));
 
 
  while( ( line = reader.readLine()) != null){
   count++;
 
   ciphertext = line;
 
  // URLデコード処理
 
  String a1;
  String a2;
 
  a1 = URLDecoder.decode(ciphertext);
 
//  System.out.println("a1=" + a1);
 
 // BASE64デコード処理
 
  byte[] cipherbytes = a1.getBytes();
 
  Base64 base64obj = new Base64();
 
  byte[] base64decbytes = base64obj.decode(cipherbytes);
 
 
  String base64decodeStr = new String(base64decbytes);
 
  //System.out.println("base64decodeStr=" + base64decodeStr);
 
 
 
  // TripleDES復号化処理
 
 
  // TripleDES鍵の生成
  SecretKeySpec tdeskey = new SecretKeySpec(keyMaterial,"DESede");
 
  // Cipherインスタンスの生成
  Cipher desCipher = Cipher.getInstance("DESede");
  // 初期化
  desCipher.init(Cipher.DECRYPT_MODE,tdeskey);
 
  byte[] plainbytes = desCipher.doFinal(base64decbytes); 
  String plaintext = new String(plainbytes);
//  System.out.println("plaintext:"+ plaintext );
 
  System.out.println(count + "," + a1 + "," + plaintext);
 
 
  } //for end
 
 reader.close();
 
 
 
  }catch(NoSuchAlgorithmException e){
   e.printStackTrace(); 
  }catch(NoSuchPaddingException e){
   e.printStackTrace();
  }catch(InvalidKeyException e){
   e.printStackTrace(); 
  }catch(IllegalBlockSizeException e){
   e.printStackTrace(); 
  }catch(BadPaddingException e){
   e.printStackTrace(); 
  }catch(FileNotFoundException e){
   e.printStackTrace();
  }catch(IOException e){
   e.printStackTrace();
  }
 
 
 } 
 
}
 
 

  • [Java]war アーカイブ作成方法

Jarツールを使って、Webアプリケーション全体をアーカイブします。アーカイブしたいWebアプリケーションのルートディレクトリに移動して、以下のコマンドを実行してください。 
 
 
jar  cvf  WARファイル名  ./* 
 
 
 
WARファイル名は当然「.war」の拡張子が必要です。testというディレクトリ配下のWebアプリケーションを test.warというファイル名でアーカイブしたい場合は、testディレクトリに移動して以下のコマンドで行います。 
 
 
jar cvf test.war ./*
 

  • [Java]時間取得

import java.util.*;
import java.io.*;
import java.text.*;
 
public class Utils{
 
 //  getNow("yyyy.MM.dd 'at' hh:mm:ss"); 
 public static String getNow(String dateformat){
  SimpleDateFormat formatter = new SimpleDateFormat(dateformat);
  Date currentTime = new Date();
  String dateString = formatter.format(currentTime);
  return dateString;
 }
 
}
 
 

  • [Java]日本語パラメータ

<%!
 public String toUnicode(String s)
  throws java.io.UnsupportedEncodingException{
 
  return (new String(s.getBytes("8859_1"),"JISAutoDetect"));
 
  }
%>
 
<html>
<body>
<%
 String name= toUnicode(request.getParameter("name") );
%>
 
 
最終更新:2008年01月04日 04:50