19       异常处理 19.1      异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发.测试通过手段减少运行时异常的发生. 系统的dao.service.controller出现都通过throws Exception向上抛出,最后由springmvc前端控制器交由异常处理器进行异常处理,如下图: springmvc提供全局异常处理器(一个系统只有一个异常处理器)进行统一异常处理. 19.2…
一.基于Validator接口的验证. 首先创建User实例,并加入几个属性 public class User { private String username; private String password; private String nickname; public String getUsername() { return username; } public void setUsername(String username) { this.username = username…
SpringMVC是整个spring中的一个很小的组成,准确的说他是spring WEB这个模块的下一个子模块,Spring WEB中除了有springMVC还有struts2,webWork等MVC框架. 粘贴一张从其它地方找来的流程图. 自己也不大能解释清楚,了解个皮毛而已,随便看下有个大致的脉落吧.好了,言归正传,说说用xml配置springmvc吧.记得springmvc开始是用xml配置的,后面才支持用注解配置,想找一下哪个版本开始支持注解,无奈不知从何找起.下面就把自己看视频学习对应…
Springmvc流程中的扩展点有很多,可以在很多地方插入自己的代码逻辑达到控制流程的目的. 如果要对Controller的handler方法做统一的处理.我想应该会有很多选择,比如:@ModelAttribute @InitBinder @ExceptionHandler @ControllerAdvice等注解,自己写AOP包裹Controller,Interceptor等等.. 我从来没有用过Interceptor,所以最近稍微花了点时间研究了下. 流程 先看看在Springmvc中Int…
这次的主题 最近一直在学习SpringMVC..(这句话我已经至少写了3,4遍了....).这次的研究主要是RequestMappingHandlerAdapter中的各种ArgumentsResolver.... 前面写了太多理论的东西...这次我想来点实践的.... SpringMVC自定义的@Controller的方法参数如果有多个,并且有重复的属性名称的话是默认不支持的..这点和Struts2很不一样..可能很多用过Struts2的朋友都不习惯SpringMVC的这种用法.. 确实,我也…
9       订单商品数据模型 9.1     数据模型分析思路 1.每张表记录的数据内容 分模块对每张表记录的内容进行熟悉,相当 于你学习系统 需求(功能)的过程. 2.每张表重要的字段设置 非空字段.外键字段 3.数据库级别表与表之间的关系 外键关系 4.表与表之间的业务关系 在分析表与表之间的业务关系时一定要建立 在某个业务意义基础上去分析. 9.2     数据模型分析 用户表user: 记录了购买商品的用户信息 订单表:orders 记录了用户所创建的订单(购买商品的订单) 订单明细…
SpringMVC的请求如以下这样的图所看到的: 能够看出全部的请求都要通过Dispatherservlet来接收,然后通过Handlermapping来决定使用哪个控制器,再依据ViewResolver来决定返回哪个视图.从流程来看,Handlermapping就是我们能够实现拦截器的第一种方法.另外另一种是实现WebRequestInterceptor接口,或者继承其子类. 一.实现HandlerInterceptor接口 实现HandlerInterceptor接口或者继承HandlerI…
如何使用HandleException 在程序中,异常是最常见的,我们需要捕捉异常并处理它,才能保证程序不被终止. 最常见的异常处理方法就是用try catch来捕捉异常.这次我们使用springmvc给我们提供的方法来处理异常 先模拟一个异常出现的场景.以下是一个简单的数学异常 package com.ibigsea.springmvc.handler; import org.springframework.stereotype.Controller; import org.springfra…
5.1.处理器拦截器简介 Spring Web MVC的处理器拦截器(如无特殊说明,下文所说的拦截器即处理器拦截器) 类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理.   5.1.1.常见应用场景 1.日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV(Page View)等. 2.权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面: 3.性能监控:有时候系统在某段时间莫名其妙的慢,可以通过拦截器在进入处理器之前记录开始时…
主题 SpringMVC有很多很多的注解.其中有2个注解@SessionAttributes @ModelAttribute我平时一般不用,因为实在是太灵活了.但是又有一定限制,用不好容易错.. 最近花了点时间研究了下,记录一下容易犯错的地方. @SessionAttributes 作用范围 这个注解被@Target({ElementType.TYPE})修饰,所以只能用在类上,用于多个request共享对象.它会把Model中set过的Arrtibute自动放到sessionAttribute…
废话 最近在看SpringMVC...里面东西好多...反正东看一点西看一点吧... 分享一下最近的一些心得..是关于DispatcherServlet的 DispatcherServlet与ContextLoaderListener dispattcherServlet这个类大家肯定不陌生的...因为使用SpringMVC一定会在web.xml里配置它. <servlet> <servlet-name>mvc-dispatcher</servlet-name> <…
基本的SpringMVC的搭建在我的上一篇文章里已经写过了,这篇文章主要说明一下使用SpringMVC进行表单上的文件上传以及多个文件同时上传的不同方法 一.配置文件: SpringMVC 用的是 的MultipartFile来进行文件上传 所以我们首先要配置MultipartResolver:用于处理表单中的file <!-- 配置MultipartResolver 用于文件上传 使用spring的CommosMultipartResolver --> <beans:bean id=&…
1E)Spring MVC框架 ①Jar包结构: docs+libs+schema. 版本区别:核心包,源码包. SpringMVC文档学习: 学习三步骤: 1)是什么? 开源框架 2)做什么? IOC :依赖注入.是一种设计模式 set()方式注入 AOP:   3)怎么做? ②创建一个简单的Spring框架 代码目录结构如下: 步骤: 1)创建JavaBean 2)创建Dao,和Service类 3)写好配置文件applicationContext.xml 基本的配置代码如下: <?xml…
对客户端传过来的参数,在使用前一般需要进行校验. SpringMVC框架内置了Validator验证接口,但是实现起来太麻烦.我们一般使用 hibernate-validator进行数据校验. 1:jar包配置 这个校验工具不是spring集成的,所以需要我们手动配置,主要有以下三个: 2:在springmvc配置文件中配置校验器 <!-- 配置校验器 --> <bean id="validator" class="org.springframework.v…
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6832903.html      Converter可以将一种类型转换成另一种类型,是任意Object之间的类型转换. Formatter则只能进行String与任意Object对象的转换,它提供 解析 与 格式化 两种功能. 其中:解析是将String类型字符串转换为任意Object对象,格式化是将任意Object对象转换为字符串进行格式化显示.      使用Formatter 1: 实现Formatte…
前面说了一下使用xml配置springmvc,下面再说说注解配置.项目如下: 业务很简单,主页和输入用户名和密码进行登陆的页面. 看一下springmvc的配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/…
21       json数据交互 21.1      为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据. 21.2      springmvc进行json交互 1.请求json.输出json,要求请求的是json串,所以在前端页面中需要将请求的内容转成json,不太方便. 2.请求key/value.输出json.此方法比较常用. 21.3      环境准备 21.3.…
15       包装类型pojo参数绑定 15.1      需求 商品查询controller方法中实现商品查询条件传入. 15.2      实现方法 第一种方法:在形参中 添加HttpServletRequest request参数,通过request接收查询条件参数. 第二种方法:在形参中让包装类型的pojo接收查询条件参数. 分析: 页面传参数的特点:复杂,多样性.条件包括 :用户账号.商品编号.订单信息... 如果将用户账号.商品编号.订单信息等放在简单pojo(属性是简单类型)中…
9       商品修改功能开发 9.1      需求 操作流程: 1.进入商品查询列表页面 2.点击修改,进入商品修改页面,页面中显示了要修改的商品(从数据库查询) 要修改的商品从数据库查询,根据商品id(主键)查询商品信息 3.在商品修改页面,修改商品信息,修改后,点击提交 9.2      开发mapper mapper: 根据id查询商品信息 根据id更新Items表的数据 不用开发了,使用逆向工程生成的代码. 9.3      开发service 接口功能: 根据id查询商品信息 修…
8      springmvc和mybatis整合 8.1      需求 使用springmvc和mybatis完成商品列表查询. 8.2      整合思路 springmvc+mybaits的系统架构: 第一步:整合dao层 mybatis和spring整合,通过spring管理mapper接口. 使用mapper的扫描器自动扫描mapper接口在spring中进行注册. 第二步:整合service层 通过spring管理 service接口. 使用配置方式将service接口配置在sp…
3      非注解的处理器映射器和适配器 3.1      非注解的处理器映射器 处理器映射器: org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping 另一个映射器: org.springframework.web.servlet.handler.SimpleUrlHandlerMapping 多个映射器可以并存,前端控制器判断url能让哪些映射器映射,就让正确的映射器处理. 3.2      非注解的处理器适配器…
1       springmvc框架 1.1      什么是springmvc springmvc是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合. springmvc是一个基于mvc的web框架. 1.2      mvc在b/s系统 下的应用 mvc是一个设计模式,mvc在b/s系统 下的应用: 1.3      springmvc框架 第一步:发起请求到前端控制器(DispatcherServlet) 第二步:前端控制器请求HandlerMapp…
在使用SpringMVC的时候我们能够使用Spring封装的一系列表单标签,这些标签都能够訪问到ModelMap中的内容. 以下将对这些标签一一介绍. 1.引入标签头文件 在正式介绍SpringMVC的表单标签之前,我们须要先在JSP中声明使用的标签.详细做法是在JSP文件的顶部加入以下指令: <%@taglib prefix="sf" uri="http://www.springframework.org/tags/form" %> 2.form标签…
SpringMVC内部有类型转换器,当从Request中获取参数后,放入Controller中时,会根据Controller中指定的类型进行自动转换,当指的类型SpringMVC不能自动转换时,就需要自定义类转换器 项目目录树: 请求页面index.jsp <%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> <%@…
起因 以前大三暑假实习的时候看到公司用SpringMVC而不是Struts2,老司机告诉我SpringMVC各种方便,各种解耦. 然后我自己试了试..好像是蛮方便的.... 基本上在Spring的基础上配置一小段就可以了.... 但是我一直搞不明白...像我用Struts2的时候需要继承框架的Action父类,所以请求可以委派过来...但是SpringMVC自己写的Controller完全就是POJO.那为什么请求还可以委派过来涅? 最近有点空...稍微研究了一下SpringMVC....算是对…
在bean配置资源或系统部署,如数据库的连接时,需要这样: 要包含相关jar包:c3p0.jar 和mysql.connector.jar xml配置: <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="root"></property>…
一.SpringMVC文件的上传 1.1.需要导入两个jar包 1.2在SpringMVC配置文件中加入 <!-- upload settings --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize&qu…
考虑到官方的示例c语言是最多的 官方未使用C++语言演示的例子就使用VC编译C语言例子 记录在此 /************************************************************** 技术博客 http://www.cnblogs.com/itdef/   技术交流群 群号码:324164944   欢迎c c++ windows驱动爱好者 服务器程序员沟通交流 **********************************************…
block结构示意图 sstable中Block 头文件如下: class Block { public: // Initialize the block with the specified contents. // Takes ownership of data[] and will delete[] it when done. Block(const char* data, size_t size); ~Block(); size_t size() const { return size_…
拦截器和文件上传算是springmvc中比较高级一点的内容了吧,让我们一起看一下. 下面先说说拦截器.拦截器和过滤器有点像,都可以在请求被处理之前和请求被处理之到做一些额外的操作. 1. 实现HandlerInterceptor接口. package com.sxt.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org…