2014-06-01から1ヶ月間の記事一覧

【Java】【Tomcat】 Tomcat を Java から 開始・停止 する ~その1~

1-1) Bootstrapを利用する 準備 * $CCATALINA_HOME/bin内のjarファイル「bootstrap.jar」「commons-daemon.jar」「tomcat-juli.jar」を 事前に追加しておくこと サンプル TomcatStartter.java * Tomcat の開始 import org.apache.catalina.startup.Bootstrap…

【Linux】【Eclipse】【Tomcat】Linux(仮想環境) で、JDK / Tomcat / Eclipse の環境を構築する ~openSUSE編~

環境 * ホストOS : Windows 7 * ゲストOS : openSUSE * 仮想化ソフト : VMware(R) Workstation 10.0.2 build-1744117 * JDK : JDK1.8 * Tomcat : Tomcat8 * Eclipse : Eclipse LUNA 手順 1-1) 仮想環境として、Linuxをインストールする [1] VMWare Workstati…

【Windows】【Linux】仮想化ソフト ~導入編~

仮想化ソフト [1] クライアントHyper-V を利用する => Windows8以上 [2] VirtualBox を利用する [3] VMware Player / VMWare Workstation を利用する クライアントHyper-V Windows8 * コントロールパネルで[プログラム]-[Windowsの機能の有効化または無効化]…

【C#】ディレクトリ構造を取得する

■ サンプル * フォルダの中身を確認するための簡易ツールなので出来はよくないです using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Text; using System.Windows.Forms; namespace W…

【Java】【非同期】ExecutorService / Runnableインタフェース

Executors ExecutorService `#`クラス名概要 1newSingleThreadExecutor単一スレッドを作成する 2newFixedThreadPool固定数のスレッドを再利用するスレッドプールを作成する 3newCachedThreadPool必要に応じ、新規スレッドを作成するスレッドプールを作成する…

【Servlet】【JSP】Servlet + JSP でログアウト(ログオフ)機能を実装する

サンプル View class LogonView.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> http://www.w3.org/TR/html4/loose.dtd"> <html> <head> </head></html>

【Servlet】 ZIP圧縮と同時にファイルをダウンロードさせる

はじめに * ファイルを圧縮して、そのファイルをダウンロードするといった場合、 以下のようなことになる 1) 一次ファイルを作成しなければならない(そして、そのファイルを消さなければならない) 2) ZIP化する際にループし、ダウンロード時でも同じような…

【Java】ZIP 処理 ~解凍編~

サンプル ZipHelper.java import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOE…

【Java】 File の Close処理について ~try-with-resources~

■ try-with-resources * C#の using のように、close()をしなくても自動的にclose処理をしてくれる * Java 1.7から使用可能 ■ closeが一つの場合 構文 try (XxxxxStream stream = new XxxxxStream()) { // something } catch (Exception ex) { } サンプル 一…

【Servlet】 ファイル ダウンロード

サンプル import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import…

【Java】Java で暗号化/複合化する ~標準ライブラリを使用した場合~

準備 Eclipse を使っている場合 * 普通にやると「sun.misc.BASE64Encoder」などで、以下「エラー内容」のようなエラーになる エラー内容 Access restriction: The type BASE64Encoder is not accessible due to restriction on required library C:\Program …

【Java】【XML】 xPath ~XMLの書き換え~

■ はじめに https://dk521123.hatenablog.com/entry/2014/07/03/000100 のつづき。 参照ができたので、今度は値を書き換えてみる。 ■ サンプル SampleXml.java import java.io.File; import java.io.IOException; import javax.xml.parsers.DocumentBuilder;…

【Java】 instanceof 演算子 / getClass()

はじめに * 変数の型やクラスを調べる術を記録しておく [1] instanceof演算子 x instanceof y => 「xがyと同じクラス」か「yのサブクラスである場合」にtrueを返す。 注意1 : null時の挙動について * nullの場合、たとえ型が一致してしていてもtrueにならな…

【Java】スレッドの排他制御 ~synchronized 文 / volatile 修飾子 / Atomicな変数 ~

■ synchronized文 * synchronized修飾子を付与したメソッドは、複数のスレッドから同時に呼び出されることがなくなる * クリティカル セクション (critical section)を実現できる (クリティカル セクションについては、以下の関連記事を参照のこと) https:…

【Java】 Java のメモリ構造

Javaのメモリを理解するためのポイント * ガベージ・コレクション(GC)は、時間が掛かる => 時間が掛かるので、効率よくやるようにメモリ構造を工夫してある ガベージ・コレクション(GC) * 以下の関連記事を参照のこと。 https://blogs.yahoo.co.jp/dk521123/…

【トラブル】【Eclips】【Tomcat】Eclipse + Tomcatのトラブルシューティング ~その1 ~

■「Java compiler level does not match ...」が表示される 詳細 * Eclipse でエラーアイコンが出ていたので、 [windows]-[Show View]-[Problems]でみたところ、以下のエラーが表示されていた エラー表示内容 Java compiler level does not match the versio…

【Windows】【Tomcat】 単一Tomcat で複数のインスタンスを動かす

手順 1) 以下のサイトから、apache-tomcat-8.0.8-windows-x64.zip をダウンロードする 【注意】 * Eclipseを使用する場合、新しいTomcatが対応しない時があるので注意。 http://tomcat.apache.org/download-80.cgi 2) 1) を解凍し、「C:\apache\tomcat\tomca…

【Java】【XML】xPath [2] ~XMLの参照~

サンプル SampleXml.java import java.io.File; import java.io.IOException; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.xpa…

【Java】正規表現 ~ 一致・不一致の判定 ~

■ はじめに 今回は、JavaのMatcher.matches() を使って 一致・不一致の判定を行う。 【1】基礎知識 1)構文 if (【文字列】.matches(【正規表現】)) { // 一致 } else { // 不一致 } 【2】サンプル 例1:BRタグかどうかを判定する * 大文字小文字を区別…

【JSP】【Servlet】ページ遷移の種類

ページ遷移の種類 1) フォワード(RequestDispatcher#forward) 2) インクルード(RequestDispatcher#include) 3) リダイレクト(HttpServletResponse#sendRedirect) 比較 `フォワード`インクルードリダイレクト 転送スピード(*1)速い速い遅い リクエスト…

【PostgreSQL】【設定】PostgreSQL のポート番号を変更する

手順 [1] 「【自分のインストールしたパス】\PostgreSQL\9.3\data」配下にある「postgresql.conf」をエディタで開く [2] 「port = 【変更したいポート番号】」を修正し、PostgreSQL を再起動する postgresql.conf * 「★ここを修正★」の行を修正する # ・・・…

【Tomcat】Tomcat の使用ポート

■ Tomcat の使用ポート `用途`Default ON/OFFDefault Port No HTTP通信ON8080 HTTPS(SSL)通信OFF8443 Tomcat停止(Shutdown用)ON8005 AJPON8009 ■ server.xml * 関連部分のみ抜粋 <Server port="8005" shutdown="SHUTDOWN"> <Service name="Catalina"> </service></server>

【デザインパターン】【GoF】【Java】Chain of Responsibilityパターン ~ 責任の連鎖 ~

Chain of Responsibility パターン * 要求に対する処理が完了するまで、要求を受信する複数のオブジェクトをチェーン状につなぎ、 要求を引き続いて処理していくデザインパターン ⇒ プログラム初心者に、実装してもらう時に使えそう * 以下のサイトの例「結…

【Servlet】リスナー ~ Listener ~

リスナー * Servlet内部で何らかのイベントが発生した際にそれをプログラムに通知する機能 リスナーの種類 * リスナー(インターフェース)を実装すれば各イベントを取得できる 1) Servlet Contextイベント 1-1) Lifecycle : ServletContextListener 1-2) Ch…

【Servlet】サーブレットフィルタ ~ Filter ~

はじめに http://blogs.yahoo.co.jp/dk521123/33567439.html でログイン機能を実装してみたが、ログイン認証後のページ(WelcomeView.jsp)を 直接URLを叩いた場合、閲覧できてしまう。 そんな時に便利な「フィルタ機能」を調べてみた。 用途 http://mergedo…

【Servlet】【JSP】Servlet + JSP でログイン機能を実装する

動作仕様 * ビジネスロジック(Servlet)とUI(JSP)の分離 * ログオン状態をセッションで保持する * エラーがあった際は、Login画面に戻り、エラー内容を表示する サンプル Vews LoginView.jsp <%@ page language="java" contentType="text/html; charset=U…

【Servlet】同時アクセス / 非同期処理 について

シングルインスタンス・マルチスレッド * 同時に複数クライアントからアクセスされる可能性があるため、マルチスレッドで動作する必要がある * 一方、メモリ節約やパフォーマンスの観点からたくさんのインスタンス作成するのではなく 1つのインスタンスを使…

【Tomcat 】【Apache】Tomcat と Apache を連携させる ~知識編~

はじめに * Tomcat 単体で十分動く(※)のに、何故わざわざ Apache と連携させるの?って思ったので調べてみた ※ 簡易Webサーバとしての機能も有しているため、Webページの表示が可能 * 実際の設定は、以下の関連記事を参照のこと。 http://blogs.yahoo.co.j…