Java

JavaでOpenCSVを使用してCSVを作成した際の日本語文字化けについて

次のように書いていて、日本語が文字化け。 csvWriter = new CSVWriter(new FileWriter(csvFileName), ',', CSVWriter.NO_QUOTE_CHARACTER);でも、FileWriterは文字コード指定できないから文字化けに対応できない。 そのため、OutputStreamWriterを経由して…

【Java】doubleを使用した計算による誤差

既存アプリのバグに遭遇した際のメモ。【問題】 次のような変数があった場合、それらの積はいくつになるだろうか。 double d1=558.3 int i1=100 期待値は言うまでもなく、55830.0でしょう。 しかし、55829.99999999999になっているケースがあったという話。…

【Java】ExecutorService

「ExecutorService の使い方」を参考に使用してみた。まずは、スレッドプール内に1つのスレッドを作成して実行してみる。 Executors.newFixedThreadPool(1);として指定する。 package practice; import java.util.concurrent.ExecutorService; import java.u…

【POI】poiでExcelから数値データを読み取ろうとした際に、java.lang.IllegalStateException: Cannot get a text value from a numeric cell

poiを使ってExcelから文字列を読み込んで、javaで加工しようとした際に例外発生。 Exception in thread "main" java.lang.IllegalStateException: Cannot get a text value from a numeric cell at org.apache.poi.hssf.usermodel.HSSFCell.typeMismatch(HSS…

JavaからRを呼び出す 〜 RServer、REngineの使用

◎前提 Rがインストールされていること。◎手順 基本的には、ここに書かれていることとホボ同じ。 ただ、ライブラリが更新されていることと、ソースをインポートしている所をjar参照にした点がことなる。1.Rserve のインストール 下記コマンドをRで実行。 in…

Google App Engine for Java SDKで開発をする 〜 プロジェクトの作成

1.新規→その他→Google→Webアプリケーションプロジェクトを選択する 2.必要な項目を入力して完了 ※)下図では「Google Web ツールキットを使用」にチェックがついているが、今回は不要なのでチェックを外す。 3.「App Engine requires Java 1.7 or late…

Java監視ツール「ENdoSnipe5.1」を使ってみる 〜 導入編

・ENdoSnipeのセットアップ◎環境 ・Windows Server Enterprize 64bit ・JVM 1.6.0_31 ・Apache Tomcat 7.0◎ENdoSnipeのセットアップ 0.下記1,2,3を用意する。 1.Javelin_5.1.0.zip 2.endosnipe-datacollector-5.1.0.zip(※Windowsなので。Linuxの場合は、e…

Google App Engine for Java SDKで開発をする 〜 Spring MVCでアプリを作成する

「Google App Engine for Java SDKで開発をする 〜 プロジェクトの作成」では、「初めてのGAEプロジェクト」以来、実に3年ぶりにGAEプロジェクを作成した。3年前はtwitterのbotを作成して、GAE上にデプロイして動かしていた。今も動いているが、放置しっぱな…

JVM Frameworkの比較資料を見つけた

ここで紹介されていたので忘れないようにメモ。 Comparing JVM Web Frameworks - Devoxx France 2013 from Matt Raible 90ページもある大作。Google Trendの結果とIndeedの結果の両方が載せられているが、サーバサイドのフレームワークだとSpring MVC、JAX-R…

本当に苦労したSpringでの文字化け問題

Spring MVC + Thymeleaf + HTML + JavaScriptでtwitterをGoogle Mapに表示するアプリを作っていたが、tweetをGoogle Mapのmarkerに表示したところmarkerに表示されるtweetの日本語が文字化けした。 以前、Thymeleafで文字化けした際は、servlet-context.xml…

Spring MVC でjQueryのAjax関数を使用する1 〜 JSON作成にGSONを使用する

引き続きベースは「Spring MVCのサンプルプロジェクトでViewの描画をthymeleafテンプレートエンジンによるものに変更する」から続いているもの。これまでは同期通信で画面遷移を伴うものだったが、今は画面遷移を伴わずに非同期通信を行ってデータだけを取得…

EclipseにSpringの開発ツール(STS)をインストールする

「MavenによるSpring Webプロジェクト作成」でSpringプロジェクトを作成する方法を学んだが、設定ファイルやクラスの作成はどのようにするのだろうか。たいてい、どのフレームワークにもEclipseプラグインや開発環境が用意されていて、それにより作業が楽に…

MavenによるSpring Webプロジェクト作成

1.mavenでプロジェクトを作成する 次を実行する。 mvn archetype:create -DgroupId=spring.example.web -DartifactId=ProjectName -DarchetypeArtifactId=maven-archetype-webapp -Dversion=0.0.1 2.pom.xmlが存在するフォルダに移動する 「-DartifactId…

Apache maven 3.2.1のインストール

1.Mavenのダウンロード 本エントリー執筆時の最新版「Maven 3.2.1 (Binary zip)」をダウンロードする。2.インストール手順に従ってインストールをする私のOSは「Windows 8.1」です。 インストール手順を参照して、和訳してみました。途中で英語の意味が…

Thymeleaf+Springで作成したHTMLで文字化け

「Spring MVCのサンプルプロジェクトでViewの描画をthymeleafテンプレートエンジンによるものに変更する」では、Spring+Thymeleafの導入を行った。そこで作成したHTMLを少し修正して、ボタンをつけてみた。そしたら、ボタンに表示させた日本語が文字化けした…

Thymeleafを導入したらhtmlファイルのチェックが厳しくなった

「Spring MVCのサンプルプロジェクトでViewの描画をthymeleafテンプレートエンジンによるものに変更する」では、Spring+Thymeleafの導入を行った。そこでのサンプルHTMLでは、metaタグによるcharsetの定義を行っていなかったので追記したら、エラーとなった…

Twitter4JのStream APIを使用して、特定キーワードのtweetを監視する

「Twitter4JのStream APIを使用して、特定ユーザのtweetを監視する」の続き。特定キーワードを監視する。試しに、「飲み会」というキーワードを監視してみた。◎メインクラス package main; import listener.TwitterStatusListenerImpl; import logic.impl.Ed…

Twitter4JのStream APIを使用して、特定ユーザのtweetを監視する

だいぶ昔にtwitterのbotを作成してGAEで動かしていた。*1今回は、少しリニューアルしようと思って、久しぶりにtwitter4Jを利用して作成した。ポイントは下記3点。 ・TwitterStreamのsample()メソッドを実行すると、全世界のtweetが取得されるため、処理しき…

NetBeansを使用してプロファイリングを行う

簡単に操作手順をメモしておく。ざっと、下記の4つの流れで実施する。 クライアント側(IDE)での操作 プロファイリング対象サーバでの操作 サーバの起動とポートの開放 プロファイリングの実施 順番に説明する。1.クライアント側(IDE)での操作 IDEのツー…

javaのreflectionを使用して親クラスまで検索してフィールドを取得する方法

javaで開発している時に、リフレクションを使用してクラスのフィールドを取得するときに少しつまったのでメモ。 つまったこと 「親クラスに定義されているフィールドをリフレクションで取ることができなかったこと」。 原因 java.lang.ClassのgetDeclaredFie…

Java/JavaScriptによるWEBアプリケーションのユニットテストについて考えてみた

最近、テストについて悩んでいる。 製造工程終盤から参画したプロジェクトなのだが、なかなかバグが収束しない。私が考えるに、原因は1つ。-テストが自動化されていないテストが自動化されていないため、デグレードしても気がつかない(場合がある)。 デグ…

良いコードを書く技術

購入して、2時間ほどかけて読みました。 表紙に、「普通のプログラマのためのステップアップガイド」と書かれていたので購入したが、内容は普段仕事で意識・実践していることがほとんど。立ち読みで済まそうと思っていたのだが、「メタプログラミング」、「…

GAEでTwitterのボットを作成している

GAEを利用して、Twitterのボットを作成中。単に、何かをつぶやくだけのBotならできたが、迷惑だな。。。。尤も、twitterはつぶやく為にあるのだから、誰が何を何度呟こうと自由だろうが。

GAEでGoogleアカウントを使用したログイン処理を実装

GAEを使用して、Googleアカウントでのログイン処理を実装した。①サーブレット public class LoginCheckServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { UserService user…

初めてのGAEプロジェクト

いまさらながら、GAE for Javaを使用した。Eclipseのパッケージ構成 WebContentフォルダがwarフォルダになっている以外は、JavaEEで作成する普通のWebアプリケーションとさほど違いがないパッケージ構成のようだ。javascriptはwarフォルダ直下にjavascriptフ…

JSPのコンパイルファイルをデバッグする

EclipseのTomacatプラグインを使用すれば、JSPのデバッグが可能になるらしい。 実際に使用したことがないので、後に試用してみよう。

サーブレットが動いてJSPが動かない

EclipseでGAEサンプルプログラムを作成しているときのこと。サーブレットが動いているのだが、JSPを作成したら、コンパイルエラー。「ウインドウ」→「設定」メニューで設定ウインドウを呼び出し、 「Java」→「インストール済みJRE」を確認したら、jdkではな…

JavaからExcelを操作するAPI Excella

POIしか知らなかった。http://excella-core.sourceforge.jp/

Google App Engine for Java

GAE(Google App Engine)を使用してみる。必要なものは下記。 eclipse 3.5.2 java sdk Google Plugin for Eclipse 3.5 (Galileo)

javascriptファイルの置き場所とインポート

初歩的な間違いの紹介。 WEB-INF直下にjavascriptファイルを置き、JSPでインポートして使おうと思うこと WebContent直下のlibフォルダにある、sample.jsをJSPで読み込む時 <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-31j"> <script type="text/javascript" src="lib/commonLib.js"></script> <title>テスト用ページ</title> </head> これは動作するが、src="/lib/j…