Ciri Lanjutan—Pengendali Permintaan Pengawal


Selain menyokong pemprosesan permintaan Web standard, modul WebMVC juga menyediakan sokongan untuk permintaan berdasarkan format protokol XML dan JSON Terdapat dua senario penggunaan:

Senario 1: Tetapan global, yang akan menjejaskan semua kaedah pengawal

Konfigurasikan melalui parameter berikut, lalai adalah lalai, nilai pilihan ialah [lalai|json|xml], atau ia boleh menjadi nama kelas pelaksanaan antara muka IRequestProcessor tersuai pembangun

ymp.configs.webmvc.request_processor_class=default

adegan Dua: Setkan up kaedah pengawal khusus; Data XML ke http://localhost:8080/demo/sayHello melalui POST:

@Controller
@RequestMapping("/demo")
public class DemoController {

    @RequestMapping("/sayHi")
    @RequestProcessor(JSONRequestProcessor.class)
    public IView sayHi(@RequestParam String name, @RequestParam String content) {
        return View.textView("Hi, " + name + ", Content: " + content);
    }

    @RequestMapping("/sayHello")
    @RequestProcessor(XMLRequestProcessor.class)
    public IView sayHello(@RequestParam String name, @RequestParam String content) {
        return View.textView("Hi, " + name + ", Content: " + content);
    }
}

Pengawal dua format protokol di atas, JSON dan Kaedah XML, juga menyokong pengesahan parameter dan ciri lain; http://localhost:8080/demo/sayHi发送如下JSON数据:

{ "name" : "YMPer", "content" : "Welcome!" }

通过POST方式向http://localhost:8080/demo/sayHello