11/11/28 02:19:54.66
日本Springユーザー会
URLリンク(www.springframework.jp)
Spring-Java/J2EEアプリケーションフレームワークリファレンスドキュメント(2章まで最新版)
URLリンク(andore.com)
EclipseプラグインSpring IDEを使ってみよう (1/3) - @IT
URLリンク(www.atmarkit.co.jp)
Springは「2.0」でどんだけ便利になったの? (1/3) - @IT
URLリンク(www.atmarkit.co.jp)
Spring 2.0で自分なりの開発スタイルを確立しよう (1/3) - @IT
URLリンク(www.atmarkit.co.jp)
【ハウツー】Spring 2.0を早速使う - どのくらい簡単になった? (1) 待望のSpring Framework 2.0リリース (MYCOMジャーナル)
URLリンク(journal.mycom.co.jp)
Spring 2.0によるDBアプリケーションの作成
URLリンク(www.okisoft.co.jp)
InfoQ: Spring 2.0: 最新情報と Spring 2.0 が重要な理由
URLリンク(www.infoq.com)
InfoQ: Spring 2.5の新機能―Part 1
URLリンク(www.infoq.com)
InfoQ: Spring 2.5の新機能を使ってアプリケーションを作る(その1)
URLリンク(www.infoq.com)
InfoQ: Spring 2.5の新機能を使ってアプリケーションを作る(その2)
URLリンク(www.infoq.com)
3:デフォルトの名無しさん
11/11/28 02:24:07.23
Inversion of Control コンテナと Dependency Injection パターン
URLリンク(kakutani.com)
Inversion of Controlパターンでコンポーネント間の結びつきを弱める - japan.internet.com デベロッパー
URLリンク(japan.internet.com)
【書籍】
Spring入門
URLリンク(www.amazon.co.jp)
Spring2.0入門
URLリンク(www.amazon.co.jp)
SpringによるWebアプリケーションスーパーサンプル
URLリンク(www.amazon.co.jp)
【過去スレ】
スレリンク(tech板)
スレリンク(tech板)
スレリンク(tech板)
4:デフォルトの名無しさん
11/11/28 17:37:20.38
スレ立て乙
5:デフォルトの名無しさん
11/11/30 08:42:53.33
京都大学霊長類研究所では、未知の感染症が蔓延し、
感染した研究員はどのスレッドにも同じコピペを
繰り返すといった症状が報告されています。
研究員によると思われる書き込みがあっても
近づかないようにしてください。
京都大学
6:デフォルトの名無しさん
11/12/01 21:38:17.86
高度な会話まだ?
7:デフォルトの名無しさん
11/12/01 22:00:42.91
高度なロジックは読めますか?
8:デフォルトの名無しさん
11/12/01 22:21:15.93
ソースを読める人が高度な人です
9:デフォルトの名無しさん
11/12/01 22:35:52.48
高度な人はこちらでお願いします
【DI】Java Spring Frameworkを高度に語るスレ 5.0+
スレリンク(tech板)
10:デフォルトの名無しさん
11/12/01 22:36:52.76
俺も高度な人になりたいな
11:デフォルトの名無しさん
11/12/02 04:42:42.60
コアソース解読できるの?
12:デフォルトの名無しさん
11/12/02 04:43:13.84
アノテーション
13:デフォルトの名無しさん
11/12/02 05:41:10.35
アノテーションはクラスに直接書く
14:デフォルトの名無しさん
11/12/02 06:14:38.38
そうなれば散在するね
管理が大変じゃね?
15:デフォルトの名無しさん
11/12/02 20:41:41.06
確かに
XMLファイルで管理する方が一つの場所で管理できる分
管理がしやすくなるな
16:デフォルトの名無しさん
11/12/02 20:58:22.27
アノテーションでは
クラスに定義するので、各クラスに定義情報が散在するからね
17:デフォルトの名無しさん
11/12/02 21:06:19.38
そうなると後で管理が大変になるね!
18:デフォルトの名無しさん
11/12/02 21:07:42.98
なるほどアノテーションって良いことばかりじゃないんだね
19:デフォルトの名無しさん
11/12/02 22:12:12.84
strutsとseaserを混ぜて楽しく使う・・・
20:デフォルトの名無しさん
11/12/02 22:12:33.04
そりゃそうだろ。
どんなものだって不適切に使えば
悪い所が出てくる。
21:デフォルトの名無しさん
11/12/02 22:17:01.67
>>18
何でもアノテーションにすりゃ良いってものじゃないぞ
22:デフォルトの名無しさん
11/12/02 22:18:08.03
なんでもif使えばいいってもんじゃないぞ。
なんでもfor使えばいいってもんじゃないぞ。
なんでも関数にすればいいってもんじゃないぞ。
なんでもクラスにすればいいってもんじゃないぞ。
うん、なんにでもあてはまる。
23:デフォルトの名無しさん
11/12/02 22:21:16.77
>>21
そうですね
アノテーション万歳の人に警告しなきゃ
24:デフォルトの名無しさん
11/12/02 22:27:15.06
>>23
アノテーション万能じゃない
25:デフォルトの名無しさん
11/12/03 09:08:10.09
散在したほうがいいもの、
集中したほうがいいもの、
分類して
26:デフォルトの名無しさん
11/12/03 09:17:05.17
>>23
アノテーション信者か?
27:デフォルトの名無しさん
11/12/03 17:21:35.45
高度スレにアイちゃんしかいないんだがw
28:デフォルトの名無しさん
11/12/03 21:09:47.50
いいんだよ。あっちは自称高度な人を
追いやる隔離スレだから。
29:デフォルトの名無しさん
11/12/03 23:06:34.79
アノテーションといえばbean validation使ってる?
30:デフォルトの名無しさん
11/12/04 00:02:50.59
使わないなぁ
31:デフォルトの名無しさん
11/12/04 02:25:32.85
validationなんて個別にクラスに書いたらダメでしょ
プロジェクト全体で統一しないと
32:デフォルトの名無しさん
11/12/04 03:38:05.56
URLリンク(d.hatena.ne.jp)
これか。一つを対象に5個くらいアノテーション付くと気持ち悪い
33:デフォルトの名無しさん
11/12/04 09:58:44.04
バリデーションってアプリケーションごとに
使い捨てにするしかないんじゃない?
@NotNull程度のものが半端にあるならないほうがいい。
34:デフォルトの名無しさん
11/12/04 10:03:55.14
なんでないほうがいいの?
35:デフォルトの名無しさん
11/12/04 10:04:31.92
>>32
アノテーションはインターフェースに対してつければいい。
36:デフォルトの名無しさん
11/12/04 12:31:13.33
一から手書き以外だと
・SpringのValidatorインタフェース
・Commons Validator
とかだろうか、Validatorインターフェースは中身は結局手書きだけど
Valangてのもあるらしいがよくしらない orz
37:デフォルトの名無しさん
11/12/04 14:53:41.77
>>34
・アノテーションのみ
・アノテーションと手書きの混在
・手書きのみ
3種が入り乱れるような状態になるから
手書きのみで全部同じように書けるほうがいいでしょ。
Validatorインターフェースの中でValidationUtilsみたいな
クラスライブラリを使うのに統一したほうがいいよ。
38:デフォルトの名無しさん
11/12/05 18:14:21.96
バリデーターがどうあるべきかの設計は難しいね。
バリデーターを置くレイヤーや
バリデーションを何でやるか(XML, Annotation, Class)を
画一的にするのは無理なんだろか。
39:デフォルトの名無しさん
11/12/05 20:29:32.48
えっ、入力ヴァリデーションは全部アノテーションでやっているけど、うちって少数派?
別に小規模なアプリでは無いし、Spring拡張やアプリケーション固有のConstraintValidatorを作ってやってるんだけど。
40:デフォルトの名無しさん
11/12/05 23:13:07.56
>>39
典型的なSIerは>>37のように考えるところが多い
選択肢をなくして効率の悪いやり方で統一する愚作なんだが
ドカタ的なプロジェクトでは致し方ない
41:39
11/12/05 23:28:27.65
うちも典型的なSI屋なんだけど。
選択肢なくして統一するなら、アプリケーション固有のアノテーションを用意して、
土方にはそれを付加させるだけにした方が楽じゃね?、っと思うんだけどな。
42:デフォルトの名無しさん
11/12/06 10:16:25.71
フォームがリスト構造を含む場合どうなるんだろ
と思いつつ実験してない…
43:デフォルトの名無しさん
11/12/06 10:29:56.97
バリデーションはアプリケーションの固有性がでるから
カスタムしやすいことは重要だと思う。
それでいて土方的(画一的)に何でもやれることも両立したい。
>>41
カスタムアノテーションだと変数間の関係が難しい。
でも再利用性の高いものはアノテーションがいいよなぁ。
優先的に標準アノテーション+カスタムアノテーションで済ませて、
次にそれではできない一部のものをクラスに、
最後にソースに依存させてたくない場合はXMLでやることにしてみる。
44:39
11/12/06 14:09:06.41
>>43
変数間の比較用アノテーションも用意しているよ。
メンバ変数じゃなくてクラスに対してアノテーションを付加して、メンバ変数aとbが同値であることを検証する、
っとか、そういうの。
そして最終手段は、検証対象オブジェクトのメソッド呼び出し(戻り値booleanで判定)アノテーション。
もちろん、入力アノテーションではなくて、対象オブジェクトの情報だけでは完結しないロジックなヴァリデーションは
コントローラーで書くけど、それ以外はアノテーションベースで困っていないかな。
45:デフォルトの名無しさん
11/12/06 23:08:16.58
>>40
> 選択肢をなくして効率の悪いやり方で統一する愚作なんだが
コーディング規約のケチつけてるの?
それともルールはない。みんな好き勝手やれ。
関数置き換えハックでも何でも自由にやってよい派ですか?
46:デフォルトの名無しさん
11/12/07 02:32:35.64
>>45
なんでそんなに極端なんだ?
元ネタが>>37の3種類だってわかってる?それを肯定するとなんでもあり?アホか
47:43
11/12/07 19:30:05.62
>>44
>メンバ変数じゃなくてクラスに対してアノテーション
なるほどね。それならバリデーションの前に対象を全部VO(DTO)に
コンバーターで詰め込んでそのVOをバリデーションしたらいいのかも。
48:デフォルトの名無しさん
11/12/07 21:04:52.91
>>46
なんでって、選択肢を無くすことが
効率が悪い方法で統一するなんて
馬鹿なこと言い出すからだろ。
最善の方法に選択肢を絞ってるという発想はできないのか?
49:デフォルトの名無しさん
11/12/07 21:20:03.11
最善つか最適解かな。最善があるならそもそも選択の余地はない。
50:デフォルトの名無しさん
11/12/07 21:41:33.90
なんでも金槌で叩きたがるやつっているよねw
51:デフォルトの名無しさん
11/12/07 21:54:32.39
>>50の頭も金槌で叩こう
52:デフォルトの名無しさん
11/12/08 01:16:07.83
パターン化 と 選択肢を無くすこと は親密
53:デフォルトの名無しさん
11/12/08 14:32:37.98
>>52
VSOP(very special one pattern)だな
54:デフォルトの名無しさん
11/12/08 17:07:39.98
>>40 って高度な話題うんぬん騒いでたアホだろ?
springソースをハックした基盤技術チームがどうたらさんは
高度スレを使うように。
【DI】Java Spring Frameworkを高度に語るスレ 5.0+
スレリンク(tech板)
55:デフォルトの名無しさん
11/12/09 00:20:53.79
認定厨w
>>40,41,43 と、>>37に否定的な意見が3者から出てちゃんと会話になってたんだがな
もう価値観が違うってことでいいよ
56:デフォルトの名無しさん
11/12/10 18:56:22.97
>>1
スレ立て乙だけど公式サイトが昔のまま
次スレ立てる人要注意
公式
URLリンク(www.springsource.org)
57:1
11/12/11 13:42:19.62
>>56
ホントだ、転送されてて気が付かなかった。
58:デフォルトの名無しさん
12/02/11 02:27:20.03
保守
59:デフォルトの名無しさん
12/02/11 06:28:11.16
Spring DM使ってる人いる?
60:デフォルトの名無しさん
12/02/17 10:17:41.87
保守
61:デフォルトの名無しさん
12/02/19 15:38:44.01
ส๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎๎͜͜͏̘̣͔͙
62:デフォルトの名無しさん
12/02/23 00:14:31.65
今さらSpring MVC始めてみたけど、楽ちんでいいね
Spring Rooも触ってみたけど、ひな形的なアプリは簡単に作れても
それを要件を満たす形にカスタムしていくのに学習コストがかかりすぎる感じがする
MVCあたりがバランスいい気がする
63:デフォルトの名無しさん
12/02/26 21:44:09.38
え、Rooってあくまでも開発ツールで、ランタイムではないんじゃなかったっけ?
SpringMVC や 〇〇Dao を、手書きするか Roo に雛形を作らせるかって違いで。
# 間違ってることを書いてたらごめんなさい
64:デフォルトの名無しさん
12/02/27 00:30:19.76
Rooはひな形作って終わりじゃなく、その後もAspectJ駆使したソースを足してく
65:63
12/02/27 15:25:27.70
>>64
レスありがとうございます。
あ、そうでしたね
何年か前のデブサミで、SpringSourceの人のデモを見たのを思い出した
ってことは、Rooで自動生成制したソースをうごかすには、Rooのランタイムも必要になるか。
にしても、あのソースはわかりにくいというかめんどくさすぎだな。
DBのエンティティクラスはフィールドがないにしても、setterとかgetterとか
全部外だしにするから、ソースもたくさん増えるし、追いにくい。
66:デフォルトの名無しさん
12/02/28 01:29:56.29
Rooはとりあえず単体で動いたら、即Push-Inして可能な限り
Aspectが表に出ないようにしてるな。
Push-Inしたところで、Rooから使えなくなるわけじゃないし、
DB周りはtext型とか使ってると、タイプエラーで落ちるから
うざくって。forum行くと「varchar使い給え」と言われて。
自分でadd-on作ろうかと考えたけど、しんどいし。
67:デフォルトの名無しさん
12/03/12 21:16:53.15
DBでtext型を使おうって考え方がそもそも狂ってるんじゃ?
つかROOを使おうってテコいれしても周りが追いついてこないから結局雛形だけ作って終わりな今日この頃
ゆとりどもゆとりでてめーが勉強しないのを棚上げして俺の水準に合わせて敷居さげろよってほざいてやがるw
68:デフォルトの名無しさん
12/03/12 23:44:37.12
DBにText型があるのは、別におかしいことじゃない。xLOBがあったり、
一時はXML Typeで盛り上がったりした。
Rooはscaffoldからはみ出たら自分で実装する領域が広いし、
自作コンポの実装も、beanタグ記述も手書きだから、
雛型的な使い方でも間違いじゃないと思うけどな
勉強しないのは、日本的自称「IT要員」というか「JPSIer文化」だろ。
「横一線で開発しましょう。それ以上でも以下でもだめですし、
余計な提案・行動は不要です。」
まぁ俺の知る限りのSIerのほとんどはいつまでも後生大事に
Seasar2改を使ってるとこがほとんどだな。悪いとは言わんが、なんだかな。
69:sage
12/03/14 17:02:12.77
URIを以下の様にしたい場合
/item/index.html
/test/item/index.html
コントローラクラスを以下の様に配置して実行しようとすると
controller.ItemController.java
controller.test.ItemController.java
↓のエラーが出ます。
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource
[/WEB-INF/sample-servlet.xml]; nested exception is java.lang.IllegalStateException: Annotation-specified bean name 'itemController' for
bean class [controller.ItemController] conflicts with existing, non-compatible bean definition of same name and class [controller.test.ItemController]
たぶん、同じクラス名は使用できないという事かと思うのですが、URIをこのような事をするには
どうすればよろしいのでしょうか?
70:デフォルトの名無しさん
12/03/14 20:10:54.75
エラーの情報しかないから、ゼロコンフィグに近い想定でパッと
思いつく限りだと下の二つのどちらか。
1.controller.test.ItemControler.java のクラス名を TestItemController
(適当な名前でも良いけど)に変えて
クラスのアノテかハンドルメソッドで
@RequestMapping("/test/item/")を定義する。
2.mvc:annotation-driven の利用をやめて、xmlでマッピングする。
71:デフォルトの名無しさん
12/03/15 11:08:17.49
web.xml の <servlet-mapping> について教えていただけますか。
今RESTUrlでの設計を行っているのですが、特定のパータンやすべての
リクエストをservlet-mappingで拾うためアスタリスクを使用しているのですが、
アスタリスクで指定してもマッピングされません・・・。
URL(とりあえず以下のようなURLが拾えるようになってほしいのですが。
① URLリンク(<domain>)
② URLリンク(<domain>)
③ URLリンク(<domain>)
■① だけ動作する
<servlet-mapping>
<servlet-name>rest001</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
■すべてダメ
<servlet-mapping>
<servlet-name>rest001</servlet-name>
<url-pattern>/admin/*</url-pattern>
</servlet-mapping>
■すべてダメ
<servlet-mapping>
<servlet-name>rest001</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
Strutsではアスタリスクは問題なく使えた気がするのですが。。。
72:デフォルトの名無しさん
12/03/15 11:10:05.60
Urlがまちがってました。
/adminではなく/rest001です。
73:デフォルトの名無しさん
12/03/15 11:19:13.40
勘違いでした
72は無視してください
>>72
> Urlがまちがってました。
> /adminではなく/rest001です。
74:デフォルトの名無しさん
12/03/16 01:30:10.33
<servlet-mapping>
<servlet-name>rest001</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
俺個人は、アスタは*.htmlとかfilter-mappingにしか使わん。
75:デフォルトの名無しさん
12/03/16 11:20:39.34
ていうか、そもそもサーブレットの仕様も分からんし、
(ハンドリングがちゃんと出来てるか)
バグってないかも分からんし、
applicationContextに相当するもんの設定が正しいかも分からんし、
springコンポーネントが利用されているかどうかも分からん。
76:デフォルトの名無しさん
12/03/21 17:17:30.71
>>69 とか
>>71 のゆとりはいますぐstruts1.xのプロジェクトに戻るんだ。
77:sage
12/04/02 21:22:04.84
>>70さん
自分も以前に同様の事象に困っていて、>>70さんの提示している①案で対応しましたが
この同一コントローラー名のエラーに関しては、設定如何で回避できるものなのでしょうか?
モデルとコントローラのクラス名称をできるだけ同じにしたいので、設定で
できるのであれば、今後の開発の時に試してみたいです。
78:sage
12/04/05 18:30:13.29
1つの画面で複数のレコード分のデータを入力したデータを
POSTして、サーバ側でList型の形式で受け取ることはできるのでしょうか?
ModelAttributeとか使えばいけそうな気がするのですが・・・。
Bean - List - Bean 見たいな形式にすればいけるかとも思ったのですが
こちらもうまくいかず・・・。
79:営利利用に関するLR審議中@詳細は自治スレへ
12/04/06 01:15:58.08
>>77
だから「springの法則に従った正しい規約」で
運用すんなら、アノテと標準的なアクション用のxmlで
ほぼセロコンフィグで済むんだって。
そうじゃないことするんだから、アノテをやめたらどうなんだい?
って書いてると思うだが?
80:営利利用に関するLR審議中@詳細は自治スレへ
12/04/07 00:20:59.16
>>78
こういうこと?
URLリンク(viralpatel.net)
81:デフォルトの名無しさん
12/04/26 11:29:20.13
spring3.0の情報どこかに載ってないですか?
82:デフォルトの名無しさん
12/04/26 11:47:41.96
3.0?数年前から山ほどあるよね?
83:デフォルトの名無しさん
12/04/26 15:50:02.19
ないよ
84:デフォルトの名無しさん
12/04/26 15:57:35.62
これが必要にして十分な情報。
Spring Framework
Reference Documentation
3.1
URLリンク(static.springsource.org)
これ以外は必要無い。
85:デフォルトの名無しさん
12/04/27 03:03:19.11
英語のサイトしかないの?
86:デフォルトの名無しさん
12/04/27 11:20:18.83
英語だろうがなんだろうが、あるかないかで言えば「ある」
英語読めないなら、古い情報で我慢しておけばいいだけ
もっとも、探せば日本語の情報も断片的なものがかなりの量存在するから
自分の必要なものを集めてまとめておけばいいよ
87:デフォルトの名無しさん
12/05/06 09:39:47.04
Spring 3.0 MVCのサンプルコードどこかに載っていませんか?
コントローラでDBから取ってきたデータをどうやってVIEWに渡すのか知りたいのです。
88:デフォルトの名無しさん
12/05/11 01:45:35.85
Spring 3 MVC で、Form の複合チェックをするにはどうしたらいいでしょうか?
Form クラスのフィールドに @NotEmpty とか @Size(min = 1, max=50) とか
つけますが、単項目チェックなら、以下のページのサンプルのように出来ます。
URLリンク(www.roseindia.net)
複合チェックをしたかったら、いまは Controller クラスのなかで
ばりばりチェックロジックを書いてしまっているのですが、
Spring 3 の正しいやり方としては以下のように、Validation クラスを作って、
Controller クラスで @Autowired して、validate() メソッドを呼べばいいのですか?
URLリンク(www.roseindia.net)
Spring2 の MVC の経験者(その人はSpring3 はやってない)に聞いたところ、
だいたいこんな感じだったそうですが・・・
89:デフォルトの名無しさん
12/05/14 21:04:19.64
自分もSpring3 MVCで作り始めたけど、ModelMapに値詰めて返してTitlesとか使って描画っていう
やりかただと、Web画面側のデザイン面での制約がけっこう大きいと気がついて結局、
Web画面とサーバ側の通信はJSONのみ、
Spring側は、DBとモデルオブジェクトのマッピング、ControllerでJSONデータのハンドリングやらせて
あんまりSpring MVC使う意味が無くなってるかも。。。
validationは、画面側でjQueryのプラグイン使ってやらせてる。
validation条件の変更とか、全部JavaScript側でできるし。
DBとモデルオブジェクトのマッピングと、Controllerだけ使うような場合って
利用するSpringのjarのミニマムの組み合わせってどんなんだろう?
90:デフォルトの名無しさん
12/05/15 00:02:47.29
>>89
Titles じゃなくて Tiles のことだよね?
91:デフォルトの名無しさん
12/05/15 00:48:29.02
>>90
そうだった。タイプミス。正しくはTilesだよね。
92:デフォルトの名無しさん
12/05/17 18:30:38.91
SpringMVCのModelAndView について質問があります。
Spring2でSpringMVCをやっていたときは、Controller クラスのなかで、
ModelAndView mav = new ModelandView();
mav.setViewName("/foo/bar/hoge.jsp");
return mav;
みたいに、ModelAndViewクラスのインスタンスをreturnしていました。
一方Spring3 の MVC のサンプルをいくつか見てみると(たとえば以下)
URLリンク(blog.springsource.com)
Controllerクラスの、リクエストを処理するメソッドの返却値はStringで、
遷移したいview名を文字列でそのまま返すようになっていて、
上記ページの例:
return "home";
もしJSPに何か値を渡したかったら、Modelクラス(org.springframework.ui.Model)が渡ってくるから
そいつに model.setAttribuite("output", output);
というようにしてあげれば、JSP側で値が取得されるみたいなんだけど、
Spring3 からは、Controller クラスの返却値はStringとなるように作る、という理解でよいでしょうか?
93:デフォルトの名無しさん
12/05/19 14:58:14.71
設計次第