タグ

Javaに関するmasato_spicaのブックマーク (142)

  • 開発環境フルスタック的なもの - たぷつきません

    仕事の機会で、3日前に情報収集した内容です。javaに限らないとは思いますが、java前提で書いてます。 開発上のプラクティス SCM,ITS(BTS),JUnit,Jcoverage,check-style,FindBugs これらをIDEやCIに統合する。 負荷テスト,プロファイラ,監視ツール 人の手を介さないとならないかな。 項目詳細 タイトル 製品例 SCM OSS Concurrent Versions System (CVS) OSSでは標準的な存在。 IDEプラグイン:Eclipse, NetBeans, JBuilder Subversion (SVN) IDEプラグイン:Eclipse, NetBeans プロプライエタリ Microsoft Visual Source Safe (VSS) 強制ロックがデフォルト。異なる場所の共有リンクといった機能がある。IDEプラグイ

    開発環境フルスタック的なもの - たぷつきません
  • 認証は Struts2 のアクションで独自に行う - Struts 2+Spring 2+Tiles+Acegi+iBatis+GWT+JUnit 4+JMockit でフルスタックJAVAフレームワーク

    認証の仕組みがAcegiにも当然用意されているが、設定ファイルにSQLを書いたり、Glueコード書いたりなんかしっくり来ない。 んでGlueコード書くぐらいならおんなじらいのコード量で済むんだから自分で書いた方が見通しが良い。 パスワードチェックしてOKだったらROLE_USER、ROLE_ADMINのロールを割り当てる場合はこんな感じ import org.acegisecurity.GrantedAuthority; import org.acegisecurity.GrantedAuthorityImpl; import org.acegisecurity.context.SecurityContextHolder; import org.acegisecurity.providers.UsernamePasswordAuthenticationToken; : GrantedAut

    認証は Struts2 のアクションで独自に行う - Struts 2+Spring 2+Tiles+Acegi+iBatis+GWT+JUnit 4+JMockit でフルスタックJAVAフレームワーク
  • @IT:連載 役に立つXMLツール集(6) CastorでオブジェクトをRDBにマッピング

    XMLプログラミングでは、DOMやSAXといったAPIを使用すると単調なコードを繰り返し書くことになり生産性が上がらないものだ。連載では開発者が“楽をする”ために役立つXML関連ツールを紹介していく。(編集局) もし、Javaの開発者にデータベースを組み合わせたアプリケーションを作ったことがあるかと問い掛けたら、圧倒的に「ある」という返事が返ってくるでしょう。サーバサイドになるとほぼ全員が「ある」と答えるはずです。データベースにアクセスするプログラムは頻繁に使うので、自分なりに工夫したAPIを作っている人がかなりいることでしょう。 ただ、個人やある部署が作ったAPIは特定の状況下でのみ動作するようになっていることが多く、データベースシステムが変わったり、要件が変わったりすると修正や拡張が必要になることが多いものです。この点、O/Rマッピングと呼ばれるツールは通常、いくつものデータベースシ

  • 例外処理とロギングのベストプラクティス:CodeZine

    はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです

  • サービス提供終了のお知らせ

    日頃より、アレスネットをご愛顧いただきまして誠にありがとうございます。 「ホームページサービス」のサービス提供は2016年1月31日をもちまして終了させていただきました。 これまで長らくご利用いただき、誠にありがとうございました。 今後も、皆様によりよいサービスをご提供させていただけるよう、サービス品質向上に努めて参りますので、何卒、ご理解いただけますようお願 い申し上げます。 <アレスネットをご契約のお客様へ> 後継サービスとして「userwebサービス」を提供させていただいております。 詳しくは、以下のリンクをご参照ください。 ▼「userwebサービス」のご案内 http://www.ejworks.info/userhp/alles/index.html 今後ともアレスネットをご愛顧いただけますようお願い申し上げます。 株式会社イージェーワークス アレスネット カスタマーサポート

  • JUnitで作成されたユニット試験のカバー範囲を検証可能 - Jumble 1.0.0 | エンタープライズ | マイコミジャーナル

    Jumbleの初のパブリックリリースとなる「Jumble 1.0.0」が17日(米国時間)、公開された。同アプリケーションはこれまでReel Twoによって開発されてきたツール。今回はじめてGNU GENERAL PUBLIC LICENSE Version 2のもとでオープンソースソフトウェアとして公開された。JumbleはJavaで開発されたユニット試験カバー範囲の検証ツール。JUnitを使ったユニット試験に対応している。 Jumbleはユニット試験の対象となるクラスの内容をバイトコードレベルで微妙に変更させながら同試験クラスを実行。さまざまに条件を変えたうえで、ユニット試験クラスがきちんとこれらの条件をカバーするように組まれているかを検証する。結果は0%から100%までのメータで表示される。100%が表示されれば素晴らしいユニット試験プログラムが組まれているということになる。 今回は

  • 【ハウツー】速攻解説! JUnit 4.4 - 新アサーションメソッド「assertThat」の用途とは | エンタープライズ | マイコミジャーナル

    18日(米国時間)、JUnitの最新版となるJUnit 4.4が公開された。JUnitJavaで開発されたユニットテストフレームワーク。Common Public License Version 1.0のもとに公開されているテストフレームワークで、ユニットテスト用のフレームワークとしては事実上の標準。後発のユニットテストフレームワークに比べて扱いが難しいと批判されることもあるが、4系からはアノテーションを導入するなどしてシンプル化が進められてきた。4.4ではいくつか新機能が導入されているのでここで紹介したい。 新しいアサーションメソッドの導入: assertThat JUnitではテストを記述する方法としてアサーションメソッドを提供している。Assert.assertArrayEquals(...)などがそれにあたるもので、ほかにもassertEquals、assertFalse、ass

  • 第1回 なぜSpringなのか

    Webアプリケーションは,レイヤーによって論理的に分割され,各レイヤーでは様々なフレームワークを使用して効率的に開発を行います。例えば,図1のようにプレゼンテーション・レイヤーにはStruts,データアクセス・レイヤーにはHibernateを使うといった具合です。各レイヤーに適用するためのフレームワークは様々な種類があるため,作成するアプリケーションの要件に合わせて選びます。 このように各レイヤーごとに,フレームワークを適用して開発する方式はかなり一般的になりましたが,実際にプログラムを作っていく上で,いくつかの問題が出てきました。 変更に弱い 図1を見ると,各レイヤーは一見独立しているように見えるのですが,実際のところ,隣り合うレイヤーは密接に連結しています。例えば,ビジネス・レイヤーからデータアクセス・レイヤーのオブジェクトにアクセスする場合,通常は以下のようなプログラムになるでしょう

    第1回 なぜSpringなのか
  • 【コラム】Java API、使ってますか? (19) JSR 291でJavaプラットフォームにダイナミックコンポーネントモデルを導入 | エンタープライズ | マイコミジャーナル

    JSR 291: Dynamic Component Support for Java SE 連載では第12回の記事で、Javaプラットフォームにおけるモジュラリティをサポートする「JSR 277: Java Module System」について取り上げた。JCPにはJSR 277と同様にモジュラリティの強化を目指すAPIとして、「JSR 291: Dynamic Component Support for Java SE」がある。 JSR 291は、標準化団体OSGi Allianceによって提供されているダイナミックコンポーネントモデル仕様をベースとしたダイナミックコンポーネントフレームワークを、Java SE環境で利用できるようにしようというもの。OSGi仕様ではJavaプラットフォームにおけるアプリケーションのコンポーネント化やライフサイクル管理やサービスリポジトリなどをサポート

  • Javassistでクラスのバイトコードを直接書き換える:CodeZine

    はじめに Javaのクラスファイルというのは、ソースコードからコンパイルして作成する――これが、長い間の常識でした。しかし昨今、この常識を覆すような技術が次々と登場しています。最近のフレームワークなどを見ていて、ふと不思議に思ったことはありませんか? XMLで必要な情報を定義すると、自動的にそのクラスが生成されたり、既にあるクラスの機能が書き換わったりする。プログラマがソースコードを書くこともなく、必要なクラスが作成されてしまう。そうした「クラスの自動生成」の技術を大幅に進歩させたのが「クラスのバイトコードを直接書き換える」技術です。対象読者Javaを使ったプログラム作成を行っている中級レベルのプログラマ。クラスのバイトコード操作について興味のあるひと。同じようなBeanクラスをひたすら作り続けるのに、いい加減、嫌気がさしている人。 クラス生成の新しい形とは? 最近のフレームワークなどでは

  • 不要なAPIは後でダウンロード! - 同梱JREを最小化するExcelsior JET 5.0登場 | エンタープライズ | マイコミジャーナル

    Excelsiorは23日(ロシア時間)、Excelsior JETの最新版となる「Excelsior JET 5.0」を公開した。Excelsior JETは、Java SE 5.0対応のJavaアプリケーションをネイティブアプリケーションに変換するプロダクト。ネイティブアプリケーションに変換することで、サイズの縮小、アプリケーションの高速化、難読化などを実現できる。5.0における特徴は、Java互換を保ちながらもJava SE実行環境のサイズを削減することに成功した点にある。 Javaアプリケーションを配布する場合、実行環境であるJava SE実行環境(以降、JRE)を添付したいことがある。しかし、JREはAPIをすべて含んでいるため、ある程度サイズが大きい。そこで、Excelsior JET 5.0では、JREからアプリケーションが使っていないAPIをとりのぞき、サイズを縮小したJR

  • Javaの父が語る「JavaFX」、そしてスクリプティング言語の現状 ― @IT

    Java言語を発明したジェームズ・ゴスリング氏は、サン・マイクロシステムズの副社長でフェローでもある。同氏はJavaOneでeWEEKのシニアエディター、ダリル・K・タフトの取材に応え、Javaのオープンソース化、Javaプラットフォームの新たな方向性とプログラミング全般、新しいサンの技術とマイクロソフトとの競争について語った。 ――Javaはいかにして第2のC++になったのですか? あなたは、開発者がC++の泥沼を避けられるようにJavaを発明したようですが、いまは多くの開発者が、Javaは同じ膨張の問題を多く抱えていると言っています。 ゴスリング氏 その質問はいろいろな意味に取れますね。私は、Java言語はC++が陥ったネズミの巣のような複雑さをうまく避けてきたと思っています。C++の問題の多くは、大昔、セキュリティなどを考えることが重要ではなかったころの設計によるものです。 それにJ

  • プラグインで拡張できるJavaプログラムを作る:CodeZine

    はじめに 最近のプログラムの多くは、最初から機能がすべて確定したものではなく、後からプログラマが拡張していけるような形をとるようになってきています。この種のプログラムでよく用いられるのが「プラグイン」でしょう。仕様にそって作成すれば誰でもプラグインを作り機能を拡張していくことができるというのはなかなか魅力的です。そこで、Javaプログラムでこうした「プラグインによる機能拡張」を実装する方法について考えてみることにしましょう。対象読者Javaを使ったプログラム作成を行っている中級レベルのプログラマ。プラグイン型のプログラム拡張に興味がある方。 プラグインによるプログラム拡張とは? 多くのプログラムでは、プラグインと呼ばれるプログラムを作成することで機能を拡張することができます。このプラグインというのは、大抵の場合、次のような働きをします。あらかじめ用意されている仕様に沿ってプログラムを作成す

  • 【コラム】イマドキのIDE事情 (5) もうひとつの無償IDE - "Oracle JDeveloper"を試してみる | エンタープライズ | マイコミジャーナル

    もうひとつの無償IDE Java開発でよく利用されているIDEといえばオープンソースであるEclipseかNetBeansだろう。連載でもこれらのIDEを取り上げる機会が多く、充実した機能に加えて無償であるという点も個人ユーザにとっては嬉しいポイントだ。 上記2つ以外だと、中にはIntelliJ IDEAを使っているという方もいるかもしれない。IntelliJ IDEAは商用製品だが、オープンソース開発者には無償でライセンスを供与している。 しかしオープンソースではないものの、無償で利用でき、商用製品並みの機能と完成度を誇るIDEがもう1つ存在する。それが今回紹介する「Oracle JDeveloper」(以下JDeveloper)だ。なお、稿の内容は執筆時点で最新のJDeveloper 10.1.3.2に基づいている。 JDeveloperの入手とインストール JDeveloperは

  • mycom:【ハウツー】JavaでAtomやRSS等のフィードを扱うならこれ! - ROME (1) ROMEの特徴 | エンタープライズ | マイコミジャーナル

    ROMEの紹介 どんなプログラミング言語で実装するにせよ、RSS/Atomフィードフォーマットの乱立は頭の痛い問題だ。RSS 0.9、1.0、2.0やAtom 0.3、1.0など、様々なフォーマットのフィードが世の中にはあふれており、その全てを正しく取り扱えないとフィードを取り扱うアプリケーションとしては失格である。 フィードの生成に関しても同様で、ユーザが使っているフィードリーダーがRSSしか取り扱うことができないということも考えられるため、提供者側でも複数のフォーマットを配信できるようにしておきたいものだ。 要は、さまざまなフィードフォーマットを統一的に取り扱う仕組みが必要なのである。筆者は以前、JavaScriptでそれを実現するためのAPIとしてGoogle Feed APIを紹介した。今回は、そうした要求をJavaで満たすためのライブラリとしてROMEを紹介しよう。 ROMEの現

  • 【レポート】Java EE 6のEJBに拡張要望 - JBoss・Gavin King氏 | エンタープライズ | マイコミジャーナル

    エンタープライズJavaの開発者ならJBossのGavin King氏をご存知だろう。Hibernateの生みの親で、JBossのHibernate獲得にあわせて現在はJBossに在籍している。 同氏はここ1年ほど、EJB 3.0とJSFを結びつけるフレームワークとしてJBoss Seamを開発し、BorlandとGoogleOracle、Sun Microsystemsの4社とともにJSRとして標準化を進めている。 同氏はこの経験からJava EE 6に対してもいくつかの提案を行っている。そのひとつがEJBの拡張だ。この提案は間もなくJSRとして提案される見込みだが、既に同氏はブログに提案内容と提案に至った理由を投稿している。ここではそのなかから興味深いものを紹介したい。 EJB Session Beansの並行アクセスサポート 最初に挙げられているのが複数のクライアントからの並行アク

  • Ajax+Java連携のEoDを実現するMyEclipse (1/1) - @IT

    Ajax+Java連携のEoDを実現するMyEclipse:MyEclipseでAjax+Javaをやさしく開発(1) MyEclipseはJava EE開発を効率化するプラグインの集大成でかつ統合開発環境だ。併せてAjaxの開発を容易にする機能も持ち合わせている。連載では、サーバサイドにJava EEを、クライアントサイドにAjaxを用いたWebアプリケーションをMyEclipseを使って容易に開発する手法を紹介していく。また、AjaxとJava EEの連携にはAjax開発用のJavaフレームワーク「DWR」を活用する。(編集部) Java EE(J2EE)に代表されるWebアプリケーション開発では、長い間サーバサイド側の技術に重点が置かれてきました。ところが、最近、現場でもAjax(Asynchronous JavaScript+XML)でクライアントをリッチにできないかという要望が

    Ajax+Java連携のEoDを実現するMyEclipse (1/1) - @IT
  • 【コラム】Java API、使ってますか? (3) 古いAPIも進化している!? - JSR 919: JavaMail 1.4 | エンタープライズ | マイコミジャーナル

    はじめに - え、900番台のJSR? JSRの追跡番号(JSR-XXX)は、原則としてJCP運営担当であるPMO(Program Management Office)が申請を受理した順番に付けられている。たとえば前回紹介したリアルタイムJava仕様はJSR-1なので、JCPが発足していちばん最初に申請されたJSRということになる。そして現時点ではJSR-310(Date and Time API)まで公開されているため、これが最も新しく登録されたJSRということだ。 ところで、JCPのサイトにはそれよりもさらに番号の大きい、900番台のJSRが公開されている。これら900番以降には、JCPが発足するよりも以前に策定されたAPI仕様などが多くJSRとして登録されている。たとえば以下のようなAPIがある。 JavaMail Java Transaction API(JTA) Java Med

  • c-sq.com

    This domain is registered at Dynadot.com. Website coming soon.

  • DWRはAjaxアプリを作りたいJava開発者にお勧め

    DWRはAjaxアプリを作りたいJava開発者にお勧め:MyEclipseでAjax+Javaをやさしく開発(2)(1/4 ページ) MyEclipseはJava EE開発を効率化するプラグインの集大成でかつ統合開発環境だ。併せてAjaxの開発を容易にする機能も持ち合わせている。連載では、サーバサイドにJava EEを、クライアントサイドにAjaxを用いたWebアプリケーションをMyEclipseを使って容易に開発する手法を紹介していく。また、AjaxとJava EEの連携にはAjax開発用のJavaフレームワーク「DWR」を活用する。(編集部) Ajaxアプリケーション開発用のライブラリは数多くありますが、Java開発者がすんなり入っていきやすいのはDWR(Direct Web Remoting)でしょう。記事では、MyEclipseを使ってDWRの簡単なサンプルを開発しながら、DW

    DWRはAjaxアプリを作りたいJava開発者にお勧め