首页 > 代码库 > SpringMVC基本配置
SpringMVC基本配置
1 springmvc 框架
1.1 回顾mvc结构
1.2springmvc的介绍
是一个基于mvc的web层框架,使用spring的一个子项目
在使用springmvc的时候,不用单独和spring进行集成。
2 第一个springmvc的应用
2.1新建web项目
2.2加入jar包
2.3建立Controller
Controller:应用控制器,就是一个普通的javabean
模拟用户登录:
1 package org.guangsoft.controller;
2
3 import javax.servlet.http.HttpServletRequest;
4 import javax.servlet.http.HttpServletResponse;
5
6 import org.springframework.web.servlet.ModelAndView;
7 import org.springframework.web.servlet.mvc.Controller;
8
9
10 public class UserController implements Controller
11 {
12
13 /**
14 * ModelAndView:对象汇总封装了需要响应到客户端额的数据的视图的页面
15 */
16 @Override
17 public ModelAndView handleRequest(HttpServletRequest request,
18 HttpServletResponse response) throws Exception
19 {
20 //获得页面请求数据
21 String username = request.getParameter("username");
22 String password = request.getParameter("password");
23
24 //创建一个ModelAndView对象,封装了需呀显示的视图和视图上需要显示的数据
25 ModelAndView mav = new ModelAndView();
26 if(username.equals("root") && password.equals("root"))
27 {
28 //请求转发
29 mav.setViewName("success.jsp");
30 mav.addObject("username",username);
31 }
32 else
33 {
34 mav.setViewName("error.jsp");
35 mav.addObject("msg", "用户名或密码错误!");
36 }
37 return mav;
38 }
39
40 }
2.4建立springmvc.xml配置文件
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans
3 xmlns="http://www.springframework.org/schema/beans"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xmlns:p="http://www.springframework.org/schema/p"
6 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
7
8 <!-- name是usercontroller请求的url -->
9 <bean name="/userController.action" class="org.guangsoft.controller.UserController"></bean>
10 </beans>
2.5在web.xml中配置springmvc的核心控制器
Springmvc的核心控制器是一个servlet
1 package org.guangsoft.controller;
2
3 import javax.servlet.http.HttpServletRequest;
4 import javax.servlet.http.HttpServletResponse;
5
6 import org.springframework.web.servlet.ModelAndView;
7 import org.springframework.web.servlet.mvc.Controller;
8
9
10 public class UserController implements Controller
11 {
12
13 /**
14 * ModelAndView:对象汇总封装了需要响应到客户端额的数据的视图的页面
15 */
16 @Override
17 public ModelAndView handleRequest(HttpServletRequest request,
18 HttpServletResponse response) throws Exception
19 {
20 //获得页面请求数据
21 String username = request.getParameter("username");
22 String password = request.getParameter("password");
23 //床架一个ModelAndView对象,封装了需呀显示的视图和视图上需要显示的数据
24 ModelAndView mav = new ModelAndView();
25 if(username.equals("root") && password.equals("root"))
26 {
27 //请求转发
28 mav.setViewName("success.jsp");
29 mav.addObject("username",username);
30 }
31 else
32 {
33 mav.setViewName("error.jsp");
34 mav.addObject("msg", "用户名或密码错误!");
35 }
36 return mav;
37 }
38
39 }
2.6建立视图页面
建立登陆页面:
建立成功提示页面:
2.7发布测试
3第一个程序问题总结
Springmvc.xml的文件加载问题:
如果不配置,默认/WEB-INF/springmvc-servlet.xml
请求url的问题:
核心控制的路径:/* 会导致jsp页面404错误,要用*.action
4 controller应用控制器的不同实现
Handler的不同实现方式,UserHandler
4.1实现Controller接口
4.2实现HttpRequestHandler
最原始的servlet写法,获得请求参数和进行跳转都是用原始的servletapi。
1 package org.guangsoft.controller;
2
3 import java.io.IOException;
4
5 import javax.servlet.ServletException;
6 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse;
8
9 import org.springframework.web.HttpRequestHandler;
10 import org.springframework.web.servlet.ModelAndView;
11
12 public class UserController2 implements HttpRequestHandler
13 {
14
15 @Override
16 public void handleRequest(HttpServletRequest request, HttpServletResponse response)
17 throws ServletException, IOException
18 {
19 //获得页面请求数据
20 String username = request.getParameter("username");
21 String password = request.getParameter("password");
22 if(username.equals("root") && password.equals("root"))
23 {
24 //请求转发
25 request.setAttribute("username", username);
26 response.sendRedirect("success.jsp");
27 }
28 else
29 {
30 response.sendRedirect("error.jsp");
31 }
32 }
33
34 }
4.3自定义javabean(重点)
不需要实现任何接口,处理请求的方法自己定义(参数和返回值),配合注解一起使用
4.3.1定义Controller
通过扫描将controller纳入spring容器
1 package org.guangsoft.controller;
2
3 import org.springframework.stereotype.Controller;
4 import org.springframework.ui.Model;
5 import org.springframework.web.bind.annotation.RequestMapping;
6
7 @Controller
8 public class UserController3
9 {
10 /**
11 * 返回值:stirng表示跳转的路径
12 * username:接受客户端请求的username
13 * passowrd:接受客户端请求的password
14 * model:封装需要响应到客户端的数据
15 * 参数名称必须和客户端请求的参数名称一致
16 * @return
17 */
18 @RequestMapping("/userLogin")//客户端请求的url
19 public String userLogin(String username, String password, Model model)
20 {
21 if(username.equals("root") && password.equals("root"))
22 {
23 model.addAttribute("username",username);
24 return "success.jsp";//完成页面的跳转
25 }
26 else
27 {
28 model.addAttribute("msg", "您的用户名或密码错误!");
29 return "error.jsp";
30 }
31 }
32 }
4.3.2进行UserController3的配置
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans
3 xmlns="http://www.springframework.org/schema/beans"
4 xmlns:context="http://www.springframework.org/schema/context"
5 xmlns:mvc="http://www.springframework.org/schema/mvc"
6 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7 xmlns:p="http://www.springframework.org/schema/p"
8 xsi:schemaLocation=
9 "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
10 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
11 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">
12
13 <!-- name是usercontroller请求的url -->
14 <bean name="/userController.action" class="org.guangsoft.controller.UserController"></bean>
15 <context:component-scan base-package="org.guangsoft.controller"></context:component-scan>
16 <mvc:annotation-driven></mvc:annotation-driven>
17 </beans>
SpringMVC基本配置
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。