私はJSPとサーブレットを使っていたのでしばらくありました。今、私はJSPが時代遅れであり、使用されるべきではないことをいくつか見つけました。そうですか?どうして? Spring Frameworkを使用して新しいプロジェクトを開始し、Webページや同様の出力をレンダリングする場合、テンプレート用に代わりに使用する必要があるのは何ですか?JSPは優れていますか?
答えて
春(、Struts、Apache Wicketおよび他のフレームワーク)は、サーブレットに基づいています。 Web用のSpringを使用しているときは、基礎となるテクノロジーとしてサーブレットを使用しています。
JSPは本当に少し古いです。そしてそこにいくつかの不便があります。例えば、JSPはWebデザイナーにとって本当の頭痛です。デザイナーは、JSPファイルにはHTML用に無効なタグが含まれているため、JSPファイルを開いたり、変更したり、ブラウザで結果を確認したりすることはできません。ブラウザでページをどのように見えるかを確認する唯一の方法は、アプリケーションをデプロイしてサーバーでレンダリングできるようにすることです。
JSPのもう一つの不都合は、共通レイアウトを専用ファイルに外部化できないことです。あなたは、<jsp:include>
で1ページを別のページにインポートするだけです。また、何百ものファイルがある場合は、共通の部分をコピーするために、すべて同じファイルを<jsp:include>
で繰り返す必要があります。
何百もの複雑な動的ページがある場合、大きなプロジェクトに適したテンプレートエンジンがあります。人気のあるものの1つはThymeleafです。
Thymeleafのテンプレートには有効なHTMLだけが含まれています。これは、設計者とプログラマーが並行して作業できることを意味します。また、それは良いレイアウトシステムを持っています。さらに、ThymeleafはJSPとは対照的に、はるかに読みやすくエレガントな構文を持っています。一例として、Thymeleafで単純なテーブルを生成するためのコード:
<html>
....
<table>
<tr>
<th>Name</th>
<th>Price</th>
<th>In stock</th>
</tr>
<tr th:each="prod : ${prods}">
<td th:text="${prod.name}">Onions</td>
<td th:text="${prod.price}">2.41</td>
<td th:text="${prod.inStock}? #{true} : #{false}">yes</td>
</tr>
</table>
....
</html>
ように国際化のサポートでビルド、フラグメントにパラメータを渡すなど、他の多くの追加機能があります。
- 1. MagentoまたはPrestashop、これは優れていますか?
- 2. Drupal対Joomla:どれが優れたパフォーマンスが優れていますか?
- 3. これは、Djangoイベントアプリの方が優れていますか?
- 4. これはパフォーマンスの面で優れていますか?
- 5. AVLツリーはいつハッシュテーブルより優れていますか?
- 6. EBSまたはプライベートAMIの方が優れていますか?
- 7. RobohelpまたはMadCap Flareのオーサリングツールが優れていますか?
- 8. コンパイラはインラインよりもインラインで優れていますか?
- 9. dict()vs {}はPythonで優れていますか?
- 10. ゴールデンセクション検索はバイナリ検索より優れていますか?
- 11. PHP:静的は非静的より優れていますか?
- 12. なぜmergesortはリンクリストの方が優れていますか?
- 13. "ReferenceEquals(myObject、null)"は "myObject == null"よりも優れていますか?
- 14. JavaScriptのround.maxはどのように優れていますか?
- 15. CSSはページレイアウト用のテーブルよりも優れていますか?
- 16. なぜ `boost :: any`は` void * `より優れていますか?
- 17. とLAMP + LAMPPはXAMPPよりも優れていますか?
- 18. <table>よりもレイアウトは優れていますか?
- 19. javax.xml.soapはapache cxfよりも優れていますか?
- 20. RTMPは彗星より優れていますか?
- 21. MongoDBはMemcachedの方が優れていますか?
- 22. このカスタムプラクティスは優れていますか?
- 23. SHA1またはAES - これはasp.netで優れていますか?
- 24. F1測定範囲が悪く、まともで、優れており、優れていますか?
- 25. Jsonはパワークエリーを使用して優れています
- 26. コードまたはコントロールのプロパティは、MS-ACCESSの方が優れていますか?
- 27. チャットアプリケーションのGCMまたはソケットはどちらが優れていますか?
- 28. 私のゲームでは、P2Pまたはクライアント/サーバーアーキテクチャが優れていますか?
- 29. jsp includeタグとstrutsにアクションが含まれていますか?
- 30. htmlはjspに埋め込まれています
見積もりやリンクを追加する – Raedwald