- ベストアンサー
アクション?ロジック?
strutsでWEBシステムを開発しております。 アクションとビジネスロジックのクラスの分け方がいまいち判りません。 (1画面にアクションが1つ、という決まりで) わかり易く覚える方法は無いでしょうか? 具体例が書いてあるサイトなどありましたら教えて下さい。
- Java
- 回答数1
- ありがとう数0
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
http://www.javaroad.jp/opensource/js_struts12.htm 違いあるんですか? アクションに複雑じゃなければ処理かいてます・・。 とりあえず私の良く見てるサイト乗せます。 (ここにはアクション・クラスとはStrutsアプリケーション内で、ビジネスロジックを担当する部分です。ってかいてますが・・。)
関連するQ&A
- C#.NET2005 DllへのWebコントロール渡しについて
初めまして、towatowatoです。 C#.NET2005(ASP.NET)の開発を行っています。 構成としては下記のようにして開発しています。 ----------------------------------------------- <ソリューション> --[Webプロジェクト] | --Web画面 --[クラスライブラリプロジェクト] | --Web画面用ビジネスロジック | --Web画面用データロジック ----------------------------------------------- Webプロジェクト側でクラスライブラリプロジェクトで 作成されたDLL参照をして、呼び出ししています。 しかし画面コントロールをビジネスロジックに渡そうにも 下記エラーが表示されます。 ------------------------------------------------------------- 'System.Web.UI.WebControls.WebControl' が参照されていないアセンブリで定義されています。 アセンブリ 'System.Web, ersion=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' への参照を追加してください。 ------------------------------------------------------------- ビジネスロジッククラス側で ”using System.Web.UI”としても認識致しません。 どのようにすればいいのでしょうか? 初歩的な質問かもしれませんが、 何卒ご教授のほどよろしくお願いします。
- 締切済み
- C・C++・C#
- JavaBeans,JSP, Servlet(MVC)のみを使った開発って本当に業務で行われているの?
こんにちは、私がWeb技術を勉強するときによく使う本として、Sun教科書Web Component Developer(試験310-080の対策本なのですが、おそらく現在売っているものより1バージョン古いです)という本があります。 この本には,webのMVCアーキテクチャは以下のように 設計されると記載されています。 サーブレット:Controller(システム処理の制御) JSP :View (画面) JavaBeans :Model (ビジネスロジック) しかし、実際の業務でビジネスロジックがJavaBeansのみで行われているシステムはあるのでしょうか?JavaBeansの定義としては、getXXXやsetXXXアクセス、またコンストラクタが引数をもたずpublicなどと ありますが、これを無視した普通のJavaクラスもビジネスロジックに使われているのではないでしょうか? EJB, Strutsを使わない開発環境でという条件付で、どなたか業務経験のある方、この疑問に答えていただけないでしょうか?
- 締切済み
- Java
- ビジネスロジックの実装
JavaとOracleを使って業務システムを開発しています。 ビジネスロジックをどこに持ってくるか悩んでいます。 ストアドプロシージャにビジネスロジックを実装した方がパフォーマンスもよくなると思うのですが、社内的には反対意見も多いです。 ストアドプロシージャにビジネスロジックことがある方、検討したことがある方、利点や弊害など教えてください。 逆にJava側に乗せた方がよいという方も、ご意見頂戴できればありがたいです。 よろしくお願いいたします。
- ベストアンサー
- Oracle
- ビジネスロジック層について
ビジネスロジック層って実際にどういった 処理を書くのですか 具体例を教えてください 私が想像するに 当月の残業代の合計を求める とか?? 沢山の具体例が知りたいです。 漠然とした質問で申し訳けありませんが よろしくお願いいたします
- 締切済み
- Java
- ロジックに関して
ロジックに関して C#で開発をしています。 言語というよりかロジックという初歩的な部分になってしまうかと 思われますが、教えて下さい。 今、ある画面を開発しており、そこで年月を指定し、該当するレコードを 表示させたいと考えています。 それだけなら全く問題はありませんが、画面上に翌月、前月というような ボタンを設け、それらが押された場合、翌月データ、前月データというように 遷移させたいと考えています。 単純にその都度データベースにアクセスすれば簡単にできますが、何か 他に方法はないかと考えています。 配列やデータセット等を用いて作成する等、、、 良い方法がありましたら教えて下さい。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- java/strutsのFormの役割について
現在java/Strutsで開発を行なっています。 DB接続クラス(以下opeクラス)への値の受け渡しは、Beanクラスで行なっています。 ※単一項目の場合はBeanクラスは使用せず、そのまま渡す場合もあります。 (1)画面の入力項目をopeクラスへ渡す場合のFormクラスからBeanクラスへの変換(値の詰め替え) (2)opeクラスから返却される検索結果のBeanクラス⇒Formクラスへの変換(値の詰め替え) (1)、(2)の処理はどこに持つべきものでしょうか? 現在のクラス構成は XXXForm⇒strutsのFormクラス XXXAction⇒strutsのActionクラス XXXCtrl⇒Actionから呼ばれるビジネスクラス XXXope⇒⇒ビジネスクラスから呼ばれるDB接続クラス XXXBean⇒opeとの値のやり取りを行なうクラス 自分はビジネスクラスに実装をしようと思ったのですが Formクラスに実装するべきだ、といわれました。 値の紐付けの意味もこめて、Formに変換メソッドを持つべきらしいです。 変換にあたって、基本そのまま値を設定する前提です。 (少しだけロジックも存在しますが、A変数の値が~だったらB変数に値を入れる程度) 自分的にはFormクラスは画面、BeanクラスはDB接続とのやり取り それぞれ位置づけが異なるため、FormクラスにBeanクラスを宣言するのはどうかと思いました。 本来はどのような形が正しいのでしょうか?
- ベストアンサー
- Java
- logic:iterate でのcheckboxの値取得
struts1.3にてDBから2レコード値を取得するとします。 取得の方法はActionクラスでsetAttributeして jsp側ではlogic:iterateで取得しています そこにcheakboxを置きたいと考えています □ 1 名前 年齢 性別 □ 2 名前 年齢 性別 「詳細ボタン」 まず、チェックボックスにチェックされた事をどう判定するのか? 次に、チェックを付けて「詳細ボタン」を押下した後、チェックボックスとDBから取得した値の詳細をどう関連付けるかが分かりません。 教えて下さい。。。
- ベストアンサー
- Java
- strutsのactionクラスで遷移先のBeanを取得する方法
現在strutsを使用しているのですが,どうしても遷移先のBeanを取得出来ません。 状況としまして、JSP画面が2つあり(仮に画面A,Bとします)、画面Aから画面Bに遷移をしようとしています。 そして画面Aに使用しているプロパティ値を、画面Bにあるプロパティにセットした状態で表示したいのです。 現在actionクラスで画面Aのプロパティ値は、struts-configでnameを画面Aのbean名にすることで、取得できています。 しかし画面Bのbeanのプロパティにセットする際には、actionクラスの引数であるActionFormは画面Aのbeanを指定しているため、使用できず、新たに画面Bのbeanを呼ぶ必要があるのですが、その取得方法がわからないのです。 説明がわかりにくいかもしれませんが、その際は御指摘下さい。 宜しくお願いします。
- ベストアンサー
- Java
- 教えてください:strutsのhtml:formタグがjspに展開された状態の、actionの値について
java初心者です。 どなたか教えていただけませんでしょうか? JAVAのstrutsを使用してソフトを作成しています。 JSPに記載した「<html:form action="/authentication" focus="id"> 」 との記述が、WEB(IE)に展開されたソースを見ると、「<form name="AuthenticationForm" method="post" action="/strutsTest/authentication">」 に変換されています。 action="/authentication"と記述しているにもかかわらず、 action="/strutsTest/authentication"と展開されているのですが /strutsTestが自動的に付与されているのは、なぜなのでしょうか? なにか設定するところがあるのでしょうか? ※struts-config.xmlに指定したpathと一致しない為、404NotFoundになるので自動設定しないように変更したいのです。 ちなみに環境は struts-1.3.10 Apache Tomcat 6.0.14 Server EclipsVersion: 3.4.2 pakage名:struts プロジェクト名:strutsTest struts-config.xmlの設定 <form-beans> <form-bean name="AuthenticationForm" type="struts.AuthenticationForm"/> </form-beans> <global-exceptions> </global-exceptions> <global-forwards> <forward name="fail" path="/login.jsp"/> </global-forwards> <action-mappings> <action path="/authentication" name="AuthenticationForm" type="struts.AuthenticationAction" scope="session"> <forward name="success" path="/welcome.jsp"/> <forward name="fail" path="/login.jsp"/> </action> </action-mappings> login.jsp <%@ page contentType="text/html; charset=Windows-31J" %> <%@ taglib uri="/tags/struts-bean" prefix="bean" %> <%@ taglib uri="/tags/struts-logic" prefix="logic" %> <%@ taglib uri="/tags/struts-html" prefix="html" %> <html:html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-31J"/> <title>ログイン画面</title> </head> <body> <html:errors/> ID・パスワードを入力してください。 <html:form action="/authentication" focus="id"> <html:text property="id" size="16"/> <br> <html:password property="pas" size="16" redisplay="false" /> <br> <html:submit property="submit" value="送信"/> <html:reset value="リセット"/> </html:form> </body> </html:html> 動作順は、login.jsp => AuthenticationAction.class => welcome.jsp です。 よろしくお願いします。
- 締切済み
- Java
- strutsで、JSP→アクションクラス→JSPの遷移ができない。
Strutsを勉強中の者です。 初心者的な質問で大変恐縮ですが、どこを調べても原因が分からなかったので、最終手段としてこちらに質問させて頂く事にしました。 どなたかご存知の方がいらっしゃいましたらご教授頂けないでしょうか。 ・概要 strutsで、JSP→クラスの実行→JSPの遷移ができない。 ・環境 WindowsXP Eclipse3.3 Tomcat5.5 GEF3.3 struts-1.3.8 JDK1.5 ・詳細 「Eclipseパーフェクトマニュアル ベストセレクション」 という本をもとに勉強しています。 ここのStrutsの例題で (1).簡易家計簿 <メニュー画面>(index.jsp)を表示 (2).同画面のリンク(ShoppingInitEntry.do)をクリック (3).リンク(ShoppingInitEntry.do)に関連づけられているクラス(ShoppingInitEntryAction)の実行 (4).データ入力画面(ShoppingUpdate.jsp)への遷移 という事をやっています。 実際に設定して、動かして見ましたが、 Eclipseでデバッグを貼っていると(3)まで動作しているのが分かるのですが、(4)の画面まで遷移しません。 具体的には、ShoppingInitEntry.doのリンクが ブラウザのアドレスバーに表示され、画面が真っ白の状態になります。 (データ入力画面は表示されない) 尚、直接(4)の画面(ShoppingUpdate.jsp)を開くと、 データ入力画面がエラーも無く表示されます。 ---- struts-config.xmlの設定が悪いのかと思ったのですが、 問題は無さそうに思います。(必要と思われる部分を抜粋) <struts-config> <global-forwards> <forward name="ShoppingInitEntry" path="/ShoppingInitEntry.do"/> </global-forwards> <action-mappings> <action path="/ShoppingInitEntry" type="MoneyBooks.ShoppingInitEntryAction" input="/index.jsp"> <forward name="success" path="/ShoppingUpdate.jsp"/> </action> </action-mappings> </struts-config> ---- (3)ShoppingInitEntryActionのソースは、下記の通りです。 public class ShoppingInitEntryAction extends Action { @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return super.execute(mapping, form, request, response); } } 上記のreturn super.execute( ~の部分では nullを返しているようです。 Eclipseのコンソールにメッセージは表示されません。 A.原因は、struts-config.xmlでしょうか? それともクラスがnullを返している為に画面遷移しないのでしょうか? そもそもsuper.executeのソースをjadのデコンパイルで追ったのですが、返り値としてNullしか返していない状態です。 B.また、馬鹿な質問ですが、そもそもjavaではnullを返り値で返すとオール×だと思っているのですが、この考え方は正しいでしょうか? 大変お恥ずかしい限りですが、ご存知の方がいらっしゃいましたら教えて頂きたく宜しくお願い致します。
- ベストアンサー
- Java