1. 前書き:
SpringMVC との出会いは、趣味で WeChat パブリック アカウント管理プラットフォームを構築したいと考えていたことから始まりました。そのため、プラットフォームの選択を検討する必要があります。なぜなら、私の友人は Linux システムを実行している仮想ホストしか持っておらず、彼自身のフォーラムのいくつかもその上で実行しているからです。 Windows 仮想ホストが見つからず、友人がホストするシステムに変更することもできません。当初は、以前の .Net MVC プロジェクトのフレームワークを mono で実行して使えるかどうかを確認する予定でしたが、まったく動作しませんでした(当時のプロジェクトでは Spring.NET を使用していたため、mono とSpring.NET は互換性がなく、Spring.NET フォーラムでは、mono のリフレクション実装メカニズムの問題が原因であると述べていますが、公式 Web サイトにはまだいくつかあると書かれていますが、良いニュースです。バグはありましたが、以前はまったく実行できなかったので、今後はさらに改善されると思います。詳細は SPRING-NET-MONO を参照してください。FQ が必要になる可能性があります。 ...)。
そこで、私は最初に古典的な SSH フレームワークに関する情報を読み始めました。しかし、ほとんど読んでいないうちに疑問を持ち始めました。これは、私にとって最も受け入れられないことでした。これは、Struts2 の 1 つのアクションと 1 つのクラスのアプローチです (コメント内の友人が、Struts2 では複数の Action メソッドを実装できることをすでに指摘していました。修正していただき、ありがとうございました)。
このアプローチによれば、オブジェクトの基本的な CURD 操作を実装するには 4 つのクラスが必要であり、Java クラスは 1 つのクラス ファイルにのみ属することができます。このようにして、プロジェクトはアクションだけで大量のクラス ファイルを生成します。アクションの内容があまりなく、冗長すぎて開発効率が非常に低いと感じます(上記の感想はあくまで当時 struts2 を見たときに感じたものです。もしあれば批判、修正してください)何かが間違っている)ので、他の方法に変更することにしました。たまたま Spring 3 の Spring MVC の紹介を見て、アノテーションベースのコントローラーやアクションの宣言方法が .Net MVC によく似ているので、すぐに採用することに決め、この連載が生まれました。
規約:
このシリーズで使用される Spring バージョンは:
spring-framework-3.2.5.RELEASE、Hibernate バージョンは hibernate-release-4.2.8.Final、Spring+Hibernate+Spring の組み合わせを使用します。 MVC。