• ベストアンサー

JavaBean

JAVA初心者です。来週からBeanの仕事の依頼がきました。 BeanでもEJBがありますが、EJBの仕事にはかかわらないそうです。自分なりにいろいろ調べているのですが、あまり良い情報がありません。 Beanとはset関数、get関数を含んだクラスのモジュールなのでしょうか? 教えてください。よろしくお願いします

  • Java
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • pasta500g
  • ベストアンサー率46% (30/65)
回答No.2

JavaBeanの要件(成立条件)は下記3点です。 ・引数の無いデフォルトコンストラクタを持つこと。 ・属性をprivateで持つこと。 ・属性abcを操作するセッター/ゲッターが下記名称ルールであること。  setAbc()/getAbc() 最近では、JSPでの利用が最もメジャーではないでしょうか。 JSPは<jsp:useBean id="" scope="" class="" />で使用するBeanを宣言して、<jsp:getProperty name="" property="" />で属性の値を取り出すという、上記仕様にフィットした文法を用意しています。 もしJSPの絡むWebシステム系のお仕事なら、JSP系の情報/書籍からあたってみることをお勧めします。Beanがどういう使われ方をするのか、というのが設計イメージを明確にする近道でしょう。

その他の回答 (1)

回答No.1

>Beanとはset関数、get関数を含んだクラスのモジュールなのでしょうか? それもValueObjectと言ってbeanの一つだと思います。 beanの定義は再利用可能なソフトウェアコンポーネントです。 下記のURLはjavaを始める人にいいサイトです。

参考URL:
http://atmarkit.co.jp/fjava/

関連するQ&A

  • O/Rマッピングを実践されている方へ

    O/Rマッピングを実践されている方へ O/Rマッピングを使うとどんないいことがあるの でしょうか? 私は、普段、JDBCとOracleのストアドプロシージャ を使っていますが。 最近、O/Rマッピングという言葉を聞くようになり、 EJB関連の本を少し読んでみましたが・・ でも、結局EJBの定義の中で ejb-ql というような ものがあって、そこにSQLのようなものを 記述するようになっていることを知りました。 Entitiy Beanに対して set~したり、 get~したり、するだけで あとは EJBコンテナが勝手にやってくれるし、 トランザクション、排他制御等は、 EJBコンテナにお任せして、 やりたいロジックだけ書けばよいとか、 みたいな夢のような話が書いてあります。 本に書いている例では1つのテーブルに対して、 read, writeしている例ぐらいしか。 のっていません。 「そんな単純な例だったら、あんまり恩恵がないなぁ。 設定ファイルを編集する手間が増えるだけ じゃないか。とさえ感じています。」 実際の業務アプリケーションでは、 DBから情報を取得するために 複数のテーブルを結合します。 SQL自体のパフォーマンスを あげるために、かなりコスイことを しなければならないし・・ モデルを実装するクラスの 検索系のロジックが複雑になってしまいます。 更新系であっても排他制御について考える必要があります。 あと、メモリ上にあるJavaBeanの構造が複雑に なってしまいますし、 メンテナンスも大変です それらの煩雑した状態がO/Rマッピングを 使うと、解決されて、 パフォーマンスも実用に耐えうるんでしょうか? だとすれば、なぜ?

    • ベストアンサー
    • Java
  • 「ひとつのインターフェースで複数のEJBクラスを参照する」の続き

    「ひとつのインターフェースで複数のEJBクラスを参照する」の続き こんにちは、k-makotoと申します。 インターフェースが同じなら↓のような構成は可能でしょうか? 「ひとつのインターフェースで複数のEJBクラスを参照する」の投稿の 続きなのですが、 仮にBeanごとにインタフェースが違うならこの構成はむりなのでしょうか? 子サーブレット1                                 Bean1 子サーブレット2---共通HomeI/F、共通HomeI/F-----Bean2 子サーブレット3                                 Bean3 子サーブレットN                                 BeanN Bean1の機能 データベースの検索 Data_Search() 検索結果をCSVファイルで取得する Get_Csv() Bean2の機能 テーブルの更新 Data_Update() テーブルの新規作成 Data_New() BeanNの機能 ........ のような場合だったら共通RemoteI/F側にBean1~Nのインタフェースの定義をしてさらに Bean1~Nに使わないインターフェースの実装も行わないとだめだということですよね.... .

    • ベストアンサー
    • Java
  • EJB(Enterprise Java Beans)のSessionBeanと普通のJavaクラスのアクセス

    こんにちは! 問題は山のようにあるんですが、とりあえず、 EJBを作る際にSessionBeanを作ったんですが、そのBean以外に DBにアクセスするクラスを自分で勝手に作ったら”abstract”だと 怒られるのですが、 ・普通のクラスを使用するのは根本的に間違ってるのでしょうか? また、 ・他にEntityなりSessionなり(よく違いを理解していなくてすいません・・・) でやる場合は、やはり新しくHomeやRemoteが必要なのでしょうか? 以上なんですが、わかる方がいらっしゃたらお願いします。 ※番外編なんですが、もしAPWORKS(富士通さんの)お使いの方いらっしゃいま したら、EJBを作る時の新規DAクラス作成方法を教えてください。 ながながとすんません。。。でした

    • ベストアンサー
    • Java
  • メッセージボックスクラスみたいなものはありますか

    JAVA初心者です。 VBでのMsgBox、VCでのMessageBox関数みたいな、お手軽なクラスは用意されていないのでしょうか? やはり、参考書等にある様にJDialogクラスから継承させて地道に作成するしかないのでしょうか?

    • ベストアンサー
    • Java
  • 関数の引数にクラスを使いたい

    VBにてクラスモジュール「clsTest」を作成し、プロパティ「ID」,「FName」を作成しました。 ASPファイルにてclsTestを作成し、プロパティに値をセットしました。 VBの別のクラスモジュール「clsInset」の関数「dbInsert」に 作成したclsTestを渡したいと考えています。 VBはdllにしてASPから呼び出します。 関数clsInsetの引数にどのように書けば渡せるのかがわかりません。 よろしくお願いします。

  • LWPモジュールについて教えてください。

    プログラミングは初心者です。 LWPモジュールのサブクラスLWP::Simpleの get()という関数を使いたいです。 現在、Perlは5.005_3を使用しています。 use LWP::Simple; require LWP::Simple; ・ get(URL) と入れると、500 Internal Server Errorと言うものが出てしまいます。 LWPを使うとき、どのようにすれば使えるのかご指導お願いいたします。

    • ベストアンサー
    • Perl
  • CPU使用率が100%になり特定のプログラム処理が行われない

    CPU使用率が100%になり特定のプログラム処理が行われない 先日会社で運用しているシステムで、ある一定の処理がスキップされてしまうようなトラブルが発生しました。 状況としては、アプリケーションサーバー全台において、ある時間からずっとひとつのCPU使用率が100%となり、LoadAverageがずっと1のままです。 そして、プログラム内でEJBの非同期処理をしていた部分が一切行われなくなりました。 アプリケーション自体は数日正常に稼働しており、突然起きたことなので、プログラム自体の確認もしましたが不備が見つかりません。 エラーログにも何も残っていませんでした。 一切の非同期処理が行われていないので、EJBのバグか何か?とも思いましたが見つけることはできませんでした。 なお環境は以下の通りです。 ・Linux(CentOS,RedHat) + GlassFish + Java + memcached + MySQL ・EJBはStateless Session Beanを使用。 ・APサーバのCPUはサーバによってデュアルコアのものとクアッドコアのものがあります。 全く原因がわからず、何かアドバイスがいただけないかと思い書き込ませていただいています。 あまり細かい情報を記載していないので、聞いていただければどんどん補足します。 些細なことでも良いので可能性や情報をいただければと思います。 よろしくお願いします。

    • ベストアンサー
    • Java
  • JavaScript → Bean(DB接続)

    JSPを使用して、テキストフィールドに記述、ボタンを押下するとDBに登録されるというのを作りたいと思っています。 最初は、ボタンの押下(JavaScript)→クラスの呼び出し(JSP)→Beanとやろうと思っていたんですが、JSPはサーバー側の処理なのでできませんとのことで、JavaScript→Beanを考えています。 ・・・が!!JavaScriptでJavaは使用できるのでしょうか? 検索をしたんですが、アプレットの関数を呼び出すことができるという事以外分かりませんでした。 では回答よろしくお願いします<(_ _)>

  • オブジェクト指向

     C++ではクラスがありますが、このクラスで「公開(public)」「非公開(private)」キーワードがあります。クラスが変数を持つ場合、どういった変数を公開にしておき、どういった変数を非公開にしておくべきでしょうか。  Setなんたら()、Getなんたら()というメンバ関数を大量につければ一応変数は全部privateでもできるようですが・・・。なんか非効率的な気がします。

  • ArrayListからBean配列に値をセットするには?

    お世話になっています。 今うまくいかずに困っていることがありまして、 ご存知の方がいらっしゃいましたら、 ご回答いただけないでしょうか? 質問の内容は以下の通りです。 ArrayListにセットされているデータを Bean配列にセットするにはどのようにしたら よいのでしょうか? 自分では以下のようにしているのですが、 デバッグすると落ちてしまいます。 // Bean配列の生成 Bean[] bean = new Bean[arrayListList.size()]; // Iteratorにより要素を取得する Iterator it = dataList.iterator(); // ヘッダー情報Bean配列の行番号 int i = 0; // ArrayListのi行目のデータをBeanにキャストし、 // i行目のBean配列にセットする while(it.hasNext()){ bean[i] = (Bean) dataList.get(i); i++; } ちなみに、キャストしようとしているBeanには int型の項目があるんですが、そういうのが原因で 落ちるのでしょうか? ご存知の方がいらっしゃいましたら、ご教授ください。

    • ベストアンサー
    • Java

専門家に質問してみよう