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
模拟用户登录:
package org.guangsoft.controller; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller; public class UserController implements Controller
{ /**
* ModelAndView:对象汇总封装了需要响应到客户端额的数据的视图的页面
*/
@Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception
{
//获得页面请求数据
String username = request.getParameter("username");
String password = request.getParameter("password"); //创建一个ModelAndView对象,封装了需呀显示的视图和视图上需要显示的数据
ModelAndView mav = new ModelAndView();
if(username.equals("root") && password.equals("root"))
{
//请求转发
mav.setViewName("success.jsp");
mav.addObject("username",username);
}
else
{
mav.setViewName("error.jsp");
mav.addObject("msg", "用户名或密码错误!");
}
return mav;
} }
2.4建立springmvc.xml配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> <!-- name是usercontroller请求的url -->
<bean name="/userController.action" class="org.guangsoft.controller.UserController"></bean>
</beans>
2.5在web.xml中配置springmvc的核心控制器
Springmvc的核心控制器是一个servlet
package org.guangsoft.controller; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller; public class UserController implements Controller
{ /**
* ModelAndView:对象汇总封装了需要响应到客户端额的数据的视图的页面
*/
@Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception
{
//获得页面请求数据
String username = request.getParameter("username");
String password = request.getParameter("password");
//床架一个ModelAndView对象,封装了需呀显示的视图和视图上需要显示的数据
ModelAndView mav = new ModelAndView();
if(username.equals("root") && password.equals("root"))
{
//请求转发
mav.setViewName("success.jsp");
mav.addObject("username",username);
}
else
{
mav.setViewName("error.jsp");
mav.addObject("msg", "用户名或密码错误!");
}
return mav;
} }
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。
package org.guangsoft.controller; import java.io.IOException; import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.springframework.web.HttpRequestHandler;
import org.springframework.web.servlet.ModelAndView; public class UserController2 implements HttpRequestHandler
{ @Override
public void handleRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
//获得页面请求数据
String username = request.getParameter("username");
String password = request.getParameter("password");
if(username.equals("root") && password.equals("root"))
{
//请求转发
request.setAttribute("username", username);
response.sendRedirect("success.jsp");
}
else
{
response.sendRedirect("error.jsp");
}
} }
4.3自定义javabean(重点)
不需要实现任何接口,处理请求的方法自己定义(参数和返回值),配合注解一起使用
4.3.1定义Controller
通过扫描将controller纳入spring容器
package org.guangsoft.controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
public class UserController3
{
/**
* 返回值:stirng表示跳转的路径
* username:接受客户端请求的username
* passowrd:接受客户端请求的password
* model:封装需要响应到客户端的数据
* 参数名称必须和客户端请求的参数名称一致
* @return
*/
@RequestMapping("/userLogin")//客户端请求的url
public String userLogin(String username, String password, Model model)
{
if(username.equals("root") && password.equals("root"))
{
model.addAttribute("username",username);
return "success.jsp";//完成页面的跳转
}
else
{
model.addAttribute("msg", "您的用户名或密码错误!");
return "error.jsp";
}
}
}
4.3.2进行UserController3的配置
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation=
"http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd"> <!-- name是usercontroller请求的url -->
<bean name="/userController.action" class="org.guangsoft.controller.UserController"></bean>
<context:component-scan base-package="org.guangsoft.controller"></context:component-scan>
<mvc:annotation-driven></mvc:annotation-driven>
</beans>
SpringMVC基本配置的更多相关文章
- SpringMVC、SpringMVC XML配置(纯XML方式)
1.引入SrpingMVC所使用的Java包: cglib-nodep-2.1_3.jar.commons-logging.jar.spring-aspects-4.1.7.RELEASE.jar.s ...
- Springmvc中配置Quartz使用,实现任务实时调度。
菜鸡的自我修炼,第一次接触quartz,做个记录.-------jstarseven 最近在项目中,第一次在springmvc中配置实用quartz,深刻的感受到quartz带来的方便,顺手做个记录. ...
- springMVC+Hibernate配置
本文描述下 sypro 项目中使用 springMVC+Hibernate配置,初学SpringMVC做下简单整理解. 1.web项目首先我们要使用 web.xml文件将 spring配置引入进来 & ...
- SpringMVC简单配置
SpringMVC简单配置 一.eclipse安装Spring插件 打开help下的Install New Software 点击add,location中输入http://dist.springso ...
- Idea简单SpringMVC框架配置
前边已经介绍过了Struts在Idea上的配置,相对于Struts来说,我觉得SpringMVC有更多的优势,首先Struts是需要对action进行配置,页面发送不同的请求,就需要配置不同的acti ...
- SpringMVC常用配置(二),最简洁的配置实现文件上传
Spring.SpringMVC持续介绍中,基础配置前面已经介绍了很多,如果小伙伴们还不熟悉可以参考这几篇文章: 1.Spring基础配置 2.Spring常用配置 3.Spring常用配置(二) 4 ...
- SpringMVC常用配置
关于Spring.SpringMVC我们前面几篇博客都介绍了很多,但是还不够,这些框架中涉及到的注解.配置非常多,那么我们今天再来介绍一个SpringMVC的基本配置,灵活的使用这些配置,可以让我们在 ...
- SpringMVC基础配置(通过注解配置,非xml配置)
SpringMVC是什么,有多火,我这里就不再啰嗦了,SpringMVC比Struts2好用太多,我在学校的时候私下里两种都接触过,对比之后果断选择了SpringMVC,后来在做Android应用开发 ...
- maven+springmvc的配置
1. 首先创建1个mavenweb项目 如果没有的话最好是去官网下载一个最新版本的eclipse 里面什么都有 maven/gradle 啥的 2. 选择路径 没啥影响 就是一个路径 默认就行 ...
- SpringMVC的配置和使用
SpringMVC的配置和使用 什么是SpringMVC? SpringMVC是Spring家族的一员,Spring是将现在开发中流行的组件进行组合而成的一个框架!它用在基于MVC的表现层开发,类似于 ...
随机推荐
- ionic配置 问题小记
1.用命令ionic start myApp tabs新建项目时,在最后面提示ionic\cli.js报错的问题(具体问题描述忘记了) 安装 node-inspector 即可 ,使用命令 cnpm ...
- RapidJSON 代码剖析(三):Unicode 的编码与解码
根据 RFC-7159: 8.1 Character Encoding JSON text SHALL be encoded in UTF-8, UTF-16, or UTF-32. The defa ...
- 对前端的一个H5项目的所思所想
最近接触一个前端HTML5的项目,虽然我主做iOS,但曾经也徒手用html+css+js+php写过一个博客,当然表示无压力了.结果.现在的前端发展的速度真是快啊,项目中用到Jquery,reactJ ...
- oneuijs/You-Dont-Need-jQuery
oneuijs/You-Dont-Need-jQuery https://github.com/oneuijs/You-Dont-Need-jQuery/blob/master/README.zh- ...
- webmagic 增量爬取
webmagic 是一个很好并且很简单的爬虫框架,其教程网址:http://my.oschina.net/flashsword/blog/180623 webmagic参考了scrapy的模块划分, ...
- 10月28日PHP基础知识测试题
本试题共40道选择题,10道判断题,考试时间1个半小时 一:选择题(单项选择,每题2分): 1. LAMP具体结构不包含下面哪种(A) A:Windows系统 B:Apache服务器 C:MySQL数 ...
- jquery ajax beforeSend 提交等待问题
需要使用异步加载async : true 否则不会出现等待效果 $.ajax({ url : $('#form').attr("action"), data: $('#form') ...
- Redis主-从部署实践
0. 前言 这篇文章简要介绍Redis的主从部署,实现了一主二从,使用两个哨兵监控,以实现简单的HA,其中从库作为备机. 1. 部署 这里有三台服务器,其中239主机上的Redis作为主库,其余两个作 ...
- apache启动出错原因举例
这是我这两天频繁遇到的问题.Apache服务器还真是问题少年!任何点改动都可能导致它无法使用. 原因一:80端口占用例如IIS,另外就是迅雷.我的apache服务器就是被迅雷害得无法启用! 原因二:软 ...
- redis教程(整理中)
一.redis简介 1.Redis:键值对类型的内存数据库:应用于高并发和实时请求的场景: 2.Redis常用数据类型: (1) string(基本数据类型) (2)hash 注:hash中的 ...