版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangshangchunjiezi/article/details/88966822
一、@Controller:创建处理器对象,默认是单例对象
位置:在类上面
二、@RequestMapping:映射Request请求与处理器
放到方法上是处理相应页面请求
放在类上表示请求地址的公共部分放在这里,省得此类中所有方法都写重复部分
比如 user/pag1.do user/pag2.do
@RequestMapping("user")
@Controller
public class MyController { //代码}
@Controller
public class MyController {
@RequestMapping ( "value="some.do" ) //若多个请求,用大括号逗号隔开{some.do,input.do}
public ModelAndView doSome()//处理some.do的请求,showView相当于Servlet的doGet
{
//调用Service层处理请求,把处理结果显示给用户
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject( " 需要放到 model 中的属性名称 " , " 对应的属性值,它是一个对象 " );
//展示视图
modelAndView.setViewName( "show" );
return modelAndView;
}
}
//在配置文件中设置扫描
< context:component-scan base-package = "com.host.app.web.controller" >
< context:exclude-filter type = "annotation"
expression = "org.springframework.stereotype.Service" />
</ context:component-scan >
三、@RequestMapping 属性
①method属性
@RequestMapping (value= "testMethod" , method={RequestMethod. GET , RequestMethod. DELETE })
②param
请求:/testParams.do?param1=value1¶m2=value2
@RequestMapping (value= "testParams" , params={ "param1=value1" , "param2" , "!param3" })
public String testParams() {
System. out .println( "test Params..........." );
return "testParams" ;
}
四、处理器方法的参数
处理器方法可以包含以下四类参数,这些参数在系统调用时由系统自动赋值,即程序员可以在方法内直接使用
①HttpServletRequest
②HttpServletResponse
③HttpSession
④请求中所携带的请求参数