频道栏目
首页 > 程序开发 > 软件开发 > Java > 正文
springMVC笔记总结
2016-12-05 09:35:56         来源:Summer_YuXia的博客  
收藏   我要投稿

第一章 回顾JavaWeb中的MVC设计模式

1)MVC这种设计模式,不光运用于Web领域,而且也能用于非Web领域

2)今天说的MVC特指一种表现层设计模式,不限于Java语言

第二章 回顾struts2+Spring开发

1)需求:学生注册【add.jsp->StudentAction.java->addOK.jsp】

2)struts2框架有如下特点:

每次请求action时,都创建action实例

action类一成不变的直接或间接继续ActionSupport类

action类中的业务控制方法总是相类似的签名且无参

action类中,接收参数要用实例变量和对应的set方法或set/get方法

struts.xml配置文件,必须以struts.xml命名,且放在src目录下

.. .. ..

第三章 什么是springmvc,它与spring有什么关系

springmvc属于spring框架的后续产品,用在基于MVC的表现层开发,类似于struts2框架

参见<>

第四章 初识springmvc工作流程

参见<<初识springmvc工作流程.JPG>>

第五章 springmvc快速入门(XML版本)

1)springmvc快速入门(传统版)

步一:创建springmvc-day01这么一个web应用

步二:导入springioc,springweb , springmvc相关的jar包

步三:在/WEB-INF/下创建web.xml文件

DispatcherServlet

org.springframework.web.servlet.DispatcherServlet

DispatcherServlet

*.action

步四:创建HelloAction.java控制器类

/**

*控制器

*@authorAdminTC

*/

publicclassHelloAction implementsController{

/**

*业务方法

*/

publicModelAndView handleRequest(HttpServletRequest requqest,HttpServletResponse response) throwsException {

ModelAndView modelAndView = newModelAndView();

modelAndView.addObject("message","这是我的第一个springmvc应用程序");

modelAndView.setViewName("/jsp/success.jsp");

returnmodelAndView;

}

}

步五:在/WebRoot/下创建jsp/success.jsp

success.jsp

${message}

步六:在/WEB-INF/创建DispatcherServlet-servlet.xml配置文件,xml头部信息与spring.xml相同

注意:该配置文件的命名规则:web.xml文件中配置的的值-servlet.xml

xmlns="https://www.springframework.org/schema/beans"

xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"

xmlns:context="https://www.springframework.org/schema/context"

xmlns:aop="https://www.springframework.org/schema/aop"

xmlns:tx="https://www.springframework.org/schema/tx"

xmlns:mvc="https://www.springframework.org/schema/mvc"

xsi:schemaLocation="

https://www.springframework.org/schema/beans

https://www.springframework.org/schema/beans/spring-beans-3.0.xsd

https://www.springframework.org/schema/context

https://www.springframework.org/schema/context/spring-context-3.0.xsd

https://www.springframework.org/schema/aop

https://www.springframework.org/schema/aop/spring-aop-3.0.xsd

https://www.springframework.org/schema/tx

https://www.springframework.org/schema/tx/spring-tx-3.0.xsd

https://www.springframework.org/schema/mvc

https://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd

">

步七:部署web应用到tomcat中,通过浏览器访问如下URL:

https://127.0.0.1:8080/springmvc-day01/hello.action

第六章 加载自定义目录下的springmvc.xml配置文件

在默认情况下:springmvc框架的配置文件必须叫-servlet.xml

且必须放在/WEB-INF/目录下,我们可以在web.xml文件中,为DispatcherServlet配置一个初始化参数,

让它去我们指定的目录下加载springmvc.xml配置文件,web.xml代码如下:

DispatcherServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

/WEB-INF/classes/cn/itcast/javaee/springmvc/config/springmvc.xml

DispatcherServlet

*.action

如果springmvc.xml配置文件放在src目录下,web.xml代码如下:

DispatcherServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:spring.xml

DispatcherServlet

*.action

第七章 视图解析器InternalResourceViewResolver【解析视图逻辑名对应的真实路径】

ModelAndView对象中即可以封装真实视图路径名,也可以封装视图路径的逻辑名,springmvc.xml

代码如下:

Action类代码如下:

modelAndView.setViewName("success");

第八章 映射器Mapping【什么样的请求交给Action】

1)org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping(核心)

将程序员定义的Action所对应的标签的name属性作为请求路径

2)org.springframework.web.servlet.handler.SimpleUrlHandlerMapping

/delete.action和/update.action和/find.action请求路径都交由标签为id的Action,即

多个路径对应同一个Action

userActionID

userActionID

userActionID

第九章 适配器Adapter【Action实现什么接口】

1)Action实现Controller接口

org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter

publicclassEmpAction implementsController{

publicModelAndView handleRequest(HttpServletRequest request,HttpServletResponse response) throwsException {

System.out.println("EmpAction::handleRequest");

request.setCharacterEncoding("UTF-8");

String username = request.getParameter("username");

ModelAndView modelAndView = newModelAndView();

modelAndView.addObject("message",username);

modelAndView.setViewName("/jsp/success.jsp");

returnmodelAndView;

}

}

第十章 控制器Controller【Action继承什么类】

1)org.springframework.web.servlet.mvc.ParameterizableViewController

如果请求是/hello.action的请求路径,则直接跳转到/jsp/success.jsp页面,不经过程序员定义的控制器Action

2)org.springframework.web.servlet.mvc.AbstractCommandController

能够以实体的形式,收集客户端参数

publicclassAdminAction extendsAbstractCommandController{

publicAdminAction(){

this.setCommandClass(Admin.class);

}

@Override

protectedModelAndView handle(HttpServletRequest request,HttpServletResponse response, Object obj, BindException bindException)throwsException {

System.out.println("AdminAction::handle");

ModelAndView modelAndView = newModelAndView();

Admin admin = null;

if(obj instanceofAdmin){

admin = (Admin) obj;

}

modelAndView.addObject("username",admin.getUsername());

modelAndView.addObject("gender",admin.getGender());

modelAndView.addObject("hiredate",admin.getHiredate());

modelAndView.setViewName("/jsp/success.jsp");

returnmodelAndView;

}

}

第十一章 日期转换器和编码过滤器

1)在默认情况下,springmvc不能将String类型转成Date类型,必须自定义类型转换器

publicclassAdminAction extendsAbstractCommandController{

@Override

protectedvoidinitBinder(HttpServletRequest request,ServletRequestDataBinder binder) throwsException {

binder.registerCustomEditor(Date.class,newCustomDateEditor(newSimpleDateFormat("yyyy-MM-dd"),true));

}

2)spring提供的,专用于解决POST提交中文乱码问题,需要在web.xml文件中配置

CharacterEncodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

UTF-8

CharacterEncodingFilter

/*

第十二章 springmvc与struts2的区别

1)springmvc的入口是一个servlet,即前端控制器,例如:*.action

struts2入口是一个filter过虑器,即前端过滤器,例如:/*

2)springmvc是基于方法开发,传递参数是通过方法形参,可以设计为单例

struts2是基于类开发,传递参数是通过类的属性,只能设计为多例

3)springmvc通过参数解析器是将request对象内容进行解析成方法形参,将响应数据和页面封装成

ModelAndView对象,最后又将模型数据通过request对象传输到页面

struts采用值栈存储请求和响应的数据,通过OGNL存取数据

.. …

第十三章 员工管理系统--增加员工

技术:springmvc + spring + jdbc + oracle

点击复制链接 与好友分享!回本站首页
相关TAG标签 springMVC java
上一篇:java多线程-线程基础
下一篇:Spring框架学习(第二讲)
相关文章
图文推荐
文章
推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站