当前位置: 首页 > 工具软件 > Persistence4J > 使用案例 >

小型Java持久层框架 Persistence4J

井修雅
2023-12-01

简介:

persistence4j 是一个小型、轻量级的 Java 对象持久层类库,实现关系数据库和 Java 对象之间的持久化。要JDK1.6 以上版本

 

实例:

//First lets create a simple pojo which you like to persist.
@Entity(table="book")
public class Book{
@Column(isPrimaryKey=true)
private String isbn;
@Column
private String title;
@Column
private int authorid;
public Book(){

}
public Book(String isbn, String title, int authorid){
  this.isbn = isbn;
  this.title = title;
  this.authorid = authorid;
}
// getters
}

DataProviderFactory dataProviderFactory = new DataProviderFactoryImpl(config);
String databaseName = "library";
String dbmsName = "mysql"
boolean isTransactional = false;
DataProvider dataProvider =  dataProviderFactory.getDataProvider(databaseName, dbmsName, isTransactional);

// Now lets create a object of Book class and persist it
Book book = new Book("123432","TestBook",5);
TransferUtil.registerClass(Book.class, database);
GenericDAO<Book> genericDAO = new GenericDaoImpl<Book>(dataProvider.getDataFetcher());

//Persist Book
genericDAO.createEntity(book);

//Remove Book
genericDAO.deleteEntity(book);

//Test if Entity Exists
genericDAO.isEntityExists(book);

// findByPrimaryKey
Object obj[] = new Object[1];
obj[0] = "123432";
genericDAO.findByPrimaryKey(Book.class, obj);

//If you want to use transactions.This how to get TransactionService.Make sure //isTransactional variable should be true and underlying dbms supports ACID.
TransactionService ts = dataProvider.getTransactionService();
try{
    ts.beginTransaction();
    genericDAO.createEntity(book);
    ts.commitTransaction();
}catch(Exception exp){
ts.rollbackTransaction();
}

 

项目地址:http://code.google.com/p/persistence4j/

 类似资料: