当前位置: 首页 > 知识库问答 >
问题:

Spring Boot REST API MySQL项目-内部服务器错误,状态500

司马同
2023-03-14

编辑:

发现问题。。。

我在MySQL数据库中为表“Bookings”创建了一个Bookings类(模型类),该类中的所有数据成员都是根据数据库表设置的。

当我试图查找“booking_name”的所有预订时,出现了问题,下面分别是BookingsRepository和bookings类,

package com.example.demo.bookings;

import org.springframework.data.jpa.repository.JpaRepository;

public interface BookingsRepository extends JpaRepository<Bookings, Integer>{

    Iterable<Bookings> findAllByBooking_Name(String booking_name);

}
package com.example.demo.bookings;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class Bookings {
    
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    int booking_id;
    String booking_name;
    int booking_pid;
    int passengers;
    double cost;
    
    public Bookings() {
        
    }
    
    public Bookings(int booking_id, String booking_name, int booking_pid, int passengers, double cost) {
        super();
        this.booking_id = booking_id;
        this.booking_name = booking_name;
        this.booking_pid = booking_pid;
        this.passengers = passengers;
        this.cost = cost;
    }

    public int getBooking_id() {
        return booking_id;
    }

    public void setBooking_id(int booking_id) {
        this.booking_id = booking_id;
    }

    public String getBooking_name() {
        return booking_name;
    }

    public void setBooking_name(String booking_name) {
        this.booking_name = booking_name;
    }

    public int getBooking_pid() {
        return booking_pid;
    }

    public void setBooking_pid(int booking_pid) {
        this.booking_pid = booking_pid;
    }

    public int getPassengers() {
        return passengers;
    }

    public void setPassengers(int passengers) {
        this.passengers = passengers;
    }

    public double getCost() {
        return cost;
    }

    public void setCost(double cost) {
        this.cost = cost;
    }
    
}

我尝试将字段“booking_name”更改为“bookingName”,但它随机化了JSON输出中字段的顺序,因此POST方法返回错误。

这是我得到的错误

Error creating bean with name 'bookingsController': Unsatisfied dependency expressed through field 'bs'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'bookingsService': Unsatisfied dependency expressed through field 'bookingRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'bookingsRepository' defined in com.example.demo.bookings.BookingsRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.lang.Iterable com.example.demo.bookings.BookingsRepository.findAllByBooking_Name(java.lang.String); Reason: Failed to create query for method public abstract java.lang.Iterable com.example.demo.bookings.BookingsRepository.findAllByBooking_Name(java.lang.String)! No property 'booking' found for type 'Bookings'; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.lang.Iterable com.example.demo.bookings.BookingsRepository.findAllByBooking_Name(java.lang.String)! No property 'booking' found for type 'Bookings'

共有2个答案

夏立果
2023-03-14

数据库中下划线分隔的字段通常映射到类中的camelCase字段。Bookings类中的字段名应为bookingName,存储库方法签名应为:

Iterable<Bookings> findAllByBookingName(String bookingName);

对于Bookings类中的所有其他字段相同。

单于轶
2023-03-14

在您的TopicService中,您尝试自动装配TopicsRepository,但您没有任何类型为TopicsRepository的bean。

添加以下注释:

@Repository
public interface TopicsRepository extends CrudRepository<Topics, String>{

}
 类似资料:
  • 这是我从mysql数据库中删除数据的代码,我得到了这个错误。 在我选择名称并尝试提交后...它给我这个错误 HTTP状态500-内部服务器错误 类型异常报告 Message内部服务器错误 描述服务器遇到内部错误,无法满足此请求。 例外 组织。阿帕奇。贾斯珀。JaspereException:java。lang.NumberFormatException:空根本原因 JAVAlang.NumberF

  • 当我尝试使用JSP运行我的Web应用程序(基本CRUD)时,GlassFish服务器返回以下消息: HTTP状态500-内部服务器错误 类型异常报告 消息内部服务器错误 说明服务器遇到内部错误,无法满足此请求。 例外 java.lang.NullPointerException 注意GlassFish Server Open Source Edition 4.1日志中提供了异常及其根本原因的完整堆

  • 下面是我的一部分。jsp。 下面是我的错误: HTTP状态500–内部服务器错误 类型异常报告 消息在行[20]处处理[/home.jsp]时发生异常 说明服务器遇到意外情况,无法满足请求。 例外组织。阿帕奇。贾斯珀。JasperException:在第[20]行处理[/home.jsp]时发生异常 17:这是添加信息页 18: Stacktrace:org。阿帕奇。贾斯珀。servlet。Jsp

  • 当我尝试使用JSP运行我的Web应用程序时,GlassFish服务器返回以下消息: 我不知道该怎么办。我认为这个错误与找不到javax有关。servlet。jsp。jstl。glassfish服务器中的jar库

  • 我想知道这是否与Eclipse安装到权限有关,或者可能与项目结构有关?有人有线索吗?也许我应该寻找一个容器映像或其他东西来尝试在其上构建?多谢了。

  • 我正试图通过Axios在本地发送一个POST请求,其中包含用户名和密码。 我正在部署一个Flask应用程序http://127.0.0.1:5000/login,它处理/login路由。POST请求失败,出现以下错误 我研究了一点,认为这可能是CORS的问题,但情况似乎并非如此,因为我尝试了一个Axios GET请求,它工作正常(响应记录正确)。这是我的部分代码 查看ChromeDevTools,