Spring Data JPA的@Entity注解

这篇具有很好参考价值的文章主要介绍了Spring Data JPA的@Entity注解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、示例说明

 rules\CouponTypeConverter.java

@Converter
public class CouponTypeConverter
        implements AttributeConverter<CouponType, String> {

    @Override
    public String convertToDatabaseColumn(CouponType couponCategory) {
        return couponCategory.getCode();
    }

    @Override
    public CouponType convertToEntityAttribute(String code) {
        return CouponType.convert(code);
    }
}

 entity/CouponTemplate.java

@Entity
@Builder
@EntityListeners(AuditingEntityListener.class)
@Table(name = "coupon_template")
public class CouponTemplate implements Serializable {


    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", nullable = false)
    private Long id;


    // 状态是否可用
    @Column(name = "available", nullable = false)
    private Boolean available;


    @Column(name = "name", nullable = false)
    private String name;


    @Column(name = "description", nullable = false)
    private String description;


    // 适用门店-如果为空,则为全店满减券
    @Column(name = "shop_id")
    private Long shopId;
    
    // 优惠券类型
    @Column(name = "type", nullable = false)
    @Convert(converter = CouponTypeConverter.class)
    private CouponType category;


    // 创建时间,通过@CreateDate注解自动填值(需要配合@JpaAuditing注解在启动类上生效)
    @CreatedDate
    @Column(name = "created_time", nullable = false)
    private Date createdTime;


    // 优惠券核算规则,平铺成JSON字段
    @Column(name = "rule", nullable = false)
    @Convert(converter = RuleConverter.class)
    private TemplateRule rule;


}

Spring JPA 包的标准注解,对数据库字段进行了映射,我挑几个关键注解说道一下。

1、Entity:声明了“数据库实体”对象,它是数据库 Table 在程序中的映射对象;

2、Table:指定了 CouponTemplate 对应的数据库表的名称;

3、ID/GeneratedValue:ID 注解将某个字段定义为唯一主键,GeneratedValue 注解指定了主键生成策略;

4、Column:指定了每个类属性和数据库字段的对应关系,该注解还支持非空检测、对 update 和 create 语句进行限制等功能;

5、CreatedDate:自动填充当前数据的创建时间;

6、Convert:如果数据库中存放的是 code、string、数字等等标记化对象,可以使用 Convert 注解指定一个继承自 AttributeConverter 的类,将 DB 里存的内容转化成一个 Java 对象。文章来源地址https://www.toymoban.com/news/detail-669366.html

到了这里,关于Spring Data JPA的@Entity注解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring Boot整合JPA和人大金仓(Kingbase8)数据库

    在开发Java应用程序时,使用JPA(Java Persistence API)可以方便地进行数据库操作。而人大金仓(Kingbase8)是一款基于国产化研发的关系型数据库。本文将介绍如何在Spring Boot项目中整合JPA和人大金仓数据库,并提供相关实例来演示使用方式。 在开始之前,请确保已经满足以下条

    2024年02月12日
    浏览(35)
  • oracle 19c容器数据库data dump数据泵传输数据(4)---网络传输

    Transporting a Database Over the Network: Example 这个的方式导入可以不需要传输dmp文件,我原本是想从11g导入到pdb2的,但是因为版本的原因,就直接实验从pdb1导入到pdb2吧。 这种方式和前面完全传输的方式类似,不需要事先在目标数据库创建相同的表空间,而且不也不用有导出数据文

    2024年01月18日
    浏览(41)
  • 构建高可用性数据库架构:深入探索Oracle Active Data Guard(ADG)

    随着企业数据规模的不断增长和业务的复杂化,数据库的高可用性和可靠性变得尤为重要。Oracle Active Data Guard(ADG)作为Oracle数据库提供的一种高可用性解决方案,在实时备份和灾难恢复方面发挥着重要作用。本文将深入探讨ADG的原理、配置步骤、优势以及故障处理方法,旨

    2024年04月15日
    浏览(40)
  • Spring Data Elasticsearch - 在Spring应用中操作Elasticsearch数据库

    Spring Data Elasticsearch为文档的存储,查询,排序和统计提供了一个高度抽象的模板。使用Spring Data ElasticSearch来操作Elasticsearch,可以较大程度的减少我们的代码量,提高我们的开发效率。 要使用Elasticsearch我们需要引入如下依赖: 还需要在配置文件中增加如下配置 类比于MyBat

    2024年02月14日
    浏览(37)
  • Spring Boot对接Oracle数据库

    最近学习了Oracle数据库,那么如何使用Spring Boot和MyBatis Plus对接Oracle数据库呢? 这就有了这篇随记,具体流程如下 创建一个空的Maven工程,导入如下依赖: tips:这里碰到一个坑,我本机适用的Oracle数据库版本是11g XE,所以要使用的驱动为ojdbc5/ojdbc6,不然连接老会失败。 在配

    2024年02月09日
    浏览(35)
  • 如何使用Spring Data JPA简化MySQL数据访问

    本篇文章是 “一起学习mysql” 系列的第五篇文章,本篇文章我们学习一下Spring Data JPA的使用,在开始学习器,我们先来了解一下什么是JPA。 JPA的全称是Java Persistence API,是J2EE中的一条规范,它标准化了数据持久化API。在上一篇文章中,我们了解了如何使用MyBatis进行MySQL数据

    2024年02月15日
    浏览(53)
  • 图数据库Neo4j学习四——Spring Data NEO

    如下所示,这是我们的一个实际的节点,我们以该节点为例,创建一个UserNode 如果出现以下错误 解决方法 :找到你安装neo4j的路径下的conf文件夹,neo4j.conf,找到 将前面的注释#去掉,然后重启neo4j,在重启项目即可。 通过接口创建User节点,老王 ,然后再neo4j中查询,看能否

    2024年02月13日
    浏览(28)
  • 图数据库Neo4j学习四Spring Data NEO

    如下所示,这是我们的一个实际的节点,我们以该节点为例,创建一个UserNode 如果出现以下错误 解决方法 :找到你安装neo4j的路径下的conf文件夹,neo4j.conf,找到 将前面的注释#去掉,然后重启neo4j,在重启项目即可。 通过接口创建User节点,老王 ,然后再neo4j中查询,看能否

    2024年02月11日
    浏览(32)
  • 基于Spring注解 + MyBatis + Servlet 实现数据库交换的小小Demo

    配置数据库连接信息 db.properties 配置web.xml 配置logback.xml配置文件 配置applicationContext.xml 里面的bean 配置myBatis核心配置文件mybatis-config.xml 创建实体类对象User 创建LoginServlet响应前端的数据 创建UserService 接口 创建UserMapper接口 创建UserServiceImpl 接口实现类 按照这样的方式进行拼接

    2024年02月02日
    浏览(73)
  • Spring Data JPA简化数据访问,提升开发效率和程序可维护性

    Java Persistence API(JPA)是一种Java EE的ORM规范用于与关系型数据库进行交互。它提供了Java对象模型和关系型数据库之间的映射。JPA为开发者提供了一种面向对象的方式来访问数据库,同时也减少了应用程序与底层数据库之间的重复代码。 Spring Data JPA是基于JPA规范的一个Spring

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包