`
chenjingbo
  • 浏览: 459657 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hibernate对enum的持久化(使用annotation)

阅读更多
项目中用到了enum作为持久化对象的某个属性类型.我为了方便,就直接在数据库字段设置成varchar类型.数据库是mysql.但是在持久化的时候,hibernate会转换成int类型再存.我是想直接存.比如
public enum BatchJobState {
	NOT_START, // 未開始
	RUNNING, // 運行
	FINISHED, // 結束
	FAILED	// 失敗
}

我是想直接存 NOT_START ,这类的,但是hibernate就自动转成 1 , 2 ,3 .之类的.
网上查了些方法.无非是两种,一种是自己写UserType.这种方法很麻烦.不说了,我用的方法是第二种,使用annotation .具体的方法是
	@Enumerated(EnumType.STRING)
	private BatchJobState state;// 任务的执行状态

这么一句.搞定.
分享到:
评论

相关推荐

    HIbernate annotation使用手册

    ### Hibernate Annotation 使用手册详解 #### 一、概述 Hibernate 是一款非常流行的 ORM(Object Relational Mapping)框架,它能够简化 Java 应用程序与数据库之间的交互。为了更好地使用 Hibernate 进行开发,...

    Hibernate注解详解.pdf

    **实体Bean**是Hibernate框架中的核心概念之一,指的是那些被持久化的Java对象。在Hibernate中,通过使用`@Entity`注解来标记某个Java类,使其成为实体Bean。 ```java @Entity public class Flight implements ...

    自定义注解annotation及用法

    自定义注解允许开发者创建自己的标记来满足特定需求,比如代码生成、验证、持久化等。本文将深入探讨自定义注解的创建、使用及其在实际开发中的应用。 ### 1. 自定义注解的定义 自定义注解的定义以`@interface`...

    java反射例子 希望可以帮助大家

    反射在Java开发中广泛应用,特别是在框架如Spring和Hibernate中,它们利用反射进行依赖注入、数据持久化等任务。然而,反射也应谨慎使用,因为它可能破坏封装性,降低代码的可读性和性能,且可能导致安全问题。因此...

    2020老杜最新Java零基础进阶视频教程-注解课件

    - 在持久化框架中,如Hibernate,注解用于标记实体类和属性,简化对象关系映射。 - 在Spring框架中,注解用于配置依赖注入、事务管理等。 - 在测试中,JUnit的注解用于定义测试方法和测试套件。 6. **注解的保留...

    java面试,经典的八股文208题测试

    - Redis 的数据结构(字符串、哈希、列表、集合、有序集合),以及持久化机制。 - Redis 作为缓存和消息队列的使用场景。 18. **JVM** - 垃圾回收机制,如分代收集、Stop-the-world 事件。 - 类加载机制,双亲...

    深入体验Java+Web开发内幕-高级特性-高清扫描版

    - **WebSocket**:提供双向通信,实现持久化连接,提升实时应用性能。 - **过滤器(Filter)和监听器(Listener)**:在Web应用程序中用于拦截请求和响应,以及监听应用程序事件。 - **Spring Boot**:简化了Web...

    整理后java开发全套达内学习笔记(含练习)

    Annotation [java] 代码注释 [ænәu'teiʃәn] anonymous adj.匿名的[ә'nɒnimәs]'(反义:directly adv.直接地,立即[di'rektli, dai'rektli]) apply v.应用,适用 [ә'plai] application n.应用,应用程序 [,æ...

    JAVA常用英文

    瞬态,用于标记对象的某些状态不需要序列化,即在对象持久化时忽略这些状态的保存。 ### volatile 易失性,用于标记变量在多线程环境中可能会被不同线程同时访问和修改,确保线程间的可见性。 ### wrapper 包装...

    java词汇.txt

    - **用途**: 对象持久化、网络传输等。 以上是对Java常用词汇的一些基本介绍,这些词汇涵盖了Java编程的基础概念和技术要点,对于初学者来说是很好的入门资料。深入理解这些词汇及其背后的概念对于掌握Java编程语言...

    JavaAdvanced

    14. **JPA和Hibernate**:Java持久层API和其著名的实现,用于对象关系映射,简化数据库操作。 通过JavaAdvanced-master中的内容,学习者可以深入理解并实践这些高级特性,从而提升自己的Java编程能力,更好地应对...

Global site tag (gtag.js) - Google Analytics