核心控制器:
SpringMVC基于Servlect的DispatcherServlet核心控制器来作为request请求对象处理
使用时再web.xml声明它
<!-- 配置SpringMVC -->
<servlet>
<servlet-name>SpringMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 初始化SpringMVC -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:config/springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>SpringMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
上述代码只要url包含/,就把这个请求交给DispatcherServlet对象来进行处理。
- @controller注解表示本java类是controller控制层
- @RequestMapping(value="/login",method="RequestMethod.POST)注解标识可以用指定url访问本控制层 ,@RequestMapping可以在类上方定义,标识首先定义相对父路径
http://localhost:8080/springdoublelogin/a/login.spring
- @RequestParam是从request里面拿取值
- @PathVariable 是从一个URI模板里面来填充
- Model model对象作用相当于往request对象放入数据
- @ResponseBody注解,只需要在前台Controller提交一段符合JSON格式的request body体,将JSON字符串作为相应处理
- @ModelAttribute("") 相当于request.setAttribute("",**);
jsp通过`<%request.getAttribute(); //获取
Enumeration rnum = request. getAttributeNames();%>//返回所有属性的名字集合
8.@SessionAttribute("") 类 ${requestScope.username} ${sessionScope.username}
8. @SessionAttributes如果要跨页面使用
9. ModelAndView 对象
Contorller
ModelAndView m = new ModelAndaView();m.setViewName("index.jsp");
m.addObject("usernameKey","usernameValue");
JSP
<body>${usernameKey}</body>
<!-- 配置视图解析器 -->
<bean id="ViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/view/jsp/" p:suffix=".jsp">
</bean>
限定默认访问的路径
控制层重定向:有参数、无参数
- return “redirect:/**”
- return “redict:/**?username=?”+username
匹配url路径到指定controller
1.@requestMapping("/dirac/{user_id}")
public String test(@PathVariable(“user_id”){
服务器获取json字符串并解析
welcome-file-list是一个配置在web.xml中的一个欢迎页,用于当用户在url中输入工程名称或者输入web容器url(如http://localhost:8080/)时直接跳转的页面.