タグ

ブックマーク / www.techscore.com (20)

  • 2.Hibernate を使ってみよう (2)

    Hibernate 2章 Hibernate を使ってみよう 2.1. Hibernate とは 2.2. データベーススキーマの準備 2.3. Hibernate 設定ファイルの準備 2.4. マッピングファイルの準備 2.5. 永続化クラスの準備 2.6. Dao の準備 2.7. データの投入 2.8. まとめ 2.3 Hibernate 設定ファイルの準備 Hibernate の設定ファイルを記述します。Hibernate の設定ファイルは、Hibernate がデータベースに 接続するための設定や、マッピングファイルの場所をHibernate に教えるための設定を行います。 設定ファイルはXML形式で記述します。 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//

    nilab
    nilab 2021/02/09
    「hibernate.dialect」「org.hibernate.dialect.PostgreSQLDialect」「RDBMS の方言を吸収するためのクラス」
  • 9. ChoiceFormat/MessageFormat (2)

    9.2. MessageFormat MessageFormatは複数のメッセージを連結して1つのメッセージを連結するクラスです。連結する際、他のFormatクラスを使用してロケールや特定のフォーマットに従ったメッセージを作成することができます。まずもっとも簡単な使い方について説明します。 package sample; import java.text.MessageFormat; import java.util.Date; public class FormatTest { public static void main(String[] args) { MessageFormat format = new MessageFormat("ただいま{0}。天気は{1}です。"); Object[] parameters = {new Date(System.currentTimeMil

    nilab
    nilab 2020/10/15
    「MessageFormatは複数のメッセージを連結して1つのメッセージを連結するクラスです。連結する際、他のFormatクラスを使用してロケールや特定のフォーマットに従ったメッセージを作成することができます」
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    nilab
    nilab 2020/09/07
    デザインパターンから見たActive Record | TECHSCORE(テックスコア)
  • Java : Jackson による JSON デシリアライズ時の型解決方法 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは。松です。 ポリモーフィズムはオブジェクト指向言語の魅力のひとつですが、これがオブジェクトと JSON のマッピングを複雑にするなあと度々感じています。 汎化された型として定義されたプロパティ(フィールド)を持つオブジェクトを JSON からデシリアライズするには、型解決に関する定義やロジックをコードや設定として組み込むことになります。ここに、モデルクラスの設計と、JSON のエンティティ設計の間でトレードオフが発生することがあり、ケースに応じた最適な設計/実装が必要になるわけです。 私が扱うソフトウェアのライフサイクルの特性上、繰り返される追加開発に対し、保守性/拡張性を維持することは大きな関心ごとです。クラス関係の妥当性や理解しやすさ、変更時の影響範囲の抽出しやすさ、クラス数、コード量、実装難易度など、様々なトレードオフスライダーを頭に描きながら、最適だと考える選択を行いま

    nilab
    nilab 2019/12/01
    @JsonTypeInfo(use = Id.NAME) / @JsonSubTypes({@Type(name = "R", value = Rectangle.class), @Type(name = "T", value = Triangle.class)})
  • 4. 便利なメソッド

    この章では、テストプログラムを記述する時に便利なメソッド、クラスについて説明します。 4.1. setUpとtearDown setUpメソッドは、各テストメソッドが呼び出される前に実行されます。逆に、tearDownメソッドでは、各テストメソッドの終了後に実行されるメソッドです。例えば、以下のようなテストクラスがあったとします。 public class DBTest extends TestCase{ public DBTest(String name){ super(name); } public void testInsert(){ //データベースに接続 //insertのテスト //データベース接続の切断 } public int testSelect(){ //データベースに接続 //selectのテスト //データベース接続の切断 } } 上の例の場合、testInsert

    nilab
    nilab 2019/07/05
    JUnit 「setUpメソッドは、各テストメソッドが呼び出される前に実行されます。逆に、tearDownメソッドでは、各テストメソッドの終了後に実行されるメソッドです」
  • 6. プロファイル

    2009.04.03 シナジーマーケティング株式会社 鈴木 圭 Maven 6章 プロファイル 6.1. プロファイルとは 6.2. プロファイルの種類 6.3. プロファイルの書き方 6.4. プロファイルの有効化 6.5. Tips 6.6. まとめ 今回は、環境依存の設定を記述するためのプロファイルという機能について解説します。プロファイル機能を活用することで、プロジェクトのビルドをより安全かつポータブルにすることができます。 6.1. プロファイルとは プロファイルとは、ビルド環境やリリース環境などの環境に依存する設定を記述するためのものです。環境に依存する設定には、次の二種類が考えられます。 リリース環境によって異なる設定(接続先データベースやログファイルの出力先) ビルド環境によって異なる設定(OS の種類やアプリケーションサーバのインストール先) 環境依存の設定を上手く扱えな

    nilab
    nilab 2019/06/27
    「プロファイルは、settings.xml に記述する場合は settings/profiles/profile 要素内に、pom.xml の場合は project/profiles/profile 要素内に記述します。profile 要素は必要な数だけ記述します」
  • Java : Jackson : ちょっと特殊なケースにおけるJSONシリアライズ/デシリアライズ | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは。松です。 この記事は TECHSCORE Advent Calendar 2016 の 18 日目の記事です。 6 月頃に書いた記事(「Java : Jackson による JSON デシリアライズ時の型解決方法」)に続いてまた Jackson ネタです。 ここ数年、REST サービスの開発や NoSQL やオブジェクトストレージ利用によって、データシリアライズに JSON を使うことが多くなりました。その分、アプリケーション内で扱うモデルオブジェクトと JSON のマッピングで苦労することも多くなりました。 Jackson はオブジェクトと JSON のマッピング方法が柔軟で多機能なのですが、意外と知られていない機能もあるので、そういったものをピックアップして記事にしようと思います。 @JsonAnyGetter @JsonAnyGetter アノテーションを使うことで M

    nilab
    nilab 2019/06/06
    @JsonAnyGetter アノテーションを使うことで Map 型プロパティのエントリをフラットに並べることができます」
  • 例外安全への道 - Road to Exception Safety | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 「例外安全 (Exception Safety)」という言葉をご存知でしょうか。 週末、の整理をしていたときに「Exceptional C++」というが出てきました。C++ のイディオム集といった感じのなのですが、その中に登場する「例外安全」という言葉をご紹介します。 「例外安全」とは、例外が発生したときに適切に処理されることを意味する言葉です。「適切に」とは、リソースリークが発生しないことや、オブジェクトの内部状態の整合性が保たれるということです。 「普段から意識してるよ」という方もいると思いますが、「聞いたことが無かった」という方は、例外安全という考え方を意識することで、今までより品質の良いコードを書けるようになるはずです。 Web上のリソースでは、以下のページに記載があります。 Exception-Safety in Generic Components

    nilab
    nilab 2019/04/23
    「「例外安全」とは、例外が発生したときに適切に処理されることを意味する言葉です。「適切に」とは、リソースリークが発生しないことや、オブジェクトの内部状態の整合性が保たれるということです」
  • 3. Maven 入門 (7)

    2006.06.28 株式会社四次元データ 鈴木 圭 Maven 3章 Maven 入門 (2) 3.1. 依存性について 3.1.1. 依存性の指定とスコープ 3.1.2. groupId, artifactId, version に指定する値の調べ方 3.1.3. 実際に依存性の指定を行う 3.1.4. ライブラリをローカルリポジトリにインストールする 3.2. プラグインについて 3.2.1. プラグインの設定方法 3.2.2. プラグインの情報の調べ方 3.2.3. 実際にプラグインの設定を行う 3.3. リモートリポジトリの設定方法 3.3.1. リモートリポジトリの種類 3.3.2. リモートリポジトリの設定 3.4. マルチモジュール・プロジェクト 3.4.1. プロジェクトを作成する 3.4.2. 親プロジェクトの設定 3.4.3. 各モジュールの設定 3.5. まとめ 3

    nilab
    nilab 2019/04/11
    「Maven は複数のプロジェクトからなるマルチモジュール・プロジェクトを管理することができます」「親プロジェクト」「pom.xml の project 要素以下に parent 要素を追加」
  • 風データをビジュアルに表現する | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、梶原です。 これは TECHSCORE Advent Calendar 2015 の13日目の記事です。 衝撃のビジュアル表現 あれは忘れもしません。大阪の環状線を止めるほどの台風が来た日の事です。 テレビを観ていると、NHKが天気・災害情報を放送していましたが、とてもカッコよく、わかりやすいビジュアル表現をしていました。画面上には「DIGITAL EARTH」と記載されており、NHKの新システムだったようです。 (参考) 「NHKデジタルアース」が凄い 特に風の表現に衝撃を受けたので、色々調べてみると、世界風速は、とても良くできていて、フリーバージョンはソースが公開されています。 そこで世界風速のソースや、気象データ処理や地図表現についても、調べたのでまとめてみました。 ソースはこちらに置いておきます。 地図表現 ビジュアル表現に、地図表現はつきもの! という訳で、こちらは色

    nilab
    nilab 2017/11/16
    「最近気象データの多くは、「GRIB2」形式というファイルフォーマットで配信される事が多いです」「海岸線情報自体は、Natural Earthを利用させていただく事にしました」
  • 4. FactoryMethod パターン

    2012/04/26 一部修正しました デザインパターン 4章 FactoryMethod パターン 4.1 FactoryMethodパターンとは 4.2 サンプルケース 4.3 FactoryMethod パターンのまとめ 4.1 FactoryMethodパターンとは 第4章では、FactoryMethod パターンを紹介します。FactoryMethod パターンは、オブジェクトの生成方法に一工夫加えることで、より柔軟にオブジェクトを生成することを目的とするものです。FactoryMethod パターンでは、インスタンスの生成をサブクラスに行わせることで、より柔軟に生成するインスタンスを選択することが可能となります。 オブジェクトを生成する場合、下記のように記述するのが普通です。 Product product = new Product(); しかし、このようなオブジェクト生成方

    nilab
    nilab 2016/12/19
    4. FactoryMethod パターン | TECHSCORE(テックスコア)
  • Ruby2.0のRefinementsで遊んでみた | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは。寺岡です。 前回の予告通り、今回はRuby2.0のRefinementsについて書きたいと思います。 Ruby2.0.0で実験的機能として追加されるRefinementsは、対象のクラスのメソッドを部分的に変更、追加するための機能です。 ruby2.0.0-rc2のインストール まずは実行環境の準備です。 rvmインストール済の環境にRuby 2.0.0最後のRC版であるruby-2.0.0-rc2をインストールします。 $ rvm get head $ rvm get latest $ rvm list known | grep '\[ruby-\]' [ruby-]1.8.6[-p420] [ruby-]1.8.7[-p371] [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p320] [ruby-]1.9.3-p125 [ruby-]1.9.3-p1

    nilab
    nilab 2016/11/28
    » Ruby2.0のRefinementsで遊んでみた TECHSCORE BLOG
  • ドメイン駆動設計をかじってみる | TECHSCORE BLOG | TECHSCORE BLOG

    はじめまして!平奥と申します。 TECHSCORE BLOGに記事を投稿させていただくことになりました。 みなさま、よろしくお願いします! 今回は私が設計について学んでみようと思い、「エリック・エヴァンスのドメイン駆動設計」を読んだ内容を記事にしました。 感想としては率直に申しますとすごく抽象的で、読みづらいですが、有益な内容がたくさん書かれています。 こういう設計関連の学習をするときに、私が心がけているのが「完璧な設計はない。」ということです。 実は、ある設計思想に基づいて設計しているときに、その思想に完璧を求めるあまり解決できなくて 途方にくれた時がありました。 しかしもっと柔軟に設計を行い、その設計思想のコアなルールは守るというスタンスでよいのではと考えています。 他の設計思想と共存させ、そのプロジェクトにおいて最適な設計を行うことが大事だと考えています。 このことはエリック・エヴァ

    nilab
    nilab 2015/09/06
    » ドメイン駆動設計をかじってみる TECHSCORE BLOG
  • 4. オブジェクトのシリアライズ

    4.1. java.io.Serializable 任意のクラスのデータをファイルに保存したり、ファイルから復元したりする事が考えられます。独自に保存・復元のプログラムを記述する事も可能ですが、Javaでは簡単にこの仕組みを実現できる機能が提供されています。この章ではその機能について説明します。 あるクラスのオブジェクトが保存・復元できる事を、「直列化可能である」と言います。また保存・復元できるかどうかを「直列化可能性」と呼びます。Javaではクラスを直列化可能にするためには、「java.io.Serializable」インタフェースを実装する必要があります。 「Serializable」インタフェースには何のメソッドも定義されていません。このインタフェースを「implements」宣言に加えるだけで、該当するクラスは直列化可能になります。 public class Dog impleme

    nilab
    nilab 2015/08/28
    4. オブジェクトのシリアライズ | TECHSCORE(テックスコア)
  • 12.新たに追加されたコレクション2

    2006.06.12 株式会社四次元データ 宮澤了祐 ユーティリティ 12章 新たに追加されたコレクション2 12.1. 同時コレクション 12.2. BlockingQueue、ConcurrentLinkedQueue 12.1. 同時コレクション JDK5.0より、マルチスレッドでの使用を考慮に入れた、Collectionの新しい実装が追加されました。 マルチスレッドでのListやMapを使用する場合、 今まではCollections.synchronizedList()やCollections.synchronizedMap()メソッドなどを用いてスレッドセーフなコレクションを使用していました。 しかしこれらのメソッドで作成したコレクションは、ロックのために使用するモニターがひとつという構造であるため、 並行性に関して問題がありました。 また反復子を取得している最中にコレクションを

    nilab
    nilab 2013/03/04
    新たに追加されたコレクション2 | TECHSCORE(テックスコア) : BlockingQueue, ConcurrentLinkedQueue
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    nilab
    nilab 2011/01/07
    「BETWEEN 演算子は境界値も含むことも注意しなければなりません。SQL は境界値を含まない BETWEEN を直接的にサポートしていません」BETWEEN 演算子SQL -TECHSCORE-
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    nilab
    nilab 2007/08/06
    サーブレット-TECHSCORE- : tomcat 4 : ひとつのサーブレットに<servlet-mapping>を複数指定してもサーブレットのインスタンスはひとつだけ : Tomcat6だと1つの<servlet-mapping>に<url-pattern>を複数指定可能
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    nilab
    nilab 2007/07/22
    コア関数ライブラリXPathXML -TECHSCORE- : XPath では header:Header という要素名を指定する場合は コロン以前の文字列は不要で Header と記述する。
  • 2. ロケーションパス

    2.1 ロケーションパス (簡略な記述法) XPath では、XML 文書上のノードの位置を指定する際、ロケーションパスと呼ばれる式によって表します。ロケーションパスの書き方には、厳密かつ詳細に記述する書き方と、簡略に記述する書き方の 2 つがありますが、ここではまず、ファイルのディレクトリ構造の記法に似ていて直感的に分かりやすい後者の方から説明することにします。 主な構文を以下の表に示します。 構文 意味

    nilab
    nilab 2007/01/06
    ロケーションパス XPath XML -TECHSCORE-
  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

    nilab
    nilab 2006/08/29
    JUNG 入門 Jung -TECHSCORE- : ネットワーク(グラフ)で表現できる情報の解析や視覚化を行うためのフレームワーク
  • 1