第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

x如何使用 Spring Data JPA 在 Spring 中為 CrudRepository

x如何使用 Spring Data JPA 在 Spring 中為 CrudRepository

暮色呼如 2023-05-24 17:38:20
@RepositoryRestResource問(wèn)題是我在使用for my UserRepositorythat extends 時(shí)遇到異常JpaRepository。原因是默認(rèn)情況下findById只接受Long或類型,即使我有Int@Id String id;而不是@Id Int id在我的實(shí)體定義中。我嘗試搜索 StackOverflow 和 Google,但沒(méi)有找到任何解決方案。錯(cuò)誤信息如下:"Failed to convert from type [java.lang.String] to type [java.lang.Integer] for value '3175433272470683'; nested exception is java.lang.NumberFormatException: For input string: \"3175433272470683\""我想讓它與@Id String id;有什么建議么?非常感謝預(yù)付款。很榮幸能在這里提問(wèn)。實(shí)體類:@Entity // This tells Hibernate to make a table out of this class@Table(name = "users")public class XmppUser {    @Id    private java.lang.String username;    private String password;    private String serverkey;    private String salt;    private int iterationcount;    private Date created_at;    //    @Formula("ST_ASTEXT(coordinates)")//    @Column(columnDefinition = "geometry")//    private Point coordinates;    //    private Point coordinates;    private String full_name;    @OneToOne(fetch = FetchType.LAZY)    @JoinColumn(name = "username", nullable = true)    private XmppLast xmppLast;
查看完整描述

4 回答

?
瀟湘沐

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超6個(gè)贊

您必須更改存儲(chǔ)庫(kù)中 ID 類型參數(shù)的類型,以匹配實(shí)體上的 id 屬性類型。


來(lái)自 Spring 文檔:


Interface Repository<T,ID>

Type Parameters:

  T - the domain type the repository manages    

  ID - the type of the id of the entity the repository manages

基于


@Entity // This tells Hibernate to make a table out of this class

@Table(name = "users")

public class XmppUser {

    @Id

    private java.lang.String username;

    //...


    }

它應(yīng)該是


public interface UserRepository extends CrudRepository<XmppUser, String> {

    //..

    }


查看完整回答
反對(duì) 回復(fù) 2023-05-24
?
jeck貓

TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個(gè)贊

我認(rèn)為有一種方法可以解決這個(gè)問(wèn)題。

比方說(shuō),Site 是我們的@Entity。

@Id
private String id;

getters setters

然后你可以調(diào)用 findById 如下

 Optional<Site> site = getSite(id);

注意:這對(duì)我有用,我希望它能幫助別人。


查看完整回答
反對(duì) 回復(fù) 2023-05-24
?
一只斗牛犬

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊

你可以嘗試這樣的事情:


@Id

@GeneratedValue(generator = "uuid")

@GenericGenerator(name = "uuid", strategy = "uuid2")

@Column(name = "PR_KEY")

private String prKey;

查看完整回答
反對(duì) 回復(fù) 2023-05-24
?
慕妹3146593

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊

JpaRepository 是 CrudRepository 的特例。JpaRepository 和 CrudRepository 都聲明了兩個(gè)類型參數(shù),T 和 ID。您將需要提供這兩種類類型。例如,


public interface UserRepository extends CrudRepository<XmppUser, java.lang.String> {

//..

}

或者


public interface UserRepository extends JpaRepository<XmppUser, java.lang.String> {

//..

}

請(qǐng)注意,第二種類型java.lang.String必須與主鍵屬性的類型相匹配。在這種情況下,您不能將其指定為Stringor Integer,而是指定為java.lang.String。


盡量不要將自定義類命名為String. 使用與 JDK 中已經(jīng)存在的類名相同的類名是一種不好的做法。


查看完整回答
反對(duì) 回復(fù) 2023-05-24
  • 4 回答
  • 0 關(guān)注
  • 200 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)