functiondao.java

来自「struts2 spring2.5 jpa hibernate 权限管理系统源代」· Java 代码 · 共 98 行

JAVA
98
字号
package sunyang.functions.dao;

import java.util.List;

import javax.persistence.*;

import sunyang.functions.domain.Function;
import sunyang.persistence.EntityManagerHelper;

public class FunctionDAO implements IFunctionDAO {
	// 声明静态常量
	public static final String URL = "url";
	public static final String FUNCTIONNAME = "functionname";

	// 得到实体管理器
	private EntityManager getEntityManager() {
		return EntityManagerHelper.getEntityManager();
	}

	// 新增数据
	public void save(Function entity) {
		EntityManagerHelper.beginTransaction();
		try {
			getEntityManager().persist(entity);
			EntityManagerHelper.commit();
		} catch (RuntimeException re) {
			EntityManagerHelper.rollback();
			throw re;
		}
	}

	// 删除数据
	public void delete(Function entity) {
		EntityManagerHelper.beginTransaction();
		try {
			entity = getEntityManager().getReference(Function.class,
					entity.getId());
			getEntityManager().remove(entity);
			EntityManagerHelper.commit();
		} catch (RuntimeException re) {
			EntityManagerHelper.rollback();
			throw re;
		}
	}

	// 修改数据
	public Function update(Function entity) {
		EntityManagerHelper.beginTransaction();
		try {
			Function result = getEntityManager().merge(entity);
			EntityManagerHelper.commit();
			return result;
		} catch (RuntimeException re) {
			EntityManagerHelper.rollback();
			throw re;
		}
	}

	// 通过id查询数据
	public Function findById(Integer id) {
		try {
			Function instance = getEntityManager().find(Function.class,
					id);
			return instance;
		} catch (RuntimeException re) {
			throw re;
		}
	}

	// 通过表中一个字段查询数据
	@SuppressWarnings("unchecked")
	public List<Function> findByProperty(String propertyName,
			final Object value) {
		try {
			final String queryString = "select model from Function model where model."
					+ propertyName + "= :propertyValue";
			Query query = getEntityManager().createQuery(queryString).setHint(
					"toplink.refresh", true);
			query.setParameter("propertyValue", value);
			return query.getResultList();
		} catch (RuntimeException re) {
			throw re;
		}
	}

	// 查询所有数据
	@SuppressWarnings("unchecked")
	public List<Function> findAll() {
		try {
			final String queryString = "select model from Function model";
			Query query = getEntityManager().createQuery(queryString).setHint(
					"toplink.refresh", true);
			return query.getResultList();
		} catch (RuntimeException re) {
			throw re;
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?