はじめに 前回はSpring Bootの導入を行い、簡単に実行してみました。 今回はもっと進めて、ローカルのデータベースに接続してみます。 環境 OS : Mac OSX 10.10.5 DB : Postgres 9.5.1 プロジェクト作成 JPAとPostgreSQLにチェックを入れます。 JPAはSQLを書かずにCRUDができるので便利です。 準備 データベース、テーブルの用意 まず、PostgreSQLでデータベースとテーブルを作成しておきます。 CREATE DATABASE sbdb; CREATE TABLE counter1 ( id SERIAL PRIMARY KEY , title VARCHAR(16) , count INT); INSERT INTO counter1 VALUES (0,'all',0) , (1,'select',0) , (2,'upda
Scalaには中置パターン(infix pattern)と呼ばれる機能があります。これは単純にいうと、 case class ~[A, B](a: A, b: B) のようにして定義したケースクラスに対して*1、 scala> val ab = new ~(1, "FOO") ab: ~[Int,String] = ~(1,FOO) scala> val a ~ b = ab a: Int = 1 b: String = FOO このようにパターン名を中置(infix)にして書くことができる機能です。この機能、一見使い道が少なそうですが、実は皆さん、日頃からよく使われています。 まず、 list match { case x::y::xs => ... } のように、リストを::を使ったパターンマッチで分解することはよくあると思いますが、これは、::という中置パターンがあればこそできる書き
注意 本件記事ですが、私の不適切な行動(拾ったスクリプトを検証なく走らせる)が原因です。「dockerは(特に何もしなくとも)危険」との誤解を皆様に与えた点、ご迷惑をおかけいたしました。申し訳ございません。 拡散されている記事を削除するのはさらなる誤解を招きかねないと思いましたので、冒頭に注意を付記しております。以下の記事は、「自分が何してるかをきちんと検証できないとセキュリティホールを生み出す」という意味で参考にして頂ければ幸いです。 追記 Twitterやはてブで言及いただきました皆様、ありがとうございます。 本件はpullしてきたイメージが悪意ある開発者によるものかどうかにかぎらず、不適切な設定をしていると起こり得ます。 ※コメント欄に質問への回答という形で、私がそのときに走らせていたイメージの一覧を挙げておりますが、どのイメージも評判あるものだと思います。 皆様におかれましては「あ
前回: コード型ログ(2) staticな変数の排他にはsynchronized(*.class) { } を使う - 超ウィザード級ハッカーのたのしみ privateなメソッドは、ユニットテストがしにくい。 対処法は2つで、 テストしないか、 Reflectionで頑張るか、 スコープをpackage pririveteに広げるか、 である。 呼び出しものの入出力からテストができるのであれば、無理してテストをする必要はない。 しかし、わざわざ別のメソッドに分けたということは、入力と出力の対応が明確な単位になっているはずなので、テストしたい。 Reflectionで頑張る場合は、例えば class Add { private static int add(int a, int b) { return a + b; } } を呼ぶには、 static int invokeAdd(int a,
はじめに みなさん、DRY原則はご存知でしょうか? DRY = Don't repeat yourselfの略で「繰り返しを避けること」という意味ですよね。 良いコードを書くための重要かつ基本的な原則なので、みなさんよくご存知だと思います。 ですが、DRY原則はテストコードを書く場合は必ずしも最善にはならない場合があります。 他の人が書いたテストコードを見ていると、テストコードにDRY原則を適用したために、かえって悪いコードになっているケースをときどき見かけます。 この記事ではなぜテストコードをDRYにすると良くないのか、ということを説明します。 追記:タイトルを変更しました @t_wada さんのコメントを受けて、タイトルを見直しました。 「テストコードはDRYを捨ててベタ書きする」 => 「テストコードの期待値はDRYを捨ててベタ書きする」 【注意】この記事は画一的なテストコードの書き
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く