DAY 17 springMVC json
4616 ワード
web.xml
springmvc
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
springmvc
/
springmvc-servlet.xml
HelloController.java
package com.rzgsl.controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@org.springframework.stereotype.Controller
public class HelloControllor{
@RequestMapping("/hello")
public String hello(Model model){
model.addAttribute("msg","hello my springmvc...");
return "test";
}
}
test.jsp
Title
${msg}
2、4つの注釈機能は同じで、ただ分類するためです
@compontコンポーネント
@service service
@controller controller
@repository dao
returnのページは多重化可能で、異なるデータを持つAttributeは同じページに戻り、ページに表示されるデータは異なる
三、RequestMaping(「...」)、クラスやメソッドに置くことができます.クラスに加えて、クラスの下にある方法に相当するアドレスが追加されました.
四、Restfulスタイル、全部「/」伝参
五、@PathVariable
return “redirect:/index.jsp"
return "forward:/index.jsp"
package com.rzgsl.controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
@org.springframework.stereotype.Controller
public class HelloControllor{
@RequestMapping("/hello/{a}/{b}")
public String hello(@PathVariable int a,@PathVariable int b,Model model){
int c = a + b;
model.addAttribute("msg",c);
return "test";
}
}
springmvc在web.xml中添加过滤器,如果还不行,检查tomcat的编码是否已修改,注意/* 带*才能过滤jsp
只要修改了xml文件,就必须得重启tomcat
encoding
org.springframework.web.filter.CharacterEncodingFilter
encoding
utf-8
encoding
/*
@RestControlクラス
@ResponseBodyメソッド
どちらもデータを返し、ビューを返さない
jsonは、JavaScript object notation(オブジェクトタグ言語)、純テキストフォーマットでデータを格納するフォーマットであり、
JAva、オブジェクトがjsonのパッケージに変わり、Jacksonがあります
エラーが発生しやすい:1、クラスにパラメータが追加されていない、パラメータがない、getset(エラーの場合、500エラーがポップアップされます)
2、ArtifactsのWEB-INFにlibディレクトリがない(ないとTomcatパッケージが成功せずトップページがポップアップしない)jarパッケージを追加した後、libにもう一度追加しなければならない
3、springフレームワーク、webが必要です.xmlとSpringmvc.xml構成が有効になるxmlはサーバweb構成、springmvcに対応する.xmlはjavaの構成です