⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tuplizer.java

📁 一个Java持久层类库
💻 JAVA
字号:
// $Id: Tuplizer.java 10119 2006-07-14 00:09:19Z steve.ebersole@jboss.com $package org.hibernate.tuple;import org.hibernate.HibernateException;/** * A tuplizer defines the contract for things which know how to manage * a particular representation of a piece of data, given that * representation's {@link org.hibernate.EntityMode} (the entity-mode * essentially defining which representation). * </p> * If that given piece of data is thought of as a data structure, then a tuplizer * is the thing which knows how to<ul> * <li>create such a data structure appropriately * <li>extract values from and inject values into such a data structure * </ul> * </p> * For example, a given piece of data might be represented as a POJO class. * Here, it's representation and entity-mode is POJO.  Well a tuplizer for POJO * entity-modes would know how to<ul> * <li>create the data structure by calling the POJO's constructor * <li>extract and inject values through getters/setter, or by direct field access, etc * </ul> * </p> * That same piece of data might also be represented as a DOM structure, using * the tuplizer associated with the DOM4J entity-mode, which would generate instances * of {@link org.dom4j.Element} as the data structure and know how to access the * values as either nested {@link org.dom4j.Element}s or as {@link org.dom4j.Attribute}s. * * @see org.hibernate.tuple.entity.EntityTuplizer * @see org.hibernate.tuple.component.ComponentTuplizer * * @author Steve Ebersole */public interface Tuplizer {	/**	 * Extract the current values contained on the given entity.	 *	 * @param entity The entity from which to extract values.	 * @return The current property values.	 * @throws HibernateException	 */	public Object[] getPropertyValues(Object entity) throws HibernateException;	/**	 * Inject the given values into the given entity.	 *	 * @param entity The entity.	 * @param values The values to be injected.	 * @throws HibernateException	 */	public void setPropertyValues(Object entity, Object[] values) throws HibernateException;	/**	 * Extract the value of a particular property from the given entity.	 *	 * @param entity The entity from which to extract the property value.	 * @param i The index of the property for which to extract the value.	 * @return The current value of the given property on the given entity.	 * @throws HibernateException	 */	public Object getPropertyValue(Object entity, int i) throws HibernateException;	/**	 * Generate a new, empty entity.	 *	 * @return The new, empty entity instance.	 * @throws HibernateException	 */	public Object instantiate() throws HibernateException;		/**	 * Is the given object considered an instance of the the entity (acconting	 * for entity-mode) managed by this tuplizer.	 *	 * @param object The object to be checked.	 * @return True if the object is considered as an instance of this entity	 *      within the given mode.	 */	public boolean isInstance(Object object);	/**	 * Return the pojo class managed by this tuplizer.	 * </p>	 * Need to determine how to best handle this for the Tuplizers for EntityModes	 * other than POJO.	 * </p>	 * todo : be really nice to not have this here since it is essentially pojo specific...	 *	 * @return The persistent class.	 */	public Class getMappedClass();}

⌨️ 快捷键说明

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