自闭的springMVC框架

走进Spring MVC 框架

单例模式

(1)init()方法:负责从数据库配置文件(database.properties)中获取数据库连接的初始化参数。database.properties

(2)Connection getConnection()方法:负责获取数据库连接,返回Connection实例。

(3)ResultSet execute(Connection.PreparedStatement,RestltSet,String,Object[])方法:负责根据传入的参数完成数据的查询操作,返回结果集ResutSet

(4)int execute(Connection,PreparedStarement,String,Object[])方法:负责根据传入的参数完成数据的更新(增、删、改)操作,返回影响的行数

(5)boollean closeResource(Connection,PreparedStatement,ResultSet)方法:负责根据传入的参数进行相应资源的关闭操作,返回Boolean值

懒汉模式
饿汉模式

Spring MVC-Controller的单例管理

Spring MVC的Controller类默认是单例的(即scope默认是singleton)

搭建Spring MVC+Spring+JDBC框架

(1)加入Spring 、Spring MVC、数据库驱动等的相关jar文件

(2)Spring 配置文件在resource文件夹下增加Spring配置文件(applicationContext-jdbc.xml)

(3)配置web.xml

​ 1.需要在web.xml中通过contextConfigLocation参数,指定步骤2创建的Spring配置文件(applicationContext-jdbc.xml)的路径
​ 2 由于Spring需要启动容器才能为其他框架提供服务,而web应用程序得到入口是被web服务器控制的

1.单例模式(Singleton)是一种常见的设计模式,通过单例模式可保证系统在运行期间有且仅有一个实例。常见的两种实现方式:饿汉模式和懒汉模式

2.搭建Spring MVC+Spring+JDBC的框架,需要在web.xml中装载Spring的相关配置文件,并需要配置ContextLoaderListener

3.在Spring MVC中,Servlet API可以作为处理方法的入参使用,非常简单方便

4.Spring MVC需要通过mvc:resource标签来实现静态资源的访问

5.Spring MVC通过HandlerExceptionResolver处理程序异常,分为局部异常处理和全局异常处理和全局异常处理

Spring MVC扩展和SSM框架整合

使用@Response Body实现数据输出

在这里插入图片描述

SpringMVC解决JSON数据传递的日期格式问题

在这里插入图片描述

在实际操作中,经常会遇到表单中的日期字符串与JavaBean中的日期类型的属性需要自动转换的情况,而Spring MVC框架默认不支持这个格式转换,即在Spring MVC中时间数据无法实现自动绑定,必须要手动配置自定义数据类型的绑定。

在进行手动配置数据转换之前,需要先了解数据绑定的流程。

概述: Spring会根据请求方法签名的不同,将请求中的信息以一定的方式转换并绑定到请求方法的入参中。其实在请求信息真正到达处理方法之前,Spring MVC还完成了许多工作,包括数据转换、数据格式化,以及数据校验等。

数据绑定具体流程图

DataBinder

Spring MVC将ServletRequest对象以及处理方法的入参对象实例传递给DataBinder。

DataBinder调用ConversionService组件进行数据转换、格式化的工作,并将ServletRequest中请求信息填充到入参对象中。

然后DataBinder再调用Validator组件对已经绑定了请求数据的入参对象进行数据合法性的验证,并最终生成数据绑定结果BindingResult对象。

解析:

(1)DataBinder:
数据绑定的核心组件,它在整个流程中起到核心调度的作用。

(2)ConversionService:

Spring类型转换体系的核心接口,可以利用org.springframework.context.support.ConversionServiceFactoryBean
在Spring的上下文定义一个 ConversionService 。Spring会自动识别出上下文中的 ConversionService ,在Bean属性配置和处理方法入参绑定时,使用它进行数据转换。所以在对于前台form表单中时间字符串到后台Date数据类型的转换问题,就可以通过 ConversionService 解决。

例:


(3)BindingResult:

BindingResult包含了已完成数据绑定的入参对象和相应的校验错误对象,Spring MVC会抽取BindingResult中的入参对象以及校验错误对象,将他们赋给处理方法的相应入参。

@InitBinder装配自定义编辑器

在这里插入图片描述

SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)

1、基本概念

1.1、Spring

​ Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

1.2、SpringMVC

​ Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

1.3、MyBatis

​ MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。MyBatis是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

使用框架都是较新的版本:

​ Spring 4.0.2 RELEASE

​ Spring MVC 4.0.2 RELEASE

​ MyBatis 3.2.6

Maven引入需要的JAR包

jar包“:

​ 。。。

建立spring-mybatis.xml配置文件

在这里插入图片描述

Log4j的配置

在这里插入图片描述

配置spring-mvc.xml

在这里插入图片描述

配置web.xml文件

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值