ので教えてください。
アプリケーションコンテキストを得るために
struts2とspringが連携していない場合は
ApplicationContext appContext=new ClassPathXmlApplicationContext("ApplicationContext.xml");
の1行でできますが、
struts2とspringが連携している場合は
ActionContext context=ActionContext.getContext();
Map<?, ?> map=context.getContextMap();
ServletContext application=(ServletContext) map.get(StrutsStatics.SERVLET_CONTEXT);
WebApplicationContext appContext=(WebApplicationContext)
application.getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
の長文の4行になります。
勿論この場合は最初の方法も使えます。
struts2とspringを連携しないほうがspringを簡単に使えるように思います。
設定ファイルの記述やプログラムコードが長くなるのにもかかわらず、
敢てstruts2とspringを連携するメリットを教えてください。
No.2ベストアンサー
- 回答日時:
struts2(画面)->spring2.5(Business Logic)->Hibernate(Data Access Object)
なだけですよね?
それぞれが依存性がないPOJOで作成することができるため、
単体テストにおいて、テスト対象モジュール以外が未作成でも
テスト可能というのが最大のメリットです。
単純に考えると、
Business Logicにて複数のエンティティを同時に更新することがなければあまり重要となることはないですが、
バージョンアップやポーティング対応で
struts2を他の画面系Frameworkに、
Hibernateを他のData Access Object Frameworkに差し替えた場合に、
他の部品をを修正する必要がないため、
工数が削減できると考えられます。
ありがとうございます。
テストが簡単にできる
フレームワークやORマッピングの変更が用意になる
ということですね
フレームワークの変更は現実的でないと思いますが
開発規模が大きいとそれなりに大きくなりそうですね。
No.1
- 回答日時:
>>敢てstruts2とspringを連携するメリットを教えてください。
システム開発は、開発をしていく途上で、またリリース後に仕様が変わることが多いと思います。このとき、「ちょっとした軽微な修正が1カ所発生した!」ということがよくあります。その影響が予想外に、玉突き的に多くのモジュールに影響することもよくあると思います。
そのとき、JavaやJspのソースを何本もメンテする必要が発生するよりも、最初は作るのが大変でも「1カ所の修正はしょうがないが、連携しているので他のソースを修正しないでもいい」となれば嬉しいのではないでしょうか?つまり開発中やその後のメンテが楽になる(かもしれない)というメリットを狙っているのではないでしょうか。
ただ、個人的な印象では、例にあげられた1行を長ったらしい5行に置き換える価値はあるのか?プログラマ的に損得勘定としてどうなの?(センス悪ーい!)とか、「連携しているから、1カ所で済む修正が、さまざまな多数のモジュールの修正を逆に呼び込んで大変になるのでは?」なーんてJavaの初心者は思ってしまいますけどね。
ありがとうございます。
最初の環境設定、設定ファイル作成、初期のコードの記述
において多少導入が大変でも後は少し楽になり、メンテにも有利ということでしょうか。
大勢で開発しているや規模の大きいものを開発している場合は導入で苦労する人は一人であり苦労するのは開発期間からすればとるの足らないので
全体として導入コストはペイできるということですね。
逆にいえば
少人数、小規模でプログラミングする場合は連携するまでもないと言うことですね。
目的がSpring+Hibernateの機能でデータベースアクセスをDAOにより行うためだけならば連携をするまでもないですね。
有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Python Java,Springフレームワークの習得 1 2023/08/02 15:28
- TOEFL・TOEIC・英語検定 このmayはどういう意味ですか? 4 2022/11/01 11:04
- Android(アンドロイド) Ymobile アンドロイドについて 2 2022/04/05 11:55
- 英語 飛び出しナイフの説明文を和訳しています… 3 2022/10/19 17:09
- JavaScript API連携のプログラミングについて(Typescript) 2 2023/05/03 11:00
- 関東 高齢の両親と東京観光 効率よく回るツアーを知りたい 2 2023/05/24 17:17
- 英語 文の構造をご教示ください 2 2023/01/01 18:03
- その他(スマホアプリ・スマホゲーム) アプリの事で質問です。 今日はローソンアプリとdポイントの事で質問です、小学生だと思って回答して頂け 2 2023/06/20 19:41
- Wi-Fi・無線LAN PC起動でスマホ連携が出来無くなる 2 2023/01/09 08:22
- 確定申告 確定申告の生命保険料控除の添付書類について 1 2023/02/03 22:55
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
googleスプレッドシートのスク...
-
googleスプレッドシートのGASに...
-
自作Androidアプリのデータ引き...
-
eclipseで作ったプログラムを他...
-
マイクラでPythonのプログラミ...
-
jdk17.06のインストーラーが起...
-
オブジェクト指向プログラミン...
-
Verilogについて質問です。この...
-
論理回路設計をVerilogで行う問...
-
ゲーム開発の入門書を探しています
-
jdbcでinsert,delete,createをe...
-
session,requestはjspで未定義...
-
サーブレットをapacheで公開す...
-
下記のリストならno002が含まれ...
-
is this even a thing?
-
JAの支部?地域の農協のカード...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
-
ショートカットキーについて
-
list の空は [] ってあわらすのに
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPのクラスをコンパイルできな...
-
isapi_redirect.dllのダウンロード
-
jspプログラムについて
-
Eclipseでサーブレットを使用す...
-
ApachePOIでエラー
-
tomcatの不具合
-
自分で作成したservletを起動す...
-
javax.servlet.ServletExceptio...
-
eclipseでTomcat起動時にエラー...
-
TOMCATで上手く起動しない
-
No collection foundと出てしま...
-
IISとローカルと別サーバのTomc...
-
eclipseのtomcatでエラーが発生...
-
Apache-SSLとmod_sslの違いは?
-
Tomcatプロジェクトが正常に動...
-
strutsでトップページアクセス...
-
POIの導入
-
[apache+tomcat]なぜ!?実行し...
-
apache2.2-tomcat6.0の連携のエ...
-
非同期xmlhttprequestでのポー...
おすすめ情報