ビュー


WebMVC モジュールは、JSP、Freemarker、Velocity、Text、HTML、JSON、Binary、Forward、Redirect、HttpStatus などのさまざまなビュー テクノロジをサポートしています。カスタム ビューは、IView インターフェイス拡張機能

Controller を通じて実装することもできます。 view 表現メソッド
  • は IView インターフェイス タイプを返します。
  • には戻り値がないか、戻り値が空の場合は、現在の RequestMapping パスに対応する JspView ビューが使用されます。
ビューファイルのパス設定
コントローラービューファイルのベースパスは「/」で始まり、終わる必要があります。デフォルト値は /WEB-INF/templates/ です。

Viewオブジェクトの操作例

ビューファイルは拡張子名を省略でき、リクエストパラメータとコンテンツタイプはWebMVCモジュールが提供する
  ymp.configs.webmvc.base_view_path=/WEB-INF/templates/
Viewを通じて直接設定できます。

JspView: JSP ビュー;
FreemarkerView: フリーマーカー ビュー;

  // 通过View对象创建视图对象
  IView _view = View.jspView("/demo/test")
          .addAttribute("attr1", "value")
          .addAttribute("attr2", 2)
          .addHeader("head", "value")
          .setContentType(Type.ContentType.HTML.getContentType());

  // 直接创建视图对象
  _view = new JspView("/demo/test");

  // 下面三种方式的结果是一样的,使用请求路径对应的视图文件返回
  _view = View.jspView();
  _view = JspView.bind();
  _view = new JspView();

TextView: テキストビュー

  View.jspView("/demo/test.jsp");
  // = "jsp:/demo/test"

HtmlView: HTML ファイルコンテンツビュー;

JsonView: JSON ビュー;

  View.freemarkerView("/demo/test.ftl");
  // = "freemarker:/demo/test"

BinaryView: バイナリ データ フロー ビュー。名前が指定されていない場合、応答ヘッダーは「attachment; filename=xxx」になります。

ForwardView: リクエスト転送ビュー

RedirectView: リダイレクトビュー;

  View.velocityView("/demo/test.vm");
  // = "velocity:/demo/test"

HttpSt atusView: HTTP ステータスビュー

  View.textView("Hi, YMPer!");
  // = "text:Hi, YMPer!"

NullView: 空のビュー

  View.htmlView("<p>Hi, YMPer!</p>");
  // = "html:<p>Hi, YMPer!</p>"