多くの人はこうやればいいと思っているかもしれません。 java.util.Date d = new java.util.Date(); java.sql.Date d2 = new java.sql.Date(d.getTime());確かにこれでも一応変換はできますが、きちんと変換してはいません。java.sql.DateのJavadocを見るとこう書いてあります。 SQL DATE の定義に対応させるために、java.sql.Date のインスタンスでラップされたミリ秒の値は、インスタンスが関連した特定のタイムゾーンで時間、分、秒、ミリ秒をゼロに設定することで、「標準化」する必要があります。 つまり、java.util.Date#getTime()をjava.sql.Dateにただ渡すだけでは不十分で、「特定のタイムゾーンで時間、分、秒、ミリ秒をゼロに設定しなければいけない」のです。そ
JavaでTDDBCに参加し、Bootはした。となると次はBoostしていく必要が出てくる訳だが、職場や社外で実践経験を積むのと同様、JUnitやJavaでのテスト実行に関しての知識も増やしていく必要があるのでは?と思い立ち、このタイミングで有用なネタを集めてみました。 Groovy/G*界隈でBoostする為に有用なリンクを集めてみた(Groovy編) - Shinya’s Daily Report Groovy/G*界隈でBoostする為に有用なリンクを集めてみた(Gradle編) - Shinya’s Daily Report Groovy/G*界隈でBoostする為に有用なリンクを集めてみた(Spock編) - Shinya’s Daily Report テーマによってはひとまず項目のみ洗い出し、項目別に写経や深掘り調査を行った後にエントリとしてUPして行こうと思います。 JUni
世間ではオワコンと揶揄されることも珍しくない Java ですが、Java を初めたばかりのエンジニアがチェック例外と非チェック例外の使い分けについて「ベストプラクティスないの?」と調べたのをまとめてみました。 エントリまとめ どのエントリも Java についての深い洞察と開発の実践現場での生きた経験をもとに書かれていて大変に勉強になりました *1 エントリ中からリンクされているエントリもぜひ一読されることをおすすめします。 検査例外と非検査例外(実行時例外)をどう使い分けるか - Lino Blog Java言語のチェック例外は本当にGood Partなのか? - 達人プログラマーを目指して Javaのチェック例外はクソ仕様 - やさしいデスマーチ 例外の扱いについて その2 - じゅんいち☆かとうの技術日誌 「検査例外はアジャイルやオブジェクト指向の考えに反するという事実」について一部誤
WEB+DB PRESS Vol.35の特集1「実演!テスト駆動開発」の特設ページです。テスト駆動開発(TDD)の実演ムービーや誌面サポート情報などを掲載しています。 更新履歴 2006年10月24日 実演ムービーの追加 タスク2「サーブレットのアクセスURLからDAOの名前を抽出する」の実演ムービー3本を追加しました。 環境構築ムービーの追加 Subversion環境の構築ムービー3本を追加しました。 補足情報の追加・変更 第2章~第8章の各章終了時点でのサンプルコードを公開しました。また,すでに公開済みだった第8章完全版のコードも差し替えましたので,お手数ですが再度ダウンロードしてください。 補足情報の追加 「テストフィルタ機能,受け入れテスト実行の自動化機能について」を追加しました。 補足情報の追加 「著者のEclipseテンプレートを公開!」を追加しました。 誌面訂正情報の掲載 第
#!/bin/bash # Tomcat7: Start/Stop Tomcat 7 # # chkconfig: - 90 10 # description: Tomcat is a Java application Server. . /etc/init.d/functions . /etc/sysconfig/network CATALINA_HOME=/usr/tomcat7 TOMCAT_USER=tomcat LOCKFILE=/var/lock/subsys/tomcat RETVAL=0 start(){ echo "Starting Tomcat7: " su - $TOMCAT_USER -c "$CATALINA_HOME/bin/startup.sh" RETVAL=$? echo [ $RETVAL -eq 0 ] && touch $LOCKFILE retur
本日、日本Javaユーザーグループ(JJUG)主催のCCC 2014 SpringというJavaの勉強会に行ってきました。会場は、ベルサール西新宿で、都営大江戸線都庁前のA5出口を出て、新宿中央公園の5分くらい歩いたところにありました。今はスマートフォンで地図を確認しながら行けるので、初めての場所でも方向音痴の私でも電車の駅さえ間違わなければ大丈夫ですね。 CCCというのはCross Community Conferenceの略で、さまざまなコミュニティーの交流の場となる会議という趣旨でしょうか?このCCCというイベントは2012から開催されているようなのですが(CCC | 日本Javaユーザーグループ)、今回初めて参加させていただきました。残念ながら個人的な都合から、基調講演と午後の前半のセッションのみで後半と懇親会には参加できませんでしたが、参加したセッションについてまとめます。その他
特徴 ・eclipseと連携して簡単にテスト実行&失敗したテストの理由を表示 ・JUnit3.xやJUnit4.xの以下の問題点を解決 ・テストメソッドの名称が固定 →メソッドにアノテーションを付加することで対応 ・例外が発生するテストが複雑 →アノテーションで期待する例外を記述することで対応 ・テスト前後処理のバリエーションが少ない →様々なバリエーションが用意されている ・テストメソッドの数だけインスタンスが生成される →1つのインスタンスしか生成しない ・テストメソッドに引数を渡せない →XML設定でテストメソッドに引数を渡せる ・さらに以下の機能も提供 ・テストの依存関係を設定可能 ・複数スレッドによるテストの並列実行 導入方法 残念ながら JUnit と違って eclipse には同梱されていません。自力で入手しましょう。 以下の公式サイトにいってダウンロードします。 http:
実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9) ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27) 「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6) ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について プログラミングとビルド、Androidアプリ開
はじめに php,Flex,VB2008,Cと巡りめぐってまたJava開発に戻ったら、色んなことが変わっていて驚いてます、ということを書こうとしていて、まず浮かんだのがTestNGでした。 Java界隈の方々からしたら「何を今更?」という内容だとは思いますが(汗 ここのところ全然記事書いてなかったので、記法思い出しながらですが書いてみます。 TestNG vs. JUnit JUnitではなく、TestNGを使う利点は記事の通り。 コード品質を追求する: JUnit 4 対 TestNG TestNGの特徴などの説明はこちら。 次世代テストフレームワークでテストを変える TestNG本家 TestNG DataProviderが便利 特に、パターン試験を多く行う局面では、@DataProviderが便利だと思います。入力値と期待値をDataProviderで定義してテストメソッドを呼び出し
Excelに引数の組み合わせ表を書いて1つずつ試していったのは昔の話。テスティングフレームワークを使って、こういったことはプログラムで処理するのが普通の時代。 そんなご時世に、Tomcat+Java+いずれかのDB という、ありがちな構成のサーバサイドでテスティングフレームワークを使うときのメモ。 問題になること DBの接続情報はTomcatのリソースとして定義したものを使用している。どうやってDBアクセスモジュールのテストをすればよい? DBにアクセスする部分のテストって、テストデータを用意したりしないといけないから、面倒。テストをバッチで繰り返し実行するとかなると、もっとたいへんそう。 Webブラウザでアクセスしたような形でテストするには、どうすればよいのか? 処理結果をhtmlやxmlで返すのだが、どうチェックすればよいのか? Code Barn Libraries And Fram
こんにちは、中村です。Seleniumについて前回前々回と紹介しましたが、今回はその操作コマンドであるSeleneseについてまとめてみました。コマンドの数だけみると300超(?もっとあるかも)あるSeleneseコマンドですが、カテゴリ分けすることで体系的に理解することができそうです。自分への備忘録も兼ねてエントリーしてみたいと思います。
単体テストを“神速”化するQuick JUnitとMockito:ユカイ、ツーカイ、カイハツ環境!(16) Quick JUnitプラグインの3つの大きな特徴 近年、JUnitとHudsonを利用した継続的インテグレーション(CI)によるテストの自動化や、テスト駆動開発(TDD)の普及などにより、ユニットテスト(単体テスト)のテストコードの作成が重要視されています。 今回紹介する「Quick JUnit」プラグインは、JUnitによるテストコードの作成と実装を支援するEclipseプラグインです。Quick JUnitプラグインは石井勝さんにより開発されていましたが、石井さんが不慮の事故により死去後、Quick JUnitプラグインプロジェクトにより開発が継続されています。優れたオープンソースプロジェクトの模範のようなプロジェクトです。 訂正のお知らせ 故人のお名前について間違いがあり、修
前回 の続き。WS-Securityはちょっと大げさだし重いという噂なので、もっと単純にHTTPのBASIC認証を試してみる。 前回はWebサービス自身が認証を行う形式だったけど、今回はWebサービスの前に Spring Security のフィルタをかませて、認証は Spring Security に任せる方式にする(その方が慣れているし色々取り替えが利くので)。さらに、クライアント側のWebアプリケーションが送りつけるBASIC認証のユーザ名・パスワードは、Webアプリケーションへログインしたときのユーザ名・パスワードをそのまま使うようにする。 サービス実装側の修正 前回追加したWS-Securityの部分は取り外して、Spring Securityを使えるように設定する。 まず、pom.xml。dependencies要素の中に、Spring Securityに必要な以下の設定を追加
Java Springの逆引きメモJavaのSpring frameworkのメモを書いていきます! 初心者の勉強ノートなので間違いがあるかもしれませんが、何かヒントになることがあれば幸いです。 ここでは、SpringSecurityの簡単な使用方法をみてみます。 設定ファイルにログイン情報(ユーザと権限)を設定するやり方です。 まず、こちらの記事を先に読んで全体を把握しておいた方がいいかと思います。 ・SpringSecurityの機能について 【web.xmlの設定】 以下の記述を記述します。 SpringSecurityはフィルターで実現している機能ですので、フィルターの設定になります。 フィルターの最初の方で動作するように、最初の方に記述します。 キャラクタのエンコードのフィルター を設定している場合は、その後ろに記述します。 <!-- WEBの設定です --> <display-
昨日、@irofさんと飲みながら自分を思い返すと「ちゃんとソフトウェア開発を勉強しはじめてから3年間たった」つまり「@bleisさんを知ってからこの5月でまる3年間たった」 それまでの僕はデザインパターンもオブジェクト指向がなんたるかも、バージョン管理もなにも知らなかった。 毎日言われたことをこなす仕事をして、変えたいけど誰も教えてくれないし、学び方すら教えてくれなかった。 それなりに努力してたけど、よくはわかっていなかった。 そんな状態から抜け出したのが3年前。このブログの先頭でも書いた。当時僕は21歳かな。(ちなみに就職したのは19歳のとき) →【このブログをはじめるきっかけ - うさぎ組】 この3年間でやったことをふりかえってみようと思いました。 ちょっとわかりにくいだろうけど、2009年5月からの12ヶ月周期で書いてみます。 こうやって振り返るのはあくまで僕のためであって、何かを誇
jar にリソースファイルを含める方法、それをプログラムから使う方法(Java,resource,jar)一般向けに配布するプログラムを作る場合、プログラム中で使用する画像やファイルをjarに含めておくとユーザにとっては取り扱いが非常に楽になります。(jar一個をコピーするだけで済みます) 開発者の方は、jarにリソースを含めたり、含めたリソースからデータを読み出すコードを書かないといけないので、多少負担が増えます。 jarに含めたいリソースの例ツールバーアイコンテンプレートファイルサンプルデータ一式ヘルプファイル一式テキストデータの場合簡単な例として、HelloWorld.txtをjarに含めるようにして、 そのファイルをプログラム中から読み出す場合。 STEP1 jarにリソースを含めるantでjarタスクに以下のように記述します。 <jar destfile="test.jar">
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く