タグ

ブックマーク / thinkit.co.jp (28)

  • [Think IT] 第1回:Javaの単体テストツールDBUnitって何? (1/3)

    DBunitでテストの自動化 第1回:Javaの単体テストツールDBUnitって何? 著者:プロトシステム 広谷 嘉巳 公開日:2008/03/10(月) DBUnitって何? 読者の皆さんはデータベースにアクセスするプログラムのテストはどのように行っていますか? Javaの単体テストの場合、JUnitを利用している方が多いのではないでしょうか。では、DBUnitはご存知でしょうか。DBUnitとは、プログラムの単体テストツール、それもデータベースにアクセスするプログラムの単体テストツールです。 連載では、このDBUnitを利用してテストを進めていく方法を解説していきます。分かりやすいよう実際にテストを行うテスト担当者や開発者の目線で書き進めていき、ポイントとなる点も解説していきます。 さて、第1回では「そもそもDBUntとはなんぞや」を明らかにしていきましょう。 近年のシステムの開発に

  • 企業で使われるHadoop

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

    takkecy
    takkecy 2010/06/05
    分散処理/MapReduce
  • [ThinkIT] 第5回:インジェクション攻撃 (1/4)

    今回はWebアプリケーションの脆弱性における4番目のカテゴリー「インジェクション攻撃」について解説する。 ※注意: この記事にはWebアプリケーションの脆弱性を解説する必要上、攻撃手口に関する情報が含まれています。これらの手口を他者が運営するWebサイトに向けて仕掛けると、最悪の場合刑事罰および損害賠償請求の対象となります。脆弱性の調査・検証は、必ずご自身の管理下のコンピュータシステムおよびローカルエリアネットワークで行ってください。この記事を参考にした行為により問題が生じても、筆者およびThinkIT編集局は一切責任を負いません。 インジェクション(injection)とは、内部に何かを注入することを意味する言葉だ。インジェクション攻撃とは、プログラムがごく普通に受け取る入力データの中にセキュリティを侵害するようなコマンドを巧みに混入し、それをコンピュータ内部で機能させてしまう攻撃手口の

  • [ThinkIT] 第5回:多機能なHibernate(前編) (3/3)

    Hibernaet Coreと一緒にダウンロードしたHibernate Toolsは、ソースの自動生成ツールで、HibernateのWebサイトで提供されています。来、Hibernateをより簡単に扱うためのEclipseプラグインなのですが、そのコアクラスにはAnt用のタスククラスが含まれています。 今回はこのHibernate Toolsを使って、Hibernate設定ファイル、マッピング・ファイル、DTOを作成していきます。

  • [ThinkIT] 第2回:Apacheをインストールしてみるのは難しくない (1/4)

    「第1回:Apacheはインターネットで使うWebサーバなのだ」では「Apacheとは何か」を解説しました。今回から3回に分けてApacheのインストール方法について解説します。まずバイナリパッケージからLinux環境へインストールする方法を解説し、第3回でソースコードからのインストール方法を、第4回でWindowsへのインストール方法をそれぞれ解説します。 連載で解説するインストール方法は大半がLinux上での操作になります。しかし、皆さんの中には「自宅にWindowsマシンしかない」という方も多いでしょう。そのような方は、ぜひ自宅のマシンにLinuxをインストールし、Apacheのインストールにチャレンジしてみてください。普段Linuxに触れる機会があまりない方もでもわかりやすいように解説していきますので、ぜひこの機会にLinuxに触れてみてくださいです。

  • [Think IT] 第2回:JRubyでHello, World! (1/2)

    JRubyを動かすにはJavaのインストールが必要です。JRubyはJava SE 1.4.2以降で動作します。下記のURLを辿り、バージョン1.4.2以降の任意のJDKをダウンロードし、インストールしてください。 ただしJRubyコミュニティでは、さらなる性能改善やマルチスレッド機能の向上のために、今後Java SE 5.0以上での動作に特化するか、議論が進んでいます。今後のことも見据えると、Java SE 5.0以上を導入しておいたほうがよいでしょう。 今回の動作確認環境では現段階で最新のJava SE6 Update2をインストールしました。

  • [Think IT] 第1回:JRubyとは? (1/3)

    2007年6月に「Ruby Kaigi」というイベントが日で開催されました。当日はRubyに関する様々な興味深い発表が行われ大変活況でした。そんな中でも特に大きな注目を浴びていた発表の1つとして「JRuby」があげられます。 JRubyはJavaRubyのクロスオーバーを実現する有望な技術です。連載ではJRubyの入門的な部分について紹介していきます。幅広い方々がJRubyを知るきっかけになれば幸いです。今回はJRubyの概要について解説します。 「Ruby」は、まつもとゆきひろ氏が中心となって生み出した、世界中で利用されているオープンソースのプログラミング言語です。ここ数年、Rubyは大きく注目され、取り巻く環境が大きく発展しています。その最大の要因はWebアプリケーション分野に彗星のごとくあらわれたアプリケーションフレームワーク「Ruby on Rails」(以下、RoR)である

  • [Think IT] 第1回:携帯サイトとPCサイトはここまで違う! (1/3)

    XHTML Mobile Profileに対応したHTML 連載では、「PCサイトを制作してきたけど、携帯サイトは初めて」といった企業や個人クリエイター向けにPCとモバイルの違いなどをふまえ、携帯サイトを公開するまでの入門的なノウハウを紹介していきます。 まず、今回はHTMLの種類やタグ、CSSなど携帯ブラウザによる違いと、画面サイズやキャッシュ容量などの端末による違いについて紹介していきます。 では、早速携帯サイトを作る上でマークアップの基となるHTMLについて説明します(図1-1)。携帯電話はPCと比べても非常に早い進化を遂げてきたため、どれも基HTMLを基準に作られていますが、携帯ブラウザ(iモード、EZweb、Yahoo!ケータイ)で表示可能なHTMLの仕様には実に多くの種類が存在します。 現在市場に出回っている機種ということに限定すれば、XHTML Mobile Prof

  • SQLを直接記述できるiBATIS(前編) | Think IT(シンクイット)

    皆さん、こんにちは。連載を担当するビーブレイクシステムズの山之内です。 前回、面倒なマッピング作業を軽減してくれるツールとしてO/Rマッピングツールというものがあることを説明しました。そこで今回からは、O/Rマッピングツールの1つである「iBATIS」で実際にサンプルを作成し、その機能を見ていきます。 今回は、「iBATIS」を利用する下準備をおこないます。 iBATISとは、Apacheのプロジェクトの1つとしてASF(Apache Software Foundation)で開発/管理されているO/Rマッピングツールです。2002年に発表され、2006年7月現在の最新バージョンは2.1.7です。 iBATISは「iBATIS SQL Maps」というO/Rマッピング機能と、「iBATIS DAO Framework」というDAOパターン用のフレームワークで構成されています。「iBATI

    takkecy
    takkecy 2008/10/08
    O/RマッピングHibernate以外ibatis
  • [ThinkIT] 第1回:O/Rマッピング (1/4)

    連載では今話題のフレームワーク「Ruby on Rails(以下、Rails)」と現在Webアプリケーション開発で主流であるJavaのフレームワーク群を比較していきます。 比較軸については、開発に関する事項(生産性やメンテナンス性など)を中心に解説していきます。第1回の今回はO/Rマッピングを提供するフレームワークについてです。 O/Rマッピングとは、オブジェクトとRDBのテーブルをマッピングすることをいいます。O/Rマッピングフレームワークはオブジェクト指向とRDBの仲介人となることで、アプリケーションの開発生産性を向上させます。 Railsからは同梱の「ActiveRecord」というO/Rマッピングのコンポーネントを取り上げます。対してJavaのO/Rマッピングとしては、もっとも知名度が高いと考えられる「Hibernate」と、Javaの正式仕様として策定された「Java Pers

  • 詳細設計書(前半)

    前回までに表1の? 7「機能設計書」の基設計ドキュメントとして、「表紙」「I/O関連図」「画面レイアウト」「帳票レイアウト」について紹介しました。今回からは、詳細設計に関するドキュメントについて順に説明していきます。 "機能"単位での設計書 機能設計書は、機能単位でドキュメントが作成されます。例えば、「プロスペクト登録画面」と「プロスペクト一覧画面」と「プロスペクト一覧表」という3つの機能があれば、3セットの機能設計書を作ることになります。ここで注意して欲しいのは、設計書の記述はあくまでもユーザのイメージする"機能"単位で、プログラミング単位の"プロシージャ"や"クラス"ではないということです。この"機能"という概念について、図1「プロスペクト登録画面」を例に説明しましょう。 図1を見ると、「プロスペクト登録画面」という機能は、画面、イベント、BL(ビジネスロジック)などのオブジェクトか

    takkecy
    takkecy 2008/09/18
    詳細設計書
  • [ThinkIT] 第4回:Springの導入によるDIの実現 (1/4)

    前回は、Seasar2を利用したインターフェースベースの設計について解説しましたが、今回はSpringを利用したインターフェースベースの設計とトランザクション管理を解説します。 では早速、連載の第1回の最後に出てきた従業員管理WebアプリケーションにSpringを導入したもの(連載の第2回でインストールした従業員管理Webアプリケーション。以下、サンプルと記述)を見てみましょう。Springの定義ファイルについての詳細な解説は後ほど行います。 サンプルコードではSpringを導入することによって、DIを利用する際にEmployeeManagerImplがEmployeeDaoインターフェースの実装を知らなくても済むようにしています。またSpringを導入することによって、EmployeeManagerImplで明示的にコーディングしていたトランザクション管理(commitやrollbac

  • [ThinkIT] 時代は今「DIxAOPコンテナ」

    昨今、雑誌やWeb上のニュースなどで「DI(Dependency Injection)」や「AOP(Aspect Oriented Programming)」、「Seasar2」や「Spring(正式にはSpring Framework)」という単語を目にすることが多いとお感じではないでしょうか。 もし、貴方が「また流行りものか」とお考えになってこれらの用語を今まで無視されていたら、ちょっと考えを改めてもらわないといけません。なぜならDIやAOPそしてDIxAOPコンテナ(注1)と呼ばれるSeasar2やSpringは一時的な流行で終るようなものではなく、今後のJ2EE/Webアプリケーション開発では主流になるものだと考えられているからです。 実際に、Seasar2やSpringはJ2EEを使ったWebアプリケーションの開発現場で利用されはじめています。また、多くの企業が導入の検討を開始し

  • [ThinkIT] 第7回:SpringによるAOPの導入 (1/4)

    前回は、Seasar2のAOPを利用したトレースログの出力処理と例外処理の追加の解説を行いました。今回は連載の「第4回:Springの導入によるDIの実現」で作成した従業員管理WebアプリケーションにSpringのAOPを利用したトレースログの出力処理と例外処理を追加していきます。 今回追加するトレースログの出力処理と例外処理は次のようになります。 EmployeeManagerImplにSpringが提供するインタセプターを用いたトレースログの出力処理と、独自実装の例外処理を追加します EmployeeDaoImplにSpringのAutoProxyを利用して独自実装のトレースログを追加します

  • Silverlightならではの見せ方とは?

    DeepZoomって何? 同じフィールドに複数のテクノロジーが存在している場合、いずれを採用するのかは、開発ごとにおいて非常に重要な問題です。そしてその判断材料としては、目に見える(そして理解しやすい)差別化のポイントがキーになりやすいのではないでしょうか。 特に、既にFlashという、ある種のデファクトスタンダードが存在する中であえてSilverlightが採用候補に挙がる際、クライアントさんは「Silverlightならではの見せ方ってありませんか?」と聞くことでしょう。 今回ご紹介するDeepZoomテクノロジーも、そんなSilverlight 2ならではの見せ方の機能の1つです。これは、一昨年にMicrosoftが買収したSeadragonというテクノロジーを元にしたもので、超高解像度の画像を効率よく表示する技術です。まずは百聞は一見にしかずということで、このDeepZoomテクノ

    takkecy
    takkecy 2008/07/22
  • Silverlightでブログパーツを作ろう!

    今更だけどWebサービスって何? 一口にWebアプリケーションと言っても、単体で動作するのか、何かサーバと連携して動的な情報を扱うのかによって、実装の仕方が随分と異なってきます。前回はコンテンツファイル単体で動作するものでした。今回は、外部Webサービスと連携し、サーバAPIから情報を取得・表示するSilverlightアプリケーションを、Expressionによるアニメーションを絡めながら作成します。 さて、念のため軽くWebサービスについておさらいしておきましょう。検索サイトやECサイトなど、ネット上にはさまざまなサービスを提供しているWebサイトが存在しています。そして最近ではそれらサービスプロバイダーの多くが、もともとホームページで提供していた個々の機能やプラットフォームそのものを、ネットワークを通じて別のユーザが利用できるようにしています。 Webサービスと呼ばれるそれらを利用す

    takkecy
    takkecy 2008/07/16
  • 多機能なHibernate(前編)

    皆さん、こんにちは。連載を担当するビーブレイクシステムズの山之内です。 前回、SQL文を使用しないタイプのO/Rマッピングツールの1つとして「Torque」を紹介しました。第5回となる今回は、機能が豊富なO/Rマッピングツールの「Hibernate」を実際にサンプルを作成しながら解説していきます。 Hibernateは、Gavin King氏を中心とした「Hibernateチーム」が開発しているJavaのO/Rマッピングツールです。現在(2006年7月)の最新バージョンは3.1.3です。Hibernateは機能が豊富で、強力な検索を可能にするオブジェクトクエリ言語のHQLや、シンプルで扱いやすいAPIを提供します。

  • O/Rマッピングとは?

    皆さん、はじめまして。連載を担当するビーブレイクシステムズの山之内と申します。連載ではO/Rマッピングについて検討していきます。 O/Rマッピング機能を提供してくれるフレームワーク(O/Rマッピングツール)はデータベースと連携するJavaアプリケーション開発において、既に必須となりつつありますが、O/Rマッピングツールはたくさん存在します。 しかし、各O/Rマッピングツールには特徴やクセがあり、実際の開発現場においてどのO/Rマッピングツールを導入すべきか迷っている人も多くいることでしょう。目的にあわせて適切なツールを選択しないと、思ったような効果が得られなかったり、かえって工数が増えたりする状況にもなりかねません。 そこで連載では、代表的な3つのO/Rマッピングツール(iBATIS、Torque、Hibernate)を取り上げて、実際に各O/Rマッピングツールを利用したサンプルを作

  • [ThinkIT] DIxAOPコンテナ「Seasar2とSpring」 第5回:AOPとは何か (1/4)

    AOPとはアスペクト指向に基づいたプログラミングのことです。しかし「アスペクト指向」や「それに基づいたプログラミング」とは何でしょうか。 今までにAOPについて様々な文献を読んでみたけれど、よく理解できなかったという方もいらっしゃるのではないでしょうか。何を隠そう、筆者も最初はよく理解できませんでした。 でも、それもそのはず、AOPを解説する人の多くは、アスペクト指向の思想や未来を含めて語っているからです。読者の多くは思想や未来はいいから、今の開発現場にAOPを取り入れると何ができるのか、取り入れると何がよいのかなどを知りたいのだと思います。今回はなるべく思想や哲学を除外した形でAOPの疑問に応えていきます(注1)。 ※注1: 連載ではアスペクト指向について用語も含め意訳して記述しています。アスペクト指向について正しく学びたい方は「アスペクト指向入門 千葉滋著 技術評論社」を是非お読みく

  • [ThinkIT] 第5回:Strutsで機能を実装してみよう

    今回は、連載の「第3回:Strutsにおける基中のキホン」で用いたサンプル・アプリケーションに基的な機能を追加してみたいと思います。 今回機能を追加することによって、サンプル・アプリケーションは図1のように動作します。

    takkecy
    takkecy 2008/06/12
    ログイン機能[フレームワーク]