序列化问题:Java对象持久化和反序列化实例
在Java中,对象的持久化指的是将Java对象的状态保存到持久存储介质(如数据库、文件系统等)的过程。反序列化则是将这种持久化后的状态恢复为可以操作的Java对象。
以下是一个简单的例子:
- 对象持久化:
```java
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Person {
@Id
private String id;
private String name;
// getters and setters
}
```java
EntityManagerFactory emf = ... // 获取实体管理工厂
EntityManager entityManager = emf.createEntityManager();
// 创建或找到Person对象
Person person = new Person();
person.setId("123456");
person.setName("John Doe");
entityManager.getTransaction().begin();
entityManager.persist(person);
entityManager.getTransaction().commit();
entityManager.close();
- 反序列化:
```java
// 从数据库中恢复Person对象
EntityManagerFactory emf = … // 获取实体管理工厂
EntityManager entityManager = emf.createEntityManager();
String id = “123456”;
Person person = entityManager.find(Person.class, id));
entityManager.close();
```
以上就是Java对象持久化和反序列化的简单示例。
还没有评论,来说两句吧...