Rumah >Java >javaTutorial >Bagaimanakah pengawal rangka kerja java ssm menghantar parameter ke halaman?
Tambahkan parameter jenis Peta A dalam kaedah pengawal. Pasangan nilai kunci B diletakkan pada kaedah letak parameter A, dan pasangan nilai kunci B boleh diperolehi pada halaman
penulisan kod latar belakang 1.java, operasi dan kunci aplikasi -pasangan nilai diletakkan
@RequestMapping("/edit_form") public String editApplicationFormPage(Map<String, Object> map, HttpServletRequest request, String applicationId) { map.put("operation", "edit"); Application application = applicationService .getApplicationById(applicationId); if(application.getSysBigIcon()==null||application.getSysBigIcon().equals("")){ application.setSysBigIcon("/www/images/default.png"); } if(application.getSysIcon()==null||application.getSysIcon().equals("")){ application.setSysIcon("/www/images/default.png"); } if (application != null) { map.put("application", application); } return "/frame/system/application/application_form"; }
2. Halaman menggunakan pasangan nilai kunci yang diluluskan dari latar belakang Kaedah yang digunakan oleh
ialah kuncinya -pasangan nilai dibalut dengan ${}. Contohnya: ${operation} dan ${application.orgId}, ${operation} ialah pasangan nilai kunci operasi yang merujuk kepada letak peta latar belakang dan ${application.orgId} ialah objek yang merujuk kepada entiti aplikasi daripada peta latar belakang yang diletakkan.
<script type="text/javascript"> window.WWWROOT = "${ctx}"; window.DefaultOrgId = "<%=user.getDefaultOrgId()%>"; window.Operation = "${operation}"; window.OrgId = "${application.orgId}"; window.TaskAppId = "${application.taskAppId}"; window.MenuType = "${application.menuType}"; </script> <title>${operation eq 'add'?'添加':(operation eq 'edit'?'编辑':'查看')}应用系统</title>
Tulis beberapa kandungan ke PrintWriter. Hanya kembalikan kandungan ini ke halaman.
1. Menulis kod latar belakang
Tambahkan penulis parameter jenis PrintWrite pada kaedah pengawal dan gunakan kaedah writer.write() untuk menulis kandungan. Halaman boleh mengembalikan kandungan ini. Kodnya adalah seperti berikut:
@RequestMapping("/add") public void add(HttpServletRequest request, HttpServletResponse response,MenuRight menuRight, PrintWriter writer) { try{ Boolean result =menuRightService.addMenuRight(menuRight); writer.write("{\"success\":true}"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); writer.write("{\"success\":false}"); } }
2. Penulisan kod halaman
success
: Hasil dalam fungsi(hasil) ialah penulis dikembalikan oleh latar belakang Kandungan dalam .write()
$.ajax({ type : 'POST', url : WWWROOT + "/menuRight/add", data : dat, success : function(result) { if ($.parseJSON(result).success == true) { $(stId).attr("checked", true); } else { alert("添加授权失败"); $(stId).attr("checked", false); } } });
, dan Boleh menjadi batal
@RequestParam(value = "age",required = false)
1 @RequestBody menerima badan permintaan, hanya satu @RequestBody boleh wujud dan menerima semua parameter permintaan - diterima sekaligus
Senario penggunaan: Apabila halaman menghantar terus format tarikh , gunakan anotasi ini untuk menerimanya secara terus ;@DateTimeFormat
Senario penggunaan: Apabila halaman menghantar format tarikh dalam format Json, gunakan anotasi ini untuk menerimanya; nama mungkin berbeza apabila menggunakan pakej Json yang berbeza @JsonFormat
Atas ialah kandungan terperinci Bagaimanakah pengawal rangka kerja java ssm menghantar parameter ke halaman?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!