顯示具有 SpringMVC 標籤的文章。 顯示所有文章
顯示具有 SpringMVC 標籤的文章。 顯示所有文章

2014年3月26日 星期三

SpringMVC 幾種返回形式(ModelAndView,@ModelAttribute,Model,@SessionAttribute)

在透過@RequestMapping,

將request導入到@Controller內的function後,

function運作完畢後有幾種返回的形式可以選擇:

1.ModelAndView

當返回為ModelAndView時,

其中已經包含了顯示(View)和模型(Model),

2014年3月22日 星期六

SpringMVC RequestParam、CookieValue、RequestHeader

@RequestParam

在呼叫@Controller內的@RequestMapping時,

我們可以在function的地方加入RequestParam綁定對應的參數名稱,
package com.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
@RequestMapping("/param")
public class ParamTestController {

 @RequestMapping("/test")
 public String test(
   @RequestParam(value = "par1", defaultValue = "df") String par1,
   @RequestParam(value = "par2", required = false) int par2) {
  return "/param/test";
 }
}

@RequestParam中有三個參數可以設定,

SpringMVC PathVariable

在@RequestMapping中,

當使用URL對應時還可以使用{}占位符號的方式傳遞參數,
package com.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/item")
public class ItemController {

 @RequestMapping("/{itemNo}")
 public String create(@PathVariable("itemNo") String itemNo) {
  return "/item/create";
 }

}

在ItemController中,

當您呼叫/webapp/item/123456時,

會執行create()並且幫你把123456綁定到itemNo的變數中,

除了可以使用function的占位符外,

也可以使用class的占位符,

SpringMVC Request Mapping

透過dispatcher-sevlet.xml,

利用context:component-scan去掃描package以下的所有@Controller,

那要如何將USER傳送的request對應到符合的控制器,

便是依賴@RequestMapping,

有以下幾種方式可以使用:

1.利用URL對應

可以在function前利用@RequestMapping來對應傳送的URL,

2013年11月21日 星期四

SpringMVC hello~springMVC

首先用maven建立J2EE project,可參考 build maven project

在pom.xml中配置spring及springmvc,

我採用的版本為3.0.5.RELEASE