`
woshixushigang
  • 浏览: 575827 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

spring mvc 自己遇到的几个错误

 
阅读更多
where 1=1  and t.name like '%"话题"%'

 项目采用spring mvc 框架,dao 层 封装数据采用 

 

private BeanPropertyRowMapper<TopicVO> topicRowMapper = new BeanPropertyRowMapper<TopicVO>(TopicVO.class);

 会自动将 bean 属性与 sql 参数匹配,并加上 ""

 

where 1=1  and t.name like '%:name%'

 结果就是

 

where 1=1  and t.name like '%"话题"%'

 所以会 查询不出来结果。解决方案:自己拼装 或者采用 

 

 

MapSqlParameterSource paramSource = new MapSqlParameterSource();

paramSource.addValue("name", name);

 

再或者:

 

 public int countSearchKey(String key) {
        String sql = "SELECT count(1) FROM bb_app.weibo_metrics_view WHERE instr(duid, '-1')>0 AND upper(content) LIKE :key AND isHidden!=1 AND status!=1";
        MapSqlParameterSource msps = new MapSqlParameterSource();
        msps.addValue("key", "%" + key.toUpperCase() + "%");
        return this.namedJdbcTemplate.queryForInt(sql, msps);
    }
 

sping mvc 注解方式验证 @Valid 会先拦截 绑定bean 的错误信息,如:string 不能转换称int 类型等等。

如果不加@Valid 会遇到刚才说的 转型失败问题。

而且会自动把前端传来的非法值转换。如:int id 前端传a 遇到 @Valid 时候会 将错误信息放到 BdingResult里面,并将id设置默认值为0。但是有一点要注意:必须加上BindingResult result才能接收到错误信息,不会直接throw errors

 

再一个就是@Valid不会 对多个空格进行空判断,需要手工判断。默认多个空格按照不为空处理。

分享到:
评论

相关推荐

    springmvc01.zip_DEMO_JSON校验_spring mvc

    可以从以下几个步骤入手: - 理解MVC设计模式及其在Spring MVC中的体现。 - 学习如何配置Spring MVC项目,包括web.xml、servlet-context.xml等配置文件。 - 掌握Controller的编写,理解@RequestMapping、@...

    解决spring mvc JSON 无限死循环

    在开发基于Spring MVC的应用程序时,经常会遇到将对象转换为JSON格式的需求。然而,在某些情况下,由于对象之间的循环引用,可能会导致JSON序列化过程中出现无限递归的问题,进而引发StackOverflowError异常。本文将...

    javaspring整合错误

    在这个问题中,开发者遇到了在整合Spring、Spring MVC和MyBatis时遇到404错误,这通常意味着Web服务器无法找到预期的资源,即请求的页面或服务未被正确地部署或配置。 首先,我们需要理解Spring和Spring MVC的关系...

    ToDo:探索性 Spring MVC

    "ToDo:探索性 Spring MVC"这个标题暗示我们正在讨论一个使用Spring MVC实现的待办事项(ToDo)应用程序,其中遇到了关于URL路径的问题。描述中的“为什么路径显示为 toDo_Project,而不是 /(home?)”提出了一个...

    jackson-core-asl-1.9.13+jackson-mapper-asl-1.9.13jar包.

    在开发基于Spring MVC的Web应用时,我们常常会遇到数据传输的问题,特别是在处理RESTful API时,使用`@ResponseBody`注解将Java对象转换为JSON格式返回给客户端。然而,有时候这种转换过程中可能会出现错误,比如...

    spring-5.2.8.RELEASE-dist.zip

    在Spring 5.2.8.RELEASE中,以下几个方面有所提升: 1. **反应式编程支持**:Spring 5引入了对反应式编程的支持,通过Spring WebFlux模块,开发者可以创建非阻塞的、基于事件驱动的应用。这在高并发场景下能显著...

    第二课:通过MVC原理,自定义MVC框架实现1

    这通常包括以下几个步骤: 1. 创建DispatcherServlet的实现,负责请求分发。 2. 实现HandlerMapping接口,将请求映射到对应的处理器。 3. 实现HandlerAdapter接口,处理控制器方法的调用。 4. 配置异常处理和拦截器...

    Spring MVC 注解自动扫描失效原因分析

    总结起来,Spring MVC注解扫描失效可能由以下几个原因造成: 1. 没有正确配置`&lt;context:component-scan&gt;`,特别是没有包含@Controller的过滤器。 2. 缺失`&lt;mvc:annotation-driven/&gt;`,导致Spring MVC无法识别和处理...

    smartphone.rar

    总的来说,Spring MVC是一个强大且广泛应用的Web开发框架,但在特定情况下可能会遇到挑战。解决这些问题通常需要深入理解Spring MVC的工作原理,检查并修正配置,以及根据具体需求调整设计和架构。

    springbind BindStatus

    以下是 `BindStatus` 中几个重要的属性及其用法: 1. `${status.expression}`: 这个属性返回绑定对象属性的名称,例如,如果你的表单有一个名为 "username" 的字段,那么 `${status.expression}` 将返回 "username...

    spring boot xsl

    通常,这涉及到以下几个知识点: 1. **Spring Boot与XML配置**:Spring Boot默认推崇的是基于Java的配置,但它也支持XML配置。开发者可以通过`@ImportResource`注解来引入XML配置文件。 2. **XSLT处理**:Spring ...

    扩展SpringMVC以支持更精准的数据绑定1

    总结一下,扩展Spring MVC的数据绑定涉及到以下几个关键点: 1. 自定义类型转换器以处理特定类型的数据。 2. 实现自定义验证器以满足复杂的业务规则验证。 3. 使用`HandlerMethodArgumentResolver`自定义参数解析...

    spring boot 异常处理方案

    通过分析GitHub上的开源项目(https://github.com/chanjarster/spring-mvc-error-handling-example),我们可以学习到以下几个重要的知识点: 1. **全局异常处理器**:Spring Boot允许我们定义全局异常处理器,通常...

    郁闷了,一个最简单的Spring小程序都没搞定

    在详细解释这些知识点时,我们可以探讨以下几个方面: 1. **依赖注入(DI)**:Spring的核心特性之一,通过容器管理对象及其依赖关系,使得代码更易于测试和维护。 2. **Spring Bean的生命周期**:包括初始化、...

    ssh整合时遇到常见错误 ContextLoaderListener not found 解决

    这个错误通常出现在尝试启动基于Spring MVC的Web应用程序时,因为它无法找到用于初始化Spring应用上下文的监听器。 `ContextLoaderListener`是Spring框架的一部分,它负责在Web应用启动时加载并管理Spring的应用上...

    详解poi+springmvc+springjdbc导入导出excel实例

    具体到代码层面,文章中提到了几个关键的文件名,如import.go和export.go,它们很可能是指控制器中的方法,负责处理导入和导出的逻辑。成功页面(success.jsp)则展示了操作的结果,通过JSP页面和EL表达式来显示从...

    mybatis与spring整合中文版

    在"MyBatis 与 Spring 整合中文版"的文档中,主要涵盖了以下几个核心知识点: 1. **整合背景**:在Java Web开发中,MyBatis与Spring的结合可以避免直接操作JDBC,提高代码的可读性和可维护性。Spring通过管理...

    使用springmvc整合ajax请求demo代码示例

    在Spring MVC中,整合Ajax请求通常涉及以下几个步骤: 1. **创建Controller**:首先,你需要创建一个Spring MVC Controller来处理Ajax请求。Controller方法通常会有一个`@RequestMapping`注解,用于定义HTTP请求的...

    spring注解出现中文乱码

    根据题目中的描述,“Spring注解json传值,界面出现中文乱码”,结合给定的部分内容,可以明确几个关键点: 1. **Spring框架使用注解处理JSON数据**:这通常涉及到`@RestController`或`@Controller`配合`@...

Global site tag (gtag.js) - Google Analytics