为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的findOne方法不能传id当参数

只能传个Example对象作参数 而且返回值是optional类型的 怎么回事啊

正在回答

3 回答

//通过id查询女生的方法
@GetMapping(value = "/girls/{id}")
public Girl getGirl(@PathVariable("id") Integer id ){
    return girlRepository.findOne(id);
}

//定义的接口
public interface GirlRepository extends JpaRepository<Girl,Integer> {
    //通过年龄来查询
    public List<Girl> findByAge(Integer age);
}
findOne方法应该是默认使用注入的bean的主键来查询,可以看一下实体类那个@id是不是加上了,下面是我的bean
package com.imooc.demo.bean;

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

@Entity
public class Girl {

    @Id
    @GeneratedValue
    private Integer id;

    private String cupSize;

    private Integer age;

    public Girl(){

    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getCupSize() {
        return cupSize;
    }

    public void setCupSize(String cupSize) {
        this.cupSize = cupSize;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}


1 回复 有任何疑惑可以回复我~
#1

fenkapian 提问者

非常感谢!
2018-01-30 回复 有任何疑惑可以回复我~
#2

风过泪落雪飘 回复 fenkapian 提问者

你的可以?我的还是不行
2018-03-05 回复 有任何疑惑可以回复我~
#3

fenkapian 提问者 回复 风过泪落雪飘

我是直接在GirlRepository里写个按id查找girl的方法才好的 Girl findGirlById(Integer id);
2018-03-05 回复 有任何疑惑可以回复我~
#4

慕娘9428916 回复 fenkapian 提问者

我也是 不知道他们写 的 findOne 是什么 我的findOne 貌似不能这么用
2018-03-22 回复 有任何疑惑可以回复我~
#5

煮茶温书 回复 慕娘9428916

girlRepository.findById(id).get();
2018-04-09 回复 有任何疑惑可以回复我~
#6

ali是个小太阳 回复 fenkapian 提问者

对的,因为版本不同,所以对应的方法也不同
2018-05-16 回复 有任何疑惑可以回复我~
查看3条回复

emmm 我是改了 pom.xml 里的 

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
    <relativePath/> 
</parent>

的版本   好像 2.0.2.RELEASE  就是不行 不知道求大佬指点

0 回复 有任何疑惑可以回复我~

客气啦

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
2小时学会Spring Boot
  • 参与学习       151599    人
  • 解答问题       1079    个

Spring Boot入门视频教程,你将学会使用Spring Boot快速构建应用程序

进入课程

为什么我的findOne方法不能传id当参数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信