SpringMVC的簡單傳值(實現(xiàn)代碼)
之前學習SpringMVC時感覺他的傳值很神奇:簡便,快捷,高效。
今天寫幾個簡單的傳值與大家分享,希望能對大家有幫助。
一、
從后往前傳:
(1)
@Controller
@RequestMapping(value={"/hello"})
public class HelloController {
@RequestMapping(value={"sub"})
public ModelAndView submit(HttpServletRequest request) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
m.addObject("ok", "hello");
m.setViewName("success");
return m;
}
}
把想要傳遞的東西放在addObject(String,Object)里,值是Object類型,什么都可以放。
setViewName() 是設置跳轉(zhuǎn)到哪個頁面 (success.jsp頁面)。
在success.jsp 頁面里用${requestScope}或${ok}即可取出。是不是非常簡便快捷。
還可以以這種方式傳:
@Controller
@RequestMapping(value={"/user"})
public class UserController {
@RequestMapping(value={"/get"})
public ModelAndView user(User user) throws Exception {
ModelAndView mv=new ModelAndView();
mv.addObject("ok",user.getUsername()+"--"+user.getPassword());
mv.setViewName("success");
return mv;
}
}
前端是一個簡單的form表單:
<form action="user/get" method="post">
<input type="text" name="username" id="username">
<input type="text" name="password" id="password">
<input type="submit">
</form>
(2)返回值也可以不是ModelAndView
@RequestMapping(value={"/map"})
public String ok(Map map,Model model,ModelMap modelmap,User user) throws Exception {
map.put("ok1", user);
model.addAttribute("ok2",user);
modelmap.addAttribute("ok3", user);
return "show";
}
二、
從前往后傳:
(1)
@RequestMapping(value={"ant/{username}/topic/{topic}"},method={RequestMethod.GET})
public ModelAndView ant(
@PathVariable(value="username") String username,
@PathVariable(value="topic") String topic
) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
System.out.println(username);
System.out.println(topic);
return m;
}
前端是這個樣子:
<a href="hello/ant/Tom/topic/Cat">ant</a>
與value={"ant/{username}/topic/{topic}"}一一對應。
還可以以這種形式:
@RequestMapping(value={"/regex/{number:\\d+}-{tel:\\d+}"})
public ModelAndView regex(
@PathVariable(value="number") int number,
@PathVariable(value="tel") String tel
) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
System.out.println(number);
System.out.println(tel);
return m;
}
前端是這個樣子:
<a href="hello/regex/100-111">regex(正則)</a>
(2)這是有鍵傳值:
@RequestMapping(value={"/ok1"})
public String ok1(@RequestParam(value="username") String username) throws Exception {
System.out.println(username);
return "show";
}
前端是這個樣子:
<a href="user/ok1?username=Tom">有鍵傳值</a>
這是無鍵傳值:
@RequestMapping(value={"/ok2"})
public String ok2(@RequestParam String password,@RequestParam String username) throws Exception {
System.out.println(username);
System.out.println(password);
return "show";
}
前端是這個樣子:
<a href="user/ok2?username=Tom&password=111">無鍵傳值</a>
有意思的是它可以準確的對應好兩個值。
以上這篇SpringMVC的簡單傳值(實現(xiàn)代碼)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- springMvc請求的跳轉(zhuǎn)和傳值的方法
- 詳解SpringMVC注解版前臺向后臺傳值的兩種方式
- 詳解springmvc 中controller與jsp傳值
- jQuery+SpringMVC中的復選框選擇與傳值實例
- java-jsp springmvc-controller 傳值到頁面的方法
- springmvc前臺向后臺傳值幾種方式總結(jié)(從簡單到復雜)
- springMVC中RestTemplate傳值接值方法
- SpringMVC的ModelAndView傳值方法
- springMVC向Controller傳值出現(xiàn)中文亂碼的解決方案
- SpringMVC前后端傳值的幾種實現(xiàn)方式
相關(guān)文章
Java使用枚舉替代if/else和switch-case語句的實踐
在軟件開發(fā)中if-else和switch-case語句經(jīng)常被用來處理不同的條件分支,但在大型項目中,這種做法可能導致代碼可讀性差、維護困難,這篇文章主要給大家介紹了關(guān)于Java使用枚舉替代if/else和switch-case語句的相關(guān)資料,需要的朋友可以參考下2024-09-09
Redis Java 集成到 Spring Boot的詳細過程
本文介紹了如何使用SpringBoot連接Redis,并展示了如何配置Redis服務地址、創(chuàng)建Controller類以及進行基本的Redis操作,如字符串、列表、集合、哈希和有序集合,感興趣的朋友跟隨小編一起看看吧2024-12-12
java多線程編程同步器Future和FutureTask解析及代碼示例
這篇文章主要介紹了java多線程編程同步器Future和FutureTask解析及代碼示例,對二者進行了詳細介紹,分析了future的源碼,最后展示了相關(guān)實例代碼,具有一定參考價值 ,需要的朋友可以了解下。2017-11-11
Java關(guān)鍵字volatile知識點總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于Java關(guān)鍵字volatile知識點總結(jié)內(nèi)容,有興趣的朋友們可以學習參考下。2021-01-01
SpringBoot利用ThreadPoolTaskExecutor批量插入百萬級數(shù)據(jù)的具體實現(xiàn)
ThreadPoolTaskExecutor是Spring提供的任務執(zhí)行器實現(xiàn)之一,允許開發(fā)者配置線程池參數(shù)以適應不同的應用場景,創(chuàng)建 ThreadPoolTaskExecutor 實例并設置核心和最大線程數(shù)等屬性可以優(yōu)化性能,本文介紹了SpringBoot利用ThreadPoolTaskExecutor批量插入百萬級數(shù)據(jù)的具體實現(xiàn)2024-12-12

