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

如果没有主键,则使用spring data jpa存储库

仲孙文乐
2023-03-14
package com.mf.acrs.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

@Entity
@Table(name="mv_garage_master")
public class GarageMaster {

    @Column(name="GARAGE_CODE")
    private String garageCode;

    @Column(name="GARAGE_NAME")
    private String garageName;

    @Column(name="GARAGE_BRANCH")
    private String garageBranch; 


}
package com.mf.acrs.repository;

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

import com.mf.acrs.model.GarageMaster;

@Repository
public interface GarageMasterRepository extends JpaRepository<GarageMaster,ID>{
}

我的问题是,在上面的接口中,ID应该有什么值…

共有1个答案

阚亮
2023-03-14

因此,实体、JPA和Spring数据需要您具有ID,这是如何找到或更新实体的。

[更新]@丁丁如果garageCode根据你的评论是唯一的,你可以这样实现:

@Entity
@Table(name="mv_garage_master")
public class GarageMaster implements Serializable {
    @Id
    @Column(name="GARAGE_CODE")
    private String garageCode;

    @Column(name="GARAGE_NAME")
    private String garageName;

    @Column(name="GARAGE_BRANCH")
    private String garageBranch; 
}

和存储库:

@Repository
public interface GarageMasterRepository extends JpaRepository<GarageMaster,String>{
}
 类似资料:
  • 我正在使用100个实体(使用JHipster)设置一个新的Spring Boot API,我的问题是:鉴于我有一组存储库层方法,我希望我的所有存储库都能够调用这些方法。 我已经尝试制作所有接口来扩展('RepositoryQuery'是我默认的自定义接口名称后缀),然后使用特定于实体的类。请注意,所有的类扩展了一个泛型实现类,名为。 请注意,给定正则表达式中的“.*”代表我的持久实体集中的任何实体

  • 问题内容: 如果该 对 不存在,如何插入一行? *注意这些不是主键,我的主键设置为自动增量, 尝试插入时忽略但不起作用 表格看起来像: 问题答案: 1)您可以在上添加约束吗?如果是,请添加此约束并使用: 并忽略产生警告(或将替换为) 2)如果您不能添加这样的约束(例如,有时您希望允许这样的重复项而其他时候则不允许),则可以使用以下方法:

  • Firebase存储使用490 MB,但尚未初始化存储桶。我无法跟踪这个存储com从哪里来,但是检查Firebase对一个空存储收取0.10美元的费用是很奇怪的。 我在哪里可以删除此存储?为什么firebase因没有存储桶而收费? 目前我正在使用Firebase身份验证、Firestore、实时数据库、主机和其他功能。

  • 我的问题是:当我使用活动存储时,如何从URL上传图像。我在Stackoverflow中使用了来自其他帖子的代码,但传递了model方法,即我需要存储在表中的param。奇怪的是,我收到了下一个错误: 但是当我从这个模型重新加载show视图时,图像显示为存储并部署在我的posts视图中。 在这里我的代码后模型: 这是我在控制器的编辑操作中的代码: 我得到了以下链接,其中谈到了从URL上传图像的机会,

  • 问题内容: 我在使用Find()方法的行中得到以下异常(缺少主键) “表没有主键。” 我已经重新检查了数据库,所有主键列均已正确设置。 我的代码: 问题答案: 您需要在调用 Find* 之前设置 DataTable 对象的 PrimaryKey 属性。 ***

  • 目前 我在DynamoDB中有一个表,其中有一个属性-主键-包含唯一的值。 问题 我希望对#B#C#(1)精确匹配和(2)包含匹配进行2次搜索,因此只需要结果: 是否可以针对主键进行这2次搜索 如果是这样,运行哪种查询最有效?e、 g.查询或扫描 注: 对于(2),我使用以下代码,但它返回DB中的所有项: