简体   繁体   English

spring开机查询,这是怎么回事?

[英]spring boot query , what's wrong with this?

I'm trying to get data from db based on multiple conditions and I'm getting exception error: "The string starts a quoted range at 69, but never ends it"我正在尝试根据多个条件从 db 获取数据,但出现异常错误:“字符串从 69 开始引用范围,但从不结束”

@Query("SELECT u FROM User u WHERE (u.name = ?1 and u.status= ?2)")
List<User> findUsers(String name, String status);

//at controller

@GetMapping("active")
    public List<User> findUsers()
    {
        String name= "Ali";
        String status = "ACT";
        return repository.findUsers(name, status);
    }

You parameter are not mapping properly.您的参数未正确映射。 Map the parameter using @Param Map 参数使用@Param

@Query("SELECT u FROM User u WHERE (u.name = :name and u.status= :status)")
List<User> findUsers(@Param("name") String name, @Param("status") String status);

Or或者

Use the order of method parameters in the method declaration在方法声明中使用方法参数的顺序

@Query("SELECT u FROM User u WHERE (u.name = ?1 and u.status= ?2)")
List<User> findUsers(String name, String status);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM