- 单纯的进行页面跳转(没有数据交换)
@Controller public class IndexController { //index.html @RequestMapping("index") public String index(){ return "index"; } }
- 存在数据交换的页面跳转
@Controller @RequestMapping("/user") public class UserController { //user.html?login @RequestMapping(params = "login") public ModelAndView login(String username,String password){ if(this.checkParams(new String[]{username,password})){ //验证用户成功,跳转到登录成功页面,并将 用户名、密码 传到前台 ModelAndView mav = new ModelAndView("succ"); mav.addObject("username",username); mav.addObject("password", password); return mav; } //验证失败,返回首页 return new ModelAndView("index"); } }
- ajax 异步请求进行数据交换
java代码:
ajax 代码:@Controller @RequestMapping(value = "/IndexController") public class IndexController { @Autowired IndexServiceImpl indexServiceImpl; /** * ajax 异步获取首页 动态 图片 返回 JSON 字符串 * * @return */ //IndexController/getIndexImages.html @RequestMapping(value = "/getIndexImages", method = RequestMethod.POST, consumes = "application/json") @ResponseBody public String getIndexImages() { System.out.println("正在调用controller...."); JSONObject jsonObject = new JSONObject(); List<Photo> smallImages = new ArrayList<Photo>(); smallImages = indexServiceImpl.showSmallImages(); List<Photo> bigImages = new ArrayList<Photo>(); bigImages = indexServiceImpl.showBigImages(); jsonObject.put("smallImages", smallImages); jsonObject.put("bigImages", bigImages); return jsonObject.toJSONString(); } }
<script type="text/javascript"> function myIndex() { $.ajax({ url : "IndexController/getIndexImages.html", type : "POST", async : true,//表示进行异步获取 dataType : 'json', contentType : 'application/json;charset=UTF-8', //contentType很重要 success : function(result) { var obj = $.parseJSON(result); var smallImages = obj.smallImages; var bigImages = obj.bigImages; //用于小图片 for (attr in smallImages) { var imgSrc = "page/images/" + smallImages[attr].pic; document.getElementById("myBigImage" + attr).style.background = "url(" + imgSrc + ")"; } //用于大图片 仿照小图片实现 for (attr in bigImages) { var imgSrc = "page/images/" + bigImages[attr].pic; document.getElementById("myBigImage" + attr).style.background = "url(" + imgSrc + ")"; } } }); } window.onload = myIndex;//不要括号 </script>
- web.xml 部分 配置代码 如下 :
<servlet> <servlet-name>MVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:spring-mvc.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>MVC</servlet-name> <!-- 配置 需要 拦截 的 对象 --> <url-pattern>*.html</url-pattern> </servlet-mapping>
关于 springMVC controller 页面 跳转 和 数据交换
猜你喜欢
转载自blog.csdn.net/ZkD953/article/details/80165100
今日推荐
周排行