Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我必须在springboot中使用POST方法(Restfull)在where子句中使用多个参数从MySQL数据库表中进行搜索?_Java_Mysql_Spring_Spring Boot_Spring Data Jpa - Fatal编程技术网

Java 我必须在springboot中使用POST方法(Restfull)在where子句中使用多个参数从MySQL数据库表中进行搜索?

Java 我必须在springboot中使用POST方法(Restfull)在where子句中使用多个参数从MySQL数据库表中进行搜索?,java,mysql,spring,spring-boot,spring-data-jpa,Java,Mysql,Spring,Spring Boot,Spring Data Jpa,MySQL数据库表: 类如下:问题是如何处理crud存储库中的对象,因为那里没有这样的现有函数。那么,如何覆盖现有的 @RequestMapping(value = "/find", method = RequestMethod.POST) @ResponseBody public User getUser(@RequestBody UserFormDto userForm) { Holder h = new Holder(); h.setName(userForm.getN

MySQL数据库表:

类如下:问题是如何处理crud存储库中的对象,因为那里没有这样的现有函数。那么,如何覆盖现有的

@RequestMapping(value = "/find", method = RequestMethod.POST)
@ResponseBody
public User getUser(@RequestBody  UserFormDto userForm) {
    Holder h = new Holder();
    h.setName(userForm.getName());
    h.setEmail(userForm.getEmail());
    return userRepository.findOne(h);//holder);

}


package hello;
public class Holder {   
private String name;
private String email;

public class Holder {   
private String name;
private String email;

public Holder(){

}
public Holder(String name, String email) {
    super();
    this.name = name;
    this.email = email;
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public String getEmail() {
    return email;
}
public void setEmail(String email) {
    this.email = email;
}}

UserFormDto将数据传递给持有者

package hello;
import javax.validation.constraints.Min;
import javax.validation.constraints.Pattern; 
import org.hibernate.validator.constraints.NotBlank;
import org.hibernate.validator.constraints.NotEmpty;


public class UserFormDto {
private String name;
private String email;

public UserFormDto(String name, String email) {
    super();
    this.name = name;
    this.email = email;
}

public UserFormDto() {
    super();
    // TODO Auto-generated constructor stub
}


public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public String getEmail() {
    return email;
}
public void setEmail(String email) {
    this.email = email;
}}



  package hello;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
public interface UserRepository extends CrudRepository<User, Long> {
//  User findOne(Holder h);}
包你好;
导入javax.validation.constraints.Min;
导入javax.validation.constraints.Pattern;
导入org.hibernate.validator.constraints.NotBlank;
导入org.hibernate.validator.constraints.NotEmpty;
公共类UserFormDto{
私有字符串名称;
私人字符串电子邮件;
public UserFormDto(字符串名称、字符串电子邮件){
超级();
this.name=名称;
this.email=电子邮件;
}
公共用户formdto(){
超级();
//TODO自动生成的构造函数存根
}
公共字符串getName(){
返回名称;
}
公共void集合名(字符串名){
this.name=名称;
}
公共字符串getEmail(){
回复邮件;
}
公用电子邮件(字符串电子邮件){
this.email=电子邮件;
}}
套餐你好;
导入org.springframework.data.jpa.repository.Query;
导入org.springframework.data.repository.crudepository;
公共接口UserRepository扩展了Crudepository{
//用户findOne(持有者h);}


现在我该如何使用Crudepository?任何帮助都将不胜感激。

Spring数据支持根据
Crudepository
中的方法名称自动生成查询(请参阅)

添加一个
findbyiandemail
方法,它应该可以工作(请注意,我看不到同时在id和另一个字段上搜索的意义,除非您的id不是PK):

public interface UserRepository扩展了crudepository{
列出findByIdAndEmail(长id,字符串电子邮件);
}

表格属性如下:id、姓名、电子邮件和我想根据id和姓名进行搜索。
public interface UserRepository extends CrudRepository<User, Long> {

    List<User> findByIdAndEmail(Long id, String email);

}