SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for t_xxx_springmvc
-- ----------------------------
DROP TABLE IF EXISTS `t_xxx_springmvc`;
CREATE TABLE `t_xxx_springmvc` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`chapter` varchar(20) DEFAULT '6.SpringMVC-数据验证',
`name` varchar(20) DEFAULT '',
`content` varchar(100) DEFAULT '',
`myself` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=263 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of t_xxx_springmvc
-- ----------------------------
INSERT INTO `t_xxx_springmvc` VALUES ('1', '1.初识SpringMVC', '0.文章来源及URL', '博客园-http://www.cnblogs.com/liukemng/p/3724379.html,作者:Erola,.net web开发', '总部');
INSERT INTO `t_xxx_springmvc` VALUES ('2', '1.初识SpringMVC', '1.前言-结识Spring MVC', '作者想做一个微信公众账号的管理平台。只能在Linux下运行(没找到Windows虚拟主机),所以不能选择熟悉的.net web来开发。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('3', '1.初识SpringMVC', '2.前言-mono解决方案', 'Mono是一个能将Spring.NET的项目运行在非Windows环境下的软件。也就是在它上面能跑C#编写的应用。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('4', '1.初识SpringMVC', '3.前言-选用Spring3 MVC', '选择Java开发后,先看了SSH,错误理解了Struts2的Action,又发现Spring3 MVC的基于注解的Controller,与.Net MVC相近,所以选择了它。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('5', '1.初识SpringMVC', '4.前言-选择的版本', 'Spring 3.2.5 Releas版本 + Hibernate 4.2.8 Final版本 + Spring MVC组合', null);
INSERT INTO `t_xxx_springmvc` VALUES ('6', '1.初识SpringMVC', '5.Spring MVC特色', '引入注解式Controller及支持Restful风格,开发结构清晰明了,效率大大提高。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('7', '1.初识SpringMVC', '6.Spring MVC的响应流程', '1.DispatcherServlet分发请求;2.DefaultAnnotaionHandlerMapping将请求映射到对应的Controller;', null);
INSERT INTO `t_xxx_springmvc` VALUES ('8', '1.初识SpringMVC', '', '3.通过AnnotionMethodHandlerAdapter,调用对应的方法,并返回ModelAndView;4.解析视图,并返回给客户端', null);
INSERT INTO `t_xxx_springmvc` VALUES ('9', '1.初识SpringMVC', '7.一类三接口', '重要的接口和类:一类(DispatcherServlet),三接口(HandlerMapping、HandlerAdapter、ViewResolver)', null);
INSERT INTO `t_xxx_springmvc` VALUES ('10', '1.初识SpringMVC', 'DispatcherServlet:类', '前端控制器,用于接收请求。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('11', '1.初识SpringMVC', 'HandlerMapping:接口', '用于处理请求的映射。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('12', '1.初识SpringMVC', '', '实现类:DefaultAnnotationHandlerMapping:用于把一个URL映射到具体的Controller类上。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('13', '1.初识SpringMVC', 'HandlerAdapter:接口', '用户处理请求的映射。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('14', '1.初识SpringMVC', '', '实现类:AnnotionMethodHandlerAdapter,用于把一个URL映射到对应Controller类的某个方法上。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('15', '1.初识SpringMVC', 'ViewResolver:接口', '用于解析View。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('16', '1.初识SpringMVC', '', '实现类:InternalResourceViewResolver,用于把ModelAndView的逻辑视图名解析为具体的View。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('17', '1.初识SpringMVC', '8.第一节结束', '', '结束标志');
INSERT INTO `t_xxx_springmvc` VALUES ('18', '2.SpringMVC的Demo实现', '0.文章来源', 'http://www.cnblogs.com/liukemng/p/3725582.html', '总部');
INSERT INTO `t_xxx_springmvc` VALUES ('19', '2.SpringMVC的Demo实现', '1.开发环境', '机器(操作系统):Ubuntu12.04,开发工具:Eclipse For JavaEE,数据库:Mysql5.5.35,运行环境:Tomcat 7,JDK:1.7.0_45', null);
INSERT INTO `t_xxx_springmvc` VALUES ('20', '2.SpringMVC的Demo实现', '2.依赖的jar包', 'Spring框架下的所有jar包(3.2.5Release),及其依赖的jar:如下', null);
INSERT INTO `t_xxx_springmvc` VALUES ('21', '2.SpringMVC的Demo实现', '', '日志commons-logging-1.1.3.jar,JSTL支持jakarta-taglibs-standard-1.1.2中的jstl.jar和standard.jar', null);
INSERT INTO `t_xxx_springmvc` VALUES ('22', '2.SpringMVC的Demo实现', '3.web.xml配置', '<servlet>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('23', '2.SpringMVC的Demo实现', '', ' <servlet-name>SpringMVCLesson</servlet-name>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('24', '2.SpringMVC的Demo实现', '', ' <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('25', '2.SpringMVC的Demo实现', '', ' <init-param>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('26', '2.SpringMVC的Demo实现', '', ' <param-name>contextConfigLocation</param-name>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('27', '2.SpringMVC的Demo实现', '', ' <param-value>classpath:springservlet-config.xml</param-value>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('28', '2.SpringMVC的Demo实现', '', ' </init-param>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('29', '2.SpringMVC的Demo实现', '', ' <load-on-startup>1</load-on-startup><!-- load-on-startup必须放在最后 -->', null);
INSERT INTO `t_xxx_springmvc` VALUES ('30', '2.SpringMVC的Demo实现', '', ' </servlet>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('31', '2.SpringMVC的Demo实现', '', '<!-- Spring MVC配置文件结束 -->', null);
INSERT INTO `t_xxx_springmvc` VALUES ('32', '2.SpringMVC的Demo实现', '', ' ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('33', '2.SpringMVC的Demo实现', '', ' <servlet-mapping>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('34', '2.SpringMVC的Demo实现', '', ' <servlet-name>SpringMVCLesson</servlet-name>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('35', '2.SpringMVC的Demo实现', '', ' <url-pattern>/</url-pattern> 将所有的请求都交给DispatcherServlet转发', null);
INSERT INTO `t_xxx_springmvc` VALUES ('36', '2.SpringMVC的Demo实现', '', ' </servlet-mapping>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('37', '2.SpringMVC的Demo实现', '4.web.xml的配置说明', '1.配置DispatcherServlet:拦截请求,调用对应的Controller和Action,解析和渲染指定视图并返回响应。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('38', '2.SpringMVC的Demo实现', '', '2.init-param:classpath:springservlet-config.xml指定具体的配置文件,并启动ApplicationContext容器。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('39', '2.SpringMVC的Demo实现', '', '3.<load-on-startup>1</load-on-startup>是启动顺序,必须放在<servlet>配置的最后,随容器一起启动。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('40', '2.SpringMVC的Demo实现', '', '4.<servlet-mapping>中的<url-pattern>,指定拦截哪些请求到该Servlet,/表示拦截全部请求', null);
INSERT INTO `t_xxx_springmvc` VALUES ('41', '2.SpringMVC的Demo实现', '5.spring的配置文件', '1.<mvc:annotation-driven /> 默认的注解映射的支持', null);
INSERT INTO `t_xxx_springmvc` VALUES ('42', '2.SpringMVC的Demo实现', '', ' 开启注解映射支持,它是为了简化配置的缩写形式,它相当于以下2个配置:', null);
INSERT INTO `t_xxx_springmvc` VALUES ('43', '2.SpringMVC的Demo实现', '', '<bean class=\"org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('44', '2.SpringMVC的Demo实现', '', '<bean class=\"org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('45', '2.SpringMVC的Demo实现', ' 2.请求转发:', '<mvc:view-controller path=\"/\" view-name=\"forward:/helloworld/index\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('46', '2.SpringMVC的Demo实现', '', ' 如果当前请求为“/”时,则转发到“/helloworld/index”', null);
INSERT INTO `t_xxx_springmvc` VALUES ('47', '2.SpringMVC的Demo实现', ' 3.静态资源映射:', '<mvc:resources mapping=\"/js/**\" location=\"/WEB-INF/js/\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('48', '2.SpringMVC的Demo实现', '', '<mvc:resources mapping=\"/css/**\" location=\"/WEB-INF/css/\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('49', '2.SpringMVC的Demo实现', '', '<mvc:resources mapping=\"/fonts/**\" location=\"/WEB-INF/fonts/\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('50', '2.SpringMVC的Demo实现', '', '<mvc:resources mapping=\"/plugins/**\" location=\"/WEB-INF/plugins/\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('51', '2.SpringMVC的Demo实现', '', '<mvc:resources mapping=\"images/**\" location=\"/WEB-INF/images/\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('52', '2.SpringMVC的Demo实现', '', '<!-- 当上面要访问的静态资源不包括在上面的配置中时,则根据此配置来访问 -->', null);
INSERT INTO `t_xxx_springmvc` VALUES ('53', '2.SpringMVC的Demo实现', '', '<mvc:default-servlet-handler/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('54', '2.SpringMVC的Demo实现', '为什么要配置静态资源映射呢?', '由于我们在web.xml文件里面配置的是拦截所有的请求到该servlet,所以我们在这里要对静态资源文件映射', null);
INSERT INTO `t_xxx_springmvc` VALUES ('55', '2.SpringMVC的Demo实现', '', '作一下配置,否则请求这些资源文件会返回404.', null);
INSERT INTO `t_xxx_springmvc` VALUES ('56', '2.SpringMVC的Demo实现', ' 4.开启注解支持', '<context:component-scan base-package=\"com.pinnet.eas\" />或', null);
INSERT INTO `t_xxx_springmvc` VALUES ('57', '2.SpringMVC的Demo实现', '', '<context:component-scan base-package=\"com.demo.web.controllers\" use-default-filters=\"false\">', null);
INSERT INTO `t_xxx_springmvc` VALUES ('58', '2.SpringMVC的Demo实现', '', ' <context:include-filter type=\"annotation\" expression=\"org.springframework.stereotype.Controller\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('59', '2.SpringMVC的Demo实现', '', '</context:component-scan>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('60', '2.SpringMVC的Demo实现', '', '开启@Controller支持,并配置只扫描指定包下面的Controller。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('61', '2.SpringMVC的Demo实现', ' 5.配置视图解析器', '<bean class=\"org.springframework.web.servlet.view.InternalResourceViewResolver\">', null);
INSERT INTO `t_xxx_springmvc` VALUES ('62', '2.SpringMVC的Demo实现', '', ' <property name=\"viewClass\" value=\"org.springframework.web.servlet.view.JstlView\"/> 可省略', null);
INSERT INTO `t_xxx_springmvc` VALUES ('63', '2.SpringMVC的Demo实现', '', ' <property name=\"contentType\" value=\"text/html\"/> 可省略 ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('64', '2.SpringMVC的Demo实现', '', ' <property name=\"prefix\" value=\"/WEB-INF/views/\"/> jsp所在目录', null);
INSERT INTO `t_xxx_springmvc` VALUES ('65', '2.SpringMVC的Demo实现', '', ' <property name=\"suffix\" value=\".jsp\"/> 文件的后缀', null);
INSERT INTO `t_xxx_springmvc` VALUES ('66', '2.SpringMVC的Demo实现', '', '</bean>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('67', '2.SpringMVC的Demo实现', '', '配置视图解析器,并指定视图所在的文件夹。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('68', '2.SpringMVC的Demo实现', '6.新建Controller类', '1.在HelloWorldController类上,添加两个注解:@Controller、@RequestMapping(value=\"/helloworld\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('69', '2.SpringMVC的Demo实现', '', ' @Controller:将改class指定为controller', null);
INSERT INTO `t_xxx_springmvc` VALUES ('70', '2.SpringMVC的Demo实现', '', ' @RequestMapping:value值指定该controller所映射的请求', null);
INSERT INTO `t_xxx_springmvc` VALUES ('71', '2.SpringMVC的Demo实现', '', '2.在index()上添加注解:@RequestMapping(value=\"/index\", method={RequestMethod.GET})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('72', '2.SpringMVC的Demo实现', '', ' @RequestMapping:指定该方法为一个action,value值为该action所映射的请求,method指定值接收get请求。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('73', '2.SpringMVC的Demo实现', '', '3.index()的返回值为:new ModelAndView(\"index\");', null);
INSERT INTO `t_xxx_springmvc` VALUES ('74', '2.SpringMVC的Demo实现', '', ' viewName=index,指定了该action对应的视图名称,在配置文件指定的文件夹中寻找对应的视图,即index.jsp。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('75', '2.SpringMVC的Demo实现', '7.新建index.jsp视图', '在/WEB-INF文件夹下新建一个views文件夹,并在views下添加index.jsp视图。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('76', '2.SpringMVC的Demo实现', '', ' 在jsp页面可以访问放在ModelAndView里的数据,如${message}', null);
INSERT INTO `t_xxx_springmvc` VALUES ('77', '2.SpringMVC的Demo实现', '8.启动并访问页面', '启动Tomcat后,可以通过/来访问,也可以通过/helloworld/index来访问页面。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('78', '2.SpringMVC的Demo实现', '9.总结Demo例子', '1.配置web.xml:将/请求映射到DispatcherServlet,并配置spring配置文件名字,Servlet启动时机', null);
INSERT INTO `t_xxx_springmvc` VALUES ('79', '2.SpringMVC的Demo实现', '', '2.配置spring配置文件:mvc注解,view-controller,resources映射,controller扫描位置,视图解析器', null);
INSERT INTO `t_xxx_springmvc` VALUES ('80', '2.SpringMVC的Demo实现', '', '3.Controller类:@Controller、@RequestMappring注解类、方法,ModelAndView', null);
INSERT INTO `t_xxx_springmvc` VALUES ('81', '2.SpringMVC的Demo实现', '', '4.视图文件:jsp文件存放的文件夹,名称命名规范,可获取ModelAndView里的属性', null);
INSERT INTO `t_xxx_springmvc` VALUES ('82', '2.SpringMVC的Demo实现', '10.本节结束', '', '结束标识');
INSERT INTO `t_xxx_springmvc` VALUES ('83', '3.URL请求的映射规则', '0.文章来源', 'http://www.cnblogs.com/liukemng/p/3726897.html', '总部');
INSERT INTO `t_xxx_springmvc` VALUES ('84', '3.URL请求的映射规则', '1.一个action配置多个URL映射', '将index()上的注解改为:@RequestMapping(value={\"/index\",\"/hello\"}, method={RequestMethod.GET})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('85', '3.URL请求的映射规则', '', ' 表示对该action配置了“/index”和“/hello”两个映射。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('86', '3.URL请求的映射规则', '2.URL请求参数映射', '在查询的时候,我们经常要根据ID或编号来获取一条记录。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('87', '3.URL请求的映射规则', '', ' @RequestMapping(value=\"/detail/{id}\", method={RequestMethod.GET})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('88', '3.URL请求的映射规则', '', ' public ModelAndView getDetail(@PathVariable(value=\"id\") Integer id){', null);
INSERT INTO `t_xxx_springmvc` VALUES ('89', '3.URL请求的映射规则', '', '其中,value=\"/detail/{id}\"中的{id}为占位符,可以映射请求到“/detail/xxx”的URL,如:/detail/123等', null);
INSERT INTO `t_xxx_springmvc` VALUES ('90', '3.URL请求的映射规则', '', '方法参数的@PathVaribale(value=\"id\") Integer id,用于将URL中占位符所对应变量映射到参数id上。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('91', '3.URL请求的映射规则', '', ' 注意:@PathVariable(value=\"id\")中value的值,要与占位符/{id}大括号中的值一致,如本例中都是id', null);
INSERT INTO `t_xxx_springmvc` VALUES ('92', '3.URL请求的映射规则', '', '可以将id取出来后,放进ModelAndView里,在jsp页面上通过${id}将请求路径中的值显示出来。如/detail/24,页面就显示24.', null);
INSERT INTO `t_xxx_springmvc` VALUES ('93', '3.URL请求的映射规则', '3.URL通配符映射', '我们可以通过通配符对URL进行配置,通配符有:?和*,两个字符。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('94', '3.URL请求的映射规则', '', ' 其中,?:表示1个字符,*:表示匹配多个字符,**:表示匹配0个或多个路径', null);
INSERT INTO `t_xxx_springmvc` VALUES ('95', '3.URL请求的映射规则', '', '/home/index?:可以匹配 /home/indexA,/home/indexB,但不匹配 /home/index 或 /home/indexAA', null);
INSERT INTO `t_xxx_springmvc` VALUES ('96', '3.URL请求的映射规则', '', '/home/index*:可以匹配上面所有的,但不能匹配 /home/index/A', null);
INSERT INTO `t_xxx_springmvc` VALUES ('97', '3.URL请求的映射规则', '', '/home/index/*:可以匹配 /home/index/ ,/home/index/AA,但不匹配 /home/index,/home/index/A/B', null);
INSERT INTO `t_xxx_springmvc` VALUES ('98', '3.URL请求的映射规则', '', '/home/index**:可以匹配 /home/index/ 下的左右自路径,如/home/index/A/B/C/D', null);
INSERT INTO `t_xxx_springmvc` VALUES ('99', '3.URL请求的映射规则', '4.匹配规则的优先级', 'Spring MVC按照最长匹配优先原则,即和映射配置匹配最多那个来匹配,举例如下', null);
INSERT INTO `t_xxx_springmvc` VALUES ('100', '3.URL请求的映射规则', '', ' /home/index 和 /home/*,当请求地址为 /home/index时,会匹配/home/index', null);
INSERT INTO `t_xxx_springmvc` VALUES ('101', '3.URL请求的映射规则', '5.URL的正则表达式映射', 'Spring MVC还支持正则表达式方式的映射配置,我们通过一个例子来说明:新增一个方法,并增加注解', null);
INSERT INTO `t_xxx_springmvc` VALUES ('102', '3.URL请求的映射规则', '', '@RequestMapping(value=\"/reg/{name:\\\\w+}-{age:\\\\d+}\", method={RequestMethod.GET})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('103', '3.URL请求的映射规则', '', 'public ModelAndView regUrlTest(@PathVariable(value=\"name\") String name, @PathVariable(value=\"age\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('104', '3.URL请求的映射规则', '', ' Integer age){', null);
INSERT INTO `t_xxx_springmvc` VALUES ('105', '3.URL请求的映射规则', '', '匹配的请求为:/helloworld/reg/Hanmeimei-18,而且参数里的name=\"Hanmeimei\",age=18', null);
INSERT INTO `t_xxx_springmvc` VALUES ('106', '3.URL请求的映射规则', '6.限制action的请求方式', '如果index()上的注解的method改为POST,则不能通过地址栏方式请求了,会返回404。因为它只支持POST方式', null);
INSERT INTO `t_xxx_springmvc` VALUES ('107', '3.URL请求的映射规则', '', '可以通过method={RequestMethod.GET,RequestMethod.POST}表示可以接受get或post请求。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('108', '3.URL请求的映射规则', '', '更简单的是不对method做配置,则默认支持所有的请求方式。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('109', '3.URL请求的映射规则', '7.限制action所接受请求的参数', '我们可以为某个action指定映射的请求中必须包含某参数,或必须不包含某参数,或者某参数必须等于某个值', null);
INSERT INTO `t_xxx_springmvc` VALUES ('110', '3.URL请求的映射规则', '', ' 或者某参数必须不等于某个值这些限制。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('111', '3.URL请求的映射规则', ' 1.必须包含某参数', '@RequestMapping(value=\"/params\", params=\"example\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('112', '3.URL请求的映射规则', '', ' 匹配:/helloworld/params?example,不匹配:/helloworld/params', null);
INSERT INTO `t_xxx_springmvc` VALUES ('113', '3.URL请求的映射规则', ' 2.不包含某参数', '@RequestMapping(value=\"/params\", params=\"!example\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('114', '3.URL请求的映射规则', '', ' 匹配:/helloworld/params,不匹配:/helloworld/params?example', null);
INSERT INTO `t_xxx_springmvc` VALUES ('115', '3.URL请求的映射规则', ' 3.参数必须等于某值', '@ResquestMapping(value=\"/params\", params=\"example=AAA\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('116', '3.URL请求的映射规则', '', ' 匹配:/helloworld/params?example=AAA,不匹配:/helloworld/params?example=BBB', null);
INSERT INTO `t_xxx_springmvc` VALUES ('117', '3.URL请求的映射规则', ' 4.参数不等于某值', '@ResquestMapping(value=\"/params\", params=\"example!=AAA\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('118', '3.URL请求的映射规则', '', ' 匹配:/helloworld/params?example=BBB,不匹配:/helloworld/params?example=AAA', null);
INSERT INTO `t_xxx_springmvc` VALUES ('119', '3.URL请求的映射规则', ' 5.两个条件同时满足', '@ResquestMapping(value=\"/params\", params={\"example!=AAA\",\"test=111\"})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('120', '3.URL请求的映射规则', '', ' 表示的是and关系,即两个参数限制必须同时满足。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('121', '3.URL请求的映射规则', '8.限制请求头参数', '与限制方法的参数类型,只不过把params改为了headers而已。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('122', '3.URL请求的映射规则', ' 1.包含参数', '@RequestMapping(value=\"/headerTest\", headers = \"example\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('123', '3.URL请求的映射规则', ' 2.不包含参数', '@RequestMapping(value=\"/headerTest\", headers = \"!example\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('124', '3.URL请求的映射规则', ' 3.参数等于某值', '@RequestMapping(value=\"/headerTest\", headers = \"Accept=text/html\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('125', '3.URL请求的映射规则', ' 4.参数不等于某值', '@RequestMapping(value=\"/headerTest\", headers = \"Accept!=text/html\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('126', '3.URL请求的映射规则', ' 5.两个条件同时满足', '@RequestMapping(value=\"/headerTest\", headers = {\"Accept!=text/html\",\"!example\"})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('127', '3.URL请求的映射规则', '9.注意点', 'headers={\"example1\", \"example2\"} 不仅需要 有 key的值 还有有value的值 (可以是任意值,但是不能为空)', null);
INSERT INTO `t_xxx_springmvc` VALUES ('128', '3.URL请求的映射规则', '10.本节总结', '1.一个action对应多个请求URL。', '');
INSERT INTO `t_xxx_springmvc` VALUES ('129', '3.URL请求的映射规则', '', '2.请求参数占位符匹配。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('130', '3.URL请求的映射规则', '', '3.URL通配符匹配:? 和 *', null);
INSERT INTO `t_xxx_springmvc` VALUES ('131', '3.URL请求的映射规则', '', '4.URL匹配的优先级:最长匹配优先', null);
INSERT INTO `t_xxx_springmvc` VALUES ('132', '3.URL请求的映射规则', '', '5.URL的正则表达式匹配。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('133', '3.URL请求的映射规则', '', '6.限制访问请求方式:method', null);
INSERT INTO `t_xxx_springmvc` VALUES ('134', '3.URL请求的映射规则', '', '7.限制请求参数匹配:有四种不同的方式:包含、不包含、等于、不等于,还可以两个条件同时匹配', null);
INSERT INTO `t_xxx_springmvc` VALUES ('135', '3.URL请求的映射规则', '', '8.限制请求头参数匹配,与方法参数匹配类似。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('136', '3.URL请求的映射规则', '11.本节结束', '', '结束标志');
INSERT INTO `t_xxx_springmvc` VALUES ('137', '4.数据绑定-1', '0.文章来源', 'http://www.cnblogs.com/liukemng/p/3729071.html', '总部');
INSERT INTO `t_xxx_springmvc` VALUES ('138', '4.数据绑定-1', '1.承上启下', '上一节我们介绍了请求是如何映射到一个action上的,这一节讲如何获取到请求汇总的数据,即数据绑定的注解。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('139', '4.数据绑定-1', '2.有哪些数据绑定的注解呢?', '总共有8种绑定数据的注解,它们分别用在不同的场景中。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('140', '4.数据绑定-1', '', '1.@RequestParam:绑定单个请求数据,可以是URL中的数据,也可以是表单提交的数据或上传的文件。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('141', '4.数据绑定-1', '', '2.@PathVariable:绑定URL模板变量值,前一节我们已经遇到了。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('142', '4.数据绑定-1', '', '3.@CookieValue:绑定Cookie数据。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('143', '4.数据绑定-1', '', '4.@RequestHeader:绑定请求头数据。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('144', '4.数据绑定-1', '', '5.@ModelAttribute:绑定数据到Model。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('145', '4.数据绑定-1', '', '6.@SessionAttributes:绑定数据到Session。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('146', '4.数据绑定-1', '', '7.@RequestBody:用来处理Content-Type不是application/x-www.form-urlencoded编码的内容,例如application/json或xml等。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('147', '4.数据绑定-1', '', '8.@RequestPart:绑定“multipart/data”数据,并可以根据数据类型项对象转换。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('148', '4.数据绑定-1', '3.先学@RequestParam', '1.添加两个依赖包,用于上传文件:commons-fileupload-1.3.1.jar和commons-io.2.4.jar', null);
INSERT INTO `t_xxx_springmvc` VALUES ('149', '4.数据绑定-1', '', '2.在spring配置文件中,增加上传文件的类,并设置上传文件的最大容量。不设置默认为无限大。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('150', '4.数据绑定-1', '', '<!-- 支持上传文件 --> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('151', '4.数据绑定-1', '', '<bean id=\"multipartResolver\" ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('152', '4.数据绑定-1', '', ' class=\"org.springframework.web.multipart.commons.CommonsMultipartResolver\"> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('153', '4.数据绑定-1', '', '<!-- 设置上传文件的最大尺寸为1MB --> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('154', '4.数据绑定-1', '', ' <property name=\"maxUploadSize\"> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('155', '4.数据绑定-1', '', ' <value>1048576</value> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('156', '4.数据绑定-1', '', ' </property>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('157', '4.数据绑定-1', '', ' <property name=\"defaultEncoding\"> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('158', '4.数据绑定-1', '', ' <value>UTF-8</value> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('159', '4.数据绑定-1', '', ' </property>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('160', '4.数据绑定-1', '', '</bean>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('161', '4.数据绑定-1', ' 配置说明:', 'maxUploadSize用于限制上传文件的最大大小,也可以不做设置,这样就代表上传文件的大小木有限制。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('162', '4.数据绑定-1', '', 'defaultEncoding用于设置上传文件的编码格式,用于解决上传的文件中文名乱码问题。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('163', '4.数据绑定-1', '4.新增文件上传Controller', '@Controller', null);
INSERT INTO `t_xxx_springmvc` VALUES ('164', '4.数据绑定-1', '', '@RequestMapping(value=\"/databind\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('165', '4.数据绑定-1', '', 'public class DataBindController {', null);
INSERT INTO `t_xxx_springmvc` VALUES ('166', '4.数据绑定-1', '', ' @RequestMapping(value=\"/parambind\", method = {RequestMethod.GET})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('167', '4.数据绑定-1', '', ' public ModelAndView paramBind(){', null);
INSERT INTO `t_xxx_springmvc` VALUES ('168', '4.数据绑定-1', '', '......', null);
INSERT INTO `t_xxx_springmvc` VALUES ('169', '4.数据绑定-1', '', ' @RequestMapping(value=\"/parambind\", method = {RequestMethod.POST})', null);
INSERT INTO `t_xxx_springmvc` VALUES ('170', '4.数据绑定-1', '', ' public ModelAndView paramBind(HttpServletRequest request, @RequestParam(\"urlParam\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('171', '4.数据绑定-1', '', 'String urlParam, @RequestParam(\"formParam\") String formParam,@RequestParam(\"formFile\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('172', '4.数据绑定-1', '', ' MultipartFile formFile){......', null);
INSERT INTO `t_xxx_springmvc` VALUES ('173', '4.数据绑定-1', '5.新增两个jsp', 'parambind.jsp:用于显示上传组件,并提交请求,enctype=\"multipart/form-data\" 且 method=\"post\"', null);
INSERT INTO `t_xxx_springmvc` VALUES ('174', '4.数据绑定-1', '', 'parambindresult.jsp:返回文件上传后的结果', null);
INSERT INTO `t_xxx_springmvc` VALUES ('175', '4.数据绑定-1', '6.例子结果分析', '将上传文件传到后台后,在返回页面里显示上传的文件名。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('176', '4.数据绑定-1', '', '分析:对于数据,是对应一个变量的,也就是说有多少数据就有多少个变量。上面的例子就是先取出变量,然后再封装成一个对象。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('177', '4.数据绑定-1', '', '而SpringMVC也提供直接将数据绑定到一个model对象上。但需要在页面的form标签上添加一个modelAttribute属性', null);
INSERT INTO `t_xxx_springmvc` VALUES ('178', '4.数据绑定-1', '7.@RequestParam的完整写法', '@RequestParam(value=\"username\", required=true, defaultValue=\"AAA\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('179', '4.数据绑定-1', '', '1.value:表示要绑定请求中参数的名字;', null);
INSERT INTO `t_xxx_springmvc` VALUES ('180', '4.数据绑定-1', '', '2.required:表示请求中是否必须有这个参数,默认为true这是如果请求中没有要绑定的参数则返回404;', null);
INSERT INTO `t_xxx_springmvc` VALUES ('181', '4.数据绑定-1', '', '3.defaultValue:表示如果请求中指定的参数值为空时的默认值;', null);
INSERT INTO `t_xxx_springmvc` VALUES ('182', '4.数据绑定-1', ' 注意点:', '要绑定的参数如果是值类型必须要有值否则抛异常,如果是引用类型则默认为null(Boolean除外,默认为false);', null);
INSERT INTO `t_xxx_springmvc` VALUES ('183', '4.数据绑定-1', '8.关于action的返回类型', '在刚才添加的2个action中可以看到返回类型和以前的不一样了,由ModelAndView变成了String', null);
INSERT INTO `t_xxx_springmvc` VALUES ('184', '4.数据绑定-1', '', '这是由于Spring MVC 提供Model、ModelMap、Map让我们可以直接添加渲染视图需要的模型数据,在返回时直接指定对应视图名称就可以了。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('185', '4.数据绑定-1', '', '同时Map是继承于ModelMap的,而Model和ModelMap是继承于ExtendedModelMap的。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('186', '4.数据绑定-1', ' 自己的理解', 'Model是spring的一个接口。而ModleMap是一个类,继承了java.util.HashMap。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('187', '4.数据绑定-1', '', '而ExtendedModelMap是一个类,继承自ModelMap,实现了Model接口。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('188', '4.数据绑定-1', '9.SpringMVC表单标签', '在刚添加的modelautobind.jsp中我们用到了<form:form、<form:input等标签,这是SpringMVC提供的表单标签', null);
INSERT INTO `t_xxx_springmvc` VALUES ('189', '4.数据绑定-1', '', '借助这些标签我们可以很方便把模型数据绑定到表单上面,也可以使用原生的html表单标签。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('190', '4.数据绑定-1', '', '要使用SpringMVC的表单标签,需要在视图中添加引用即可,如下:', null);
INSERT INTO `t_xxx_springmvc` VALUES ('191', '4.数据绑定-1', '', '<%@ taglib prefix=\"form\" uri=\"http://www.springframework.org/tags/form\" %>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('192', '5.数据绑定-2', '0.数据来源', 'http://www.cnblogs.com/liukemng/p/3736948.html', null);
INSERT INTO `t_xxx_springmvc` VALUES ('193', '5.数据绑定-2', '1.承上启下', '上一节我们介绍了如何使用@RequestParam来绑定数据,这一节我们学习其他价格数据绑定注解的使用方法。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('194', '5.数据绑定-2', '2.@PathVariable注解', '用来绑定URL模板变量值,这个我们已经在第三节中介绍了使用方法,这里不再赘述。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('195', '5.数据绑定-2', '3.@CookieValue注解', '用来绑定Cookie中的数据,我们可以获取Cookie中的sessionId做测试。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('196', '5.数据绑定-2', '', '例:@CookieValue(value=\"JSESSIONID\", defaultValue=\"\") String jsessionId)', null);
INSERT INTO `t_xxx_springmvc` VALUES ('197', '5.数据绑定-2', '4.@RequestHeader', '用来绑定请求头中的数据,我们用@RequestHeader获取User-Agent 来做演示:', null);
INSERT INTO `t_xxx_springmvc` VALUES ('198', '5.数据绑定-2', '', ' @RequestHeader(value=\"User-Agent\", defaultValue=\"\") String userAgent', null);
INSERT INTO `t_xxx_springmvc` VALUES ('199', '5.数据绑定-2', '5.@ModelAttribute', '绑定数据到模型中。在系列(4)的modelAutoBind action中我们将表单提交的数据添加到Model中的代码如下:', null);
INSERT INTO `t_xxx_springmvc` VALUES ('200', '5.数据绑定-2', '', '@ModelAttribute(\"accountmodel\") AccountModel accountModel,', null);
INSERT INTO `t_xxx_springmvc` VALUES ('201', '5.数据绑定-2', '', ' 不用写:model.addAttribute(\"accountmodel\", accountModel);', null);
INSERT INTO `t_xxx_springmvc` VALUES ('202', '5.数据绑定-2', '6.@SessionAttributes', '把数据存储到session中,来保持多次请求间数据,这样就可以来实现比如分步骤提交表单等需求。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('203', '5.数据绑定-2', '', '1.在DataBindController上添加:@SessionAttributes(value = \"sessionaccountmodel\")', null);
INSERT INTO `t_xxx_springmvc` VALUES ('204', '5.数据绑定-2', '', '2.防止出错:@ModelAttribute(\"sessionaccountmodel\")public AccountModel initAccountModel(){', null);
INSERT INTO `t_xxx_springmvc` VALUES ('205', '5.数据绑定-2', '', ' return new AccountModel(); }', null);
INSERT INTO `t_xxx_springmvc` VALUES ('206', '5.数据绑定-2', '', '3.在@ModelAttribute(“xxx”)注解的参数会直接在@SessionAttributes中查找名为”xxx”的对象', null);
INSERT INTO `t_xxx_springmvc` VALUES ('207', '5.数据绑定-2', '', '4.如果没有找到则调用@ModelAttribute(“xxx”)注解的方法返回对象并存入@SessionAttributes', null);
INSERT INTO `t_xxx_springmvc` VALUES ('208', '5.数据绑定-2', '', ' 如果没有找到且没有@ModelAttribute(“xxx”)注解的方法就会抛出HttpSessionRequiredException', null);
INSERT INTO `t_xxx_springmvc` VALUES ('209', '4.数据绑定-1', '', '即第二步的操作的作用就是为了防止抛出:HttpSessionRequiredException', null);
INSERT INTO `t_xxx_springmvc` VALUES ('210', '4.数据绑定-1', '', '5.当执行到最后一步就可以调用SessionStatus .setComplete()方法把@SessionAttributes中保存对象销毁了(不会清除HttpSession中的数据)。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('211', '4.数据绑定-1', ' 注意点:', '1.@SessionAttributes有value和types两个参数其中value指明要对象的名称,types指定要绑定对象的类型', null);
INSERT INTO `t_xxx_springmvc` VALUES ('212', '4.数据绑定-1', '', ' 如@SessionAttributes(value = \"sessionaccountmodel\", types=AccountModel.class)', null);
INSERT INTO `t_xxx_springmvc` VALUES ('213', '4.数据绑定-1', '', '两者是and关系,需要同时满足。也可以同时指定多个value和types 如:', null);
INSERT INTO `t_xxx_springmvc` VALUES ('214', '4.数据绑定-1', '', ' @SessionAttributes(value = {\"aa\", \"aa\"} , types={XXX.class, YYY.class}) ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('215', '4.数据绑定-1', '7.@RequestBody', '调用合适的MessageConvert来把非application/x-www-form-urlencoded请求中的内容转换为指定的对象', null);
INSERT INTO `t_xxx_springmvc` VALUES ('216', '4.数据绑定-1', '', ' 它通常与@ResponseBody合用,@ResponseBody与.@RequestBody刚好相反,', null);
INSERT INTO `t_xxx_springmvc` VALUES ('217', '4.数据绑定-1', '', '他把指定的对象转换为合适的内容(请求头为Accept:application/json 则返回json数据)并返回。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('218', '4.数据绑定-1', ' 添加两个jar包:', '由于Spring默认解析json用的是Jackson,所以我们这里要把jackson-core-asl-1.9.13.jar和', null);
INSERT INTO `t_xxx_springmvc` VALUES ('219', '4.数据绑定-1', '', ' jackson-mapper-asl-1.9.13.jar两个包添加到我们项目。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('220', '4.数据绑定-1', '', '修改AccountModel让其继承Serializable接口,并添加一个空的构造函数(为了Jackson做转换)。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('221', '4.数据绑定-1', '8.@RequestPart', '绑定“multipart/form-data“类型数据,支持javax.servlet.http.Part文件上传,并可可以进行类型转换', null);
INSERT INTO `t_xxx_springmvc` VALUES ('222', '4.数据绑定-1', '', '本节课程结束。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('223', '6.SpringMVC-数据验证', '0.前情回顾', '在系列(4)、(5)中我们展示了如何绑定数据,绑定完数据之后如何确保我们得到的数据的正确性?', null);
INSERT INTO `t_xxx_springmvc` VALUES ('224', '6.SpringMVC-数据验证', '', ' 这就是我们本篇要说的内容 —> 数据验证。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('225', '6.SpringMVC-数据验证', '1.Hibernate验证', '我们采用Hibernate-validator来进行验证,Hibernate-validator实现了JSR-303验证框架支持注解风格的验证。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('226', '6.SpringMVC-数据验证', '', '1.首先我们要到http://hibernate.org/validator/下载需要的jar包,这里以4.3.1.Final作为演示,', null);
INSERT INTO `t_xxx_springmvc` VALUES ('227', '6.SpringMVC-数据验证', '', '2.解压后把hibernate-validator-4.3.1.Final.jar、jboss-logging-3.1.0.jar、validation-api-1.0.0.GA.jar这三个包', null);
INSERT INTO `t_xxx_springmvc` VALUES ('228', '6.SpringMVC-数据验证', '', ' 添加到项目中。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('229', '6.SpringMVC-数据验证', '', '3.配置之前项目中的springservlet-config.xml文件(spring配置文件)。', null);
INSERT INTO `t_xxx_springmvc` VALUES ('230', '6.SpringMVC-数据验证', '', '<!-- 默认的注解映射的支持 --> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('231', '6.SpringMVC-数据验证', '', '<mvc:annotation-driven validator=\"validator\" conversion-service=\"conversion-service\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('232', '6.SpringMVC-数据验证', '', '<bean id=\"validator\"', null);
INSERT INTO `t_xxx_springmvc` VALUES ('233', '6.SpringMVC-数据验证', '', ' class=\"org.springframework.validation.beanvalidation.LocalValidatorFactoryBean\">', null);
INSERT INTO `t_xxx_springmvc` VALUES ('234', '6.SpringMVC-数据验证', '', ' <property name=\"providerClass\" value=\"org.hibernate.validator.HibernateValidator\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('235', '6.SpringMVC-数据验证', '', ' <!--不设置则默认为classpath下的 ValidationMessages.properties -->', null);
INSERT INTO `t_xxx_springmvc` VALUES ('236', '6.SpringMVC-数据验证', '', ' <property name=\"validationMessageSource\" ref=\"validatemessageSource\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('237', '6.SpringMVC-数据验证', '', '</bean>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('238', '6.SpringMVC-数据验证', '', ' <bean id=\"conversion-service\" ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('239', '6.SpringMVC-数据验证', '', ' class=\"org.springframework.format.support.FormattingConversionServiceFactoryBean\" />', null);
INSERT INTO `t_xxx_springmvc` VALUES ('240', '6.SpringMVC-数据验证', '', '<bean id=\"validatemessageSource\" ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('241', '6.SpringMVC-数据验证', '', ' class=\"org.springframework.context.support.ReloadableResourceBundleMessageSource\"> ', null);
INSERT INTO `t_xxx_springmvc` VALUES ('242', '6.SpringMVC-数据验证', '', ' <property name=\"basename\" value=\"classpath:validatemessages\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('243', '6.SpringMVC-数据验证', '', ' <property name=\"fileEncodings\" value=\"utf-8\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('244', '6.SpringMVC-数据验证', '', ' <property name=\"cacheSeconds\" value=\"120\"/>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('245', '6.SpringMVC-数据验证', '', '</bean>', null);
INSERT INTO `t_xxx_springmvc` VALUES ('246', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('247', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('248', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('249', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('250', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('251', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('252', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('253', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('254', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('255', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('256', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('257', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('258', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('259', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('260', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('261', '6.SpringMVC-数据验证', '', '', null);
INSERT INTO `t_xxx_springmvc` VALUES ('262', '6.SpringMVC-数据验证', '', '', null);