`
bf1977
  • 浏览: 18185 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用Spring jdbctemplate做排序的查出数据顺序与数据库不一致的问题

阅读更多
最近在项目中使用jdbctemplate的queryForList()方法查询时发现在view层获取返回的json格式数据时顺序是乱的,而在数据库中单独执行对应的查询sql却是排好序的。
开始以为是fastjson转换时导致的,后来跟踪发现在queryForList返回的List里面就已经是乱序的了。尝试过用RowMapper以及linkedList对结果集重新进行封装,发现还是不行。
最后终于找到原因了,原来是传参数的方式导致的(拼接后sql里面的排序字段有引号导致排序不正常)。
之前对sql语句中的排序字段及顺序采用问号方式传参,比如:
queryForList("select a,b,c from t where d=? order by ? ?",new Object[]{1,"a","asc"});
后来改成把order by 后面的参数直接在sql中拼好再调用就好了,比如:
queryForList("select a,b,c from t where d=? order by "+para1+"+" para2",new Object[]{1});
para1、para2为调用方法时传入的排序字段明和顺序的变参。
分享到:
评论

相关推荐

    SpringJdbcTemplate封装工具类

    使用SpringJdbcTemplate进行数据库操作通常涉及以下步骤: - 创建SpringJdbcTemplate实例,注入DataSource。 - 调用对应的方法,如`update()`执行更新操作,`queryForObject()`或`query()`执行查询操作,传入SQL...

    spring-jdbcTemplate实例工程

    在这个实例工程中,我们将深入探讨Spring JdbcTemplate的基本使用、优势以及常见操作。 一、Spring JdbcTemplate简介 Spring JdbcTemplate的出现是为了弥补原生JDBC在编码上的繁琐,它通过模板方法模式,将SQL执行...

    基于注解的Spring JdbcTemplate

    使用Spring JdbcTemplate 在服务层或者控制器中,我们可以依赖注入`UserRepository`,然后直接调用其方法执行数据库操作。例如: ```java @Service public class UserService { private final UserRepository ...

    strut2+spring+springjdbctemplate做的简易登录系统

    同时,Spring还可以配置事务管理策略,确保数据库操作的一致性。例如,在登录失败(如密码错误)时,如果开启事务管理,所有相关的数据库操作都会被回滚,保持数据的完整性。 Struts2的配置文件(struts.xml)会...

    Spring JDBCTemplate连接池jar包

    在实际使用Spring JDBCTemplate时,我们需要以下步骤: 1. 配置数据源:在Spring配置文件中声明一个DataSource bean,通常会注入连接池配置。 2. 创建JdbcTemplate实例:使用数据源创建JdbcTemplate实例,作为与...

    Spring JdbcTemplate 常用方法整理

    Spring的JdbcTemplate是Spring框架中用于简化数据库操作的工具类,它是基于JDBC但又抽象出了一层,避免了直接与数据库驱动API交互,从而提高了代码的可读性和可维护性。本文将深入探讨Spring JdbcTemplate的常用方法...

    Druid数据库连接池的SpringJDBCTemplate所需的jar包

    Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,Druid数据库连接池的SpringJDBCTemplate所需的jar包,...

    Spring JdbcTemplate

    **Spring JdbcTemplate**是Spring框架中的一个核心组件,主要用于简化Java数据库访问。它提供了一种模板化的方式来执行SQL语句,使得开发人员可以避免编写大量的重复代码,专注于业务逻辑,而不是底层的数据库交互...

    Spring Boot多数据源(JdbcTemplate)配置与使用

    通过以上步骤,我们成功地在Spring Boot应用中配置了多数据源,并使用了`JdbcTemplate`进行数据库操作。这个过程的关键在于正确配置数据源,创建并注入相应的`JdbcTemplate` bean,然后在业务逻辑中选择合适的数据源...

    Spring JdbcTemplate查询实例

    Spring JdbcTemplate是Spring框架中用于简化数据库操作的一个重要组件,它是Spring对JDBC的轻量级封装,旨在提供一种结构良好、易于使用的SQL执行机制,同时保持了JDBC的灵活性。在本实例中,我们将深入探讨Spring ...

    Spring JdbcTemplate调用Oracle存储过程实现CRUD

    使用 Spring JdbcTemplate 调用 Oracle 存储过程实现 CRUD 在本文中,我们将讨论如何使用 Spring JdbcTemplate 调用 Oracle 存储过程来实现 CRUD(Create、Read、Update、Delete)操作。我们将首先编写 Oracle 存储...

    使用Spring JDBCTemplate进行增删改查curd操作

    在Spring框架中,JdbcTemplate是用于简化数据库操作的重要工具,它是Spring JDBC模块的一部分。通过使用JdbcTemplate,开发者可以...通过熟练掌握JdbcTemplate的使用,开发者可以更高效地构建与数据库交互的Java应用。

    使用Spring的JdbcTemplate实现分页功能

    使用Spring的JdbcTemplate实现分页功能

    spring的jdbcTemplate小案例

    JdbcTemplate是Spring提供的一种数据库操作工具,它简化了数据库访问,使开发者能够编写出更健壮、更易于维护的代码,避免了手动处理JDBC连接、预编译SQL语句等繁琐任务。 首先,我们来理解一下JdbcTemplate的基本...

    Spring JdbcTemplate api

    在Spring框架中,`JdbcTemplate`是一个用于简化JDBC编程的工具类,它采用了模板模式来分离数据库访问中的不变和可变部分,提供了一种更加健壮且易于使用的数据访问机制。`JdbcTemplate`负责处理资源的获取、关闭以及...

    Spring JdbcTemplate例子

    使用Spring JdbcTemplate的第一步是创建一个JdbcTemplate实例。这通常通过Spring的IoC容器(依赖注入)完成,将DataSource配置到JdbcTemplate中。例如: ```java @Autowired private DataSource dataSource; @Bean...

    模仿spring jdbcTemplate的实现

    模仿spring jdbcTemplate的粗略实现,只有很小的参考价值,如果是java初学者可以使用这个封装好的工具进行数据库操作,只需要在db.properties里配置好driver,url等信息

    简单介绍如何使用Spring Boot使用JdbcTemplate与MySQL进行数据库操作

    在本文中,我们将深入探讨如何使用Spring Boot集成JdbcTemplate与MySQL数据库进行数据操作。Spring Boot以其简化配置和快速启动的特点,已经成为Java开发者的首选框架。而JdbcTemplate是Spring框架的一部分,它提供...

    spring jdbcTemplate 源码

    使用Spring JDBCTemplate的基本步骤如下: 1. 引入Spring JDBC依赖。 2. 配置DataSource,这是JDBCTemplate获取数据库连接的基础。 3. 创建JdbcTemplate实例,通常通过ApplicationContext获取。 4. 调用JdbcTemplate...

    Spring JdbcTemplate.batchUpdate 例子

    总之,`Spring JdbcTemplate.batchUpdate`是处理批量数据库操作的强大工具,它可以提高效率,减少与数据库的交互次数。然而,正确地使用它需要对事务管理、异常处理和性能优化有深入的理解。通过合理的配置和良好的...

Global site tag (gtag.js) - Google Analytics