コンベンションモード
説明: コンベンション・オーバー・コンフィギュレーションは、コンベンション・バイ・コンベンション・プログラミングとも呼ばれ、名前付け規則などの制約を使用してプログラム内の構成を削減するソフトウェア設計パラダイムであり、ソフトウェア開発で必要な意思決定の数を減らすことを目的としています。柔軟性を犠牲にすることなく、シンプルさのメリットを享受できます。
場合によっては、ビュー ファイルにアクセスするためだけにコントローラー メソッドを作成する必要があるため、繰り返しの作業が多い場合は、WebMVC モジュールでコンベンション モードを有効にすることで、ビュー ファイルへの直接アクセスがサポートされます。コードを何も書かずに base_view_path
パスの下に追加します。base_view_path
路径下的视图文件,无需编写任何代码;
WebMVC模块的约定模式默认为关闭状态,需要通过配置参数开启:
ymp.configs.webmvc.convention_mode=true
访问权限规则配置
在约定模式模式下,支持设置不同路径的访问权限,规则是:-
号代表禁止访问,+
或无符串代表允许访问,多个路径间用|
WEB-INF\ | |--templates\ | | | +--admin\ | | | +--users\ | | | +--reports\ | | | +--index.jsp | | | <...>
アクセス許可ルールの構成
-
はアクセスが禁止されることを意味し、+
または文字列なしはアクセスが許可されることを意味し、複数のパスは次のように区切られます。 |
; アクセス権の例: admin ディレクトリおよびindex.jsp ファイルへのアクセスは次のとおりです: ymp.configs.webmvc.convention_view_paths=admin-|index-|users|reports+
パラメータ設定の例:
ymp.configs.webmvc.convention_interceptor_mode=true
インターセプター ルールの構成
@InterceptorRule("/demo") @Before(WebUserSessionCheck.class) public class InterceptRuleDemo implements IInterceptorRule { @InterceptorRule("/admin/*") @Before(AdminTypeCheckFilter.class) public void adminAll() { } @Clean @InterceptorRule("/admin/login") public void adminLogin() { } @InterceptorRule("/user/*") public void userAll() { } @InterceptorRule("/mobile/person/*") public void mobilePersonAll() { } }🎜🎜インターセプト ルールの設定例: 🎜🎜🎜りー🎜🎜
説明:
@InterceptorRule: インターセプター ルール アノテーション。
@Before: アグリーメント モードのインターセプターは @Before 事前インターセプトのみをサポートします。
- は IInterceptorRule インターフェイスを実装するクラスで宣言され、クラスがインターセプト ルール設定であることを示します。特定のリクエスト パス用に設定されたルールには @RequestMapping と同様の機能があります。
ルール設定でサポートされているアノテーション:注
- @Clean: インターセプターをクリーンアップします。上位層で指定 ;
- @ContextParam: コンテキストパラメータ;
- @ResponseCache: コントローラーメソッドによって返されたビューオブジェクトの実行結果をキャッシュすることを宣言します
: ルールの設定方法クラスは任意であり、メソッド自体には意味がありません。メソッドを介してアノテーションを使用するだけです。
URL 擬似静的WebMVC モジュールは、?
、URL の見栄えがよくなります。
疑似静的モードはデフォルトでオフになっており、設定パラメータを使用してオンにする必要があります: ?
传递参数,让URL看上去更好看一些;
伪静态模式默认为关闭状态,需要通过配置参数开启:
ymp.configs.webmvc.convention_urlrewrite_mode=true
参数传递规则:
- URL中通过分隔符
_
传递多个请求参数;- 通过
UrlParams[index]
URL原始格式: http://localhost:8080/user/info/list?type=all&page=2&page_size=15 URL伪静态格式: http://localhost:8080/user/info/list_all_2_15
_
を介して複数の項目を渡します。 UrlParams[index]
経由でパラメータ値を引用します。 リクエストパラメータのリファレンス:
// 通过EL表达式获取参数 ${UrlParams[0]}:all ${UrlParams[1]}:2 ${UrlParams[2]}:15