数据库|使用DTO进行查询时错误注意

简介: 数据库|使用DTO进行查询时错误注意

1 前言

在一次的springboot项目中,使用DTO对数据库的两张表进行查询时,启动项目,控制台就会报关于这个方法的错误,这是怎么回事呢?下面来看看


2 控制台报错

下面是当项目启动时控制台报出错误:

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'quesstionController': Unsatisfied dependency expressed through field 'questionService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'questionServiceImpl': Unsatisfied dependency expressed through field 'questionRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'questionRepository': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract org.springframework.data.domain.Page com.coolwen.experimentplatform.dao.QuestionRepository.findAndUname(org.springframework.data.domain.Pageable)!


如下面图2.1~图2.4,依次报错为Controller层,Impl实现类,model层,直到最后的查找方法。

图 2.1

图 2.2

图 2.3

图 2.4


3 问题原因

出现这个问题是什么原因呢?先来看下DTO,将两张表里所需的字段写出来,没什么问题。

图 3.1

接着是查找方法和查询语句,看起来也没什么问题。

图 3.2

但是经过检查测试,发现在model层里,给字段取了别名,而不是与数据库一致的名字,与查询语句写的名字不一样,这就导致出现了错误。

图 3.3

4 问题解决

最后修改一下查询语句里的别名,就可以正常启动了:

图4.1

图 4.2


目录
相关文章
|
16天前
|
SQL 数据库
LangChain-09 Query SQL DB With RUN GPT 查询数据库 并 执行SQL 返回结果
LangChain-09 Query SQL DB With RUN GPT 查询数据库 并 执行SQL 返回结果
29 2
|
11天前
|
SQL Java 数据库连接
如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
【10月更文挑战第6天】在代码与逻辑交织的世界中,我从一名数据库新手出发,通过不断探索与实践,最终成为熟练掌握JDBC的开发者。这段旅程充满挑战与惊喜,从建立数据库连接到执行SQL语句,再到理解事务管理和批处理等高级功能,每一步都让我对JDBC有了更深的认识。示例代码展示了如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
47 5
|
14天前
|
SQL 存储 安全
SQL查询数据库:基础概念与操作指南
在数字化时代,数据库已成为信息管理的重要工具之一。作为管理和操作数据库的核心语言,SQL(结构化查询语言)已成为数据管理和查询的关键技能。本文将全面介绍SQL查询数据库的基本概念、语句和操作指南,以帮助初学者快速上手,同时为进阶用户提供有价值的参考。一、数据库与SQL简介数据库是一种存储、管理和检索
27 3
|
15天前
|
SQL 存储 缓存
SQL数据库查询详解
数据库是现代信息社会的基石,它们存储和管理着大量的数据。而SQL(StructuredQueryLanguage)作为一种强大的数据库查询语言,广泛应用于各种数据库系统中。本文将详细介绍SQL数据库查询的基本概念、语法、常用操作以及优化策略。一、SQL数据库查询概述SQL是一种用于管理关系数据库的标
67 3
|
16天前
|
存储 SQL 关系型数据库
MySQL查询数据库锁表的SQL语句
MySQL查询数据库锁表的SQL语句
50 1
|
1月前
|
SQL 关系型数据库 MySQL
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
课程分类查询、课程新增、统一异常处理、统一封装结果类、JSR303校验、修改课程、查询课程计划、新增/修改课程计划
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
|
1月前
|
前端开发 应用服务中间件 API
|
29天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
99 5
|
10天前
|
SQL Go 数据库
【速存】深入理解Django ORM:编写高效的数据库查询
【速存】深入理解Django ORM:编写高效的数据库查询
29 0
|
13天前
|
存储 SQL 数据库
深入理解数据库索引:提升查询性能的关键
数据库索引是优化查询性能的重要工具。本文将带你深入探索索引的内部结构和工作原理,揭示如何通过合理使用索引来加速数据库查询,同时避免常见的索引陷阱。