`

使用save保存游离态对象获取其id

阅读更多

我使用的数据库是mysql,

1,在entity类的id处添加注解

    

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int id;

 2,在数据库建表时,写上auto_increment

  

CREATE TABLE  t_user 
(
	id  int auto_increment primary key,

 

自己试了试1和2缺一不可,

分享到:
评论

相关推荐

    hibernate小结

    1. 对于游离态对象,执行save()操作时,如果对象已有ID,Hibernate会尝试执行UPDATE操作,而非INSERT。 2. 对于瞬态对象,直接调用update()会因找不到ID而抛出异常。 3. saveOrUpdate()方法:根据对象状态自动选择...

    测试实体对象的生命周期

    3. **查询对象**:通过Session的`get()`或`load()`方法,或者使用HQL(Hibernate Query Language)查询语句,从数据库中获取持久态对象。 4. **修改对象**:在持久态,可以直接修改对象的属性,这些修改将在提交...

    hibernate 学习笔记3

    - **游离态 → 持久态**:使用`session.update()`或`session.saveOrUpdate`方法将游离态对象重新纳入Session管理。 #### Hibernate操作优化 Hibernate通过缓存机制优化数据库操作,避免不必要的SQL执行。例如,`...

    三大框架的工作原理借鉴.pdf

    - **加载(Load)/获取(Get)**:根据ID从数据库中获取持久态对象。 - **删除(Delete)**:移除持久态对象与数据库的关联,对象变为游离态。 5. **查询语言**: Hibernate支持HQL(Hibernate Query Language)...

    hibernate入门实例

    - **Create(创建)**: 使用`Session.save()`或`Session.persist()`方法保存新对象到数据库。 - **Read(读取)**: 通过`Session.get()`或`Session.load()`获取特定ID的对象,或使用`Session.createQuery()`执行...

    hibernate教程

    Hibernate将实体分为瞬时态、持久态、游离态和脱管态四种状态,理解这些状态有助于更好地掌握对象的生命周期。 12. **Hibernate事件和监听器** Hibernate支持事件监听机制,允许在特定操作前后执行自定义逻辑,如...

    Hibernate全部笔记

    4. **状态转换**:瞬时态、持久态、游离态和删除态,理解对象状态有助于正确操作。 **九、性能优化** 1. **批处理**:批量插入、更新和删除,减少数据库交互次数。 2. **缓存配置**:合理设置缓存策略,避免频繁的...

    hibernate的java教学代码

    4. **对象的保存和检索**:`save()`方法用来保存新对象到数据库,而`load()`或`get()`则用于根据主键获取已有对象。此外,`update()`和`delete()`分别用于更新和删除对象。 5. **查询**:Hibernate提供HQL和...

    Hibernate培训笔记.

    Hibernate将实体状态分为瞬时态、持久态和游离态,理解这些状态有助于正确处理实体的生命周期。例如,新创建的实体是瞬时态,调用session.save()后变为持久态。 通过以上内容的学习,你可以掌握Hibernate的基本用法...

    Hibernate 资料

    4. **加载(Load)/ 获取(Get)**: 根据ID获取持久态对象。 5. **查询(Query)**: 使用HQL(Hibernate Query Language)或Criteria API进行复杂查询。 **六、缓存机制** 1. **一级缓存(First-Level Cache)**: ...

    Hibernate快速入门

    - **Create(创建)**: 使用`Session.save()`或`Session.persist()`方法将对象保存到数据库。 - **Read(读取)**: 使用`Session.get()`或`Session.load()`获取对象,或使用`Session.createQuery()`或`Session....

    javaweb方向面试宝典

    - 游离态:曾被持久化,但当前不再处于Session缓存中,对象的更改不会自动同步。 4. **三种检索策略**: - 立即检索:对象在需要时立即加载,适合小规模数据,但可能导致过多的数据库查询。 - 延迟检索:只在...

    Hibernate 备忘

    Hibernate 将对象分为四种状态:瞬时态、持久态、托管态和游离态。理解这些状态对于正确使用 Hibernate 很关键,特别是对象的保存、更新和删除操作。 11. **实体关系映射** Hibernate 支持多种对象关系映射策略,...

    深入浅出Hibernate

    14. **状态转换**: 对象有瞬时态、持久态、游离态和删除态四种状态,理解这些状态有助于正确使用Hibernate并避免潜在问题。 15. **实体的生命周期**: 通过Session的save(), persist(), merge(), update()和delete()...

    hibernate笔记

    - **游离态**:对象曾被Session管理,但现在Session已经关闭的状态。 #### 八、HQL查询示例 为了进行数据库查询,Hibernate提供了HQL(Hibernate Query Language),这是一种类似于SQL的查询语言,但更接近于面向...

    hibernate4.1中文api

    - **加载和存储对象**: 使用Session的`save()`方法保存对象,使用`get()`或`load()`方法加载对象。 ##### 1.2 第二部分 - 映射关联 - **映射Person类**: 示例演示如何映射简单的Java类到数据库表。 - **单向基于...

    SSH 面试题

    当Session关闭(如调用`session.close()`)之后,Session中的所有持久化对象将变为游离态(Detached)。 #### 22. Hibernate中映射文件<hibernate-mapping> inverse属性和cascade属性的区别 - **inverse**属性:...

Global site tag (gtag.js) - Google Analytics