Java/Hibernate/Config Generation
Содержание
- 1 Generate Hibernate Config File: Set Dialect In Ant
- 2 Generate Hibernate Config File: Set URL in ANT
- 3 Generate Hibernate Config File: Set User Name And Password
- 4 Generate Hibernate Config File: Set Your Own Driver Class
- 5 Generate Hibernate Mapping File: Set Generator Class In Ant
- 6 Generate Mapping File And Hibernate Config File Automatically
Generate Hibernate Config File: Set Dialect In Ant
<source lang="java">
///////////////////////////////////////////////////////////////////////// <project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="dialet"> <property name="hibernate.dialect" value="yourdialet"/> <antcall target="hbm"/> </target>
<target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project>
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; /**
* An Address component, it"s not have its own identity. * */
public class Address implements Serializable {
private String streetAddress; private String city; private String state; private String zipCode; /** * @hibernate.property * @hibernate.column name="street_address" * @return */ public String getStreetAddress() { return streetAddress; } public void setStreetAddress(String streetAddress) { this.streetAddress = streetAddress;} /** * @hibernate.property * @hibernate.column name="city" * @return */ public String getCity() { return city; } public void setCity(String city) { this.city = city; } /** * @hibernate.property * @hibernate.column name="state" * @return */ public String getState() { return state; } public void setState(String state) { this.state = state; } /** * @hibernate.property * @hibernate.column name="zip_code" * @return */ public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; }
}
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; import java.util.Date; import java.util.Set; import java.util.LinkedHashSet; /**
* A persistant Hibernate object. * * @hibernate.class table="events" */
public class Event implements Serializable {
private Long id; private int duration; private String name; private Date startDate; private Location location; private Set speakers = new LinkedHashSet(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } /** * @hibernate.property column="name" * @return */ public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.property column="start_date" * @return */ public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } /** * @hibernate.property column="duration" * @return */ public int getDuration() { return duration; } public void setDuration(int duration) { this.duration = duration; } /** * @hibernate.many-to-one column="location_id" cascade="save-update" * @return */ public Location getLocation() { return location; } public void setLocation(Location location) { this.location = location; } /** * @hibernate.set cascade="save-update" * @hibernate.collection-key column="event_id" * @hibernate.collection-one-to-many class="Speaker" * @return */ public Set getSpeakers() { return speakers; } public void setSpeakers(Set speakers) { this.speakers = speakers; }
}
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; /**
* @hibernate.class table="locations" */
public class Location implements Serializable{
private Long id; private String name; private Address address = new Address(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.ruponent * @return */ public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address;}
}
</source>
Generate Hibernate Config File: Set URL in ANT
<source lang="java">
///////////////////////////////////////////////////////////////////////// <project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="url"> <property name="hibernate.connection.url" value="yourURL"/> <antcall target="hbm"/> </target>
<target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project>
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; /**
* @hibernate.class table="locations" */
public class Location implements Serializable{
private Long id; private String name; private Address address = new Address(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.ruponent * @return */ public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address;}
}
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; import java.util.Date; import java.util.Set; import java.util.LinkedHashSet; /**
* A persistant Hibernate object. * * @hibernate.class table="events" */
public class Event implements Serializable {
private Long id; private int duration; private String name; private Date startDate; private Location location; private Set speakers = new LinkedHashSet(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } /** * @hibernate.property column="name" * @return */ public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.property column="start_date" * @return */ public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } /** * @hibernate.property column="duration" * @return */ public int getDuration() { return duration; } public void setDuration(int duration) { this.duration = duration; } /** * @hibernate.many-to-one column="location_id" cascade="save-update" * @return */ public Location getLocation() { return location; } public void setLocation(Location location) { this.location = location; } /** * @hibernate.set cascade="save-update" * @hibernate.collection-key column="event_id" * @hibernate.collection-one-to-many class="Speaker" * @return */ public Set getSpeakers() { return speakers; } public void setSpeakers(Set speakers) { this.speakers = speakers; }
}
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; /**
* An Address component, it"s not have its own identity. * */
public class Address implements Serializable {
private String streetAddress; private String city; private String state; private String zipCode; /** * @hibernate.property * @hibernate.column name="street_address" * @return */ public String getStreetAddress() { return streetAddress; } public void setStreetAddress(String streetAddress) { this.streetAddress = streetAddress;} /** * @hibernate.property * @hibernate.column name="city" * @return */ public String getCity() { return city; } public void setCity(String city) { this.city = city; } /** * @hibernate.property * @hibernate.column name="state" * @return */ public String getState() { return state; } public void setState(String state) { this.state = state; } /** * @hibernate.property * @hibernate.column name="zip_code" * @return */ public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; }
}
</source>
Generate Hibernate Config File: Set User Name And Password
<source lang="java">
///////////////////////////////////////////////////////////////////////// <project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="user"> <property name="hibernate.connection.username" value="userName"/> <property name="hibernate.connection.password" value="passWord"/> <antcall target="hbm"/> </target>
<target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project>
</source>
Generate Hibernate Config File: Set Your Own Driver Class
<source lang="java">
///////////////////////////////////////////////////////////////////////// <project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="driver"> <property name="hibernate.connection.driver_class" value="yourDriverClass"/> <antcall target="hbm"/> </target>
<target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project>
</source>
Generate Hibernate Mapping File: Set Generator Class In Ant
<source lang="java">
/////////////////////////////////////////////////////////////////////////
<project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="hilo"> <property name="hibernate.id.value" value="hilo"/> <antcall target="hbm"/> </target>
<target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project> /////////////////////////////////////////////////////////////////////////
import java.io.Serializable; /**
* @hibernate.class table="locations" */
public class Location implements Serializable{
private Long id; private String name; private Address address = new Address(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.ruponent * @return */ public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address;}
}
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; import java.util.Date; import java.util.Set; import java.util.LinkedHashSet; /**
* A persistant Hibernate object. * * @hibernate.class table="events_with_dynamic_ids" */
public class EventWithDynamicId implements Serializable {
private Long id; private int duration; private String name; private Date startDate; private Location location; private Set speakers = new LinkedHashSet(); /** * @hibernate.id generator-class="${hibernate.id.value}" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } /** * @hibernate.property column="name" * @return */ public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.property column="start_date" * @return */ public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } /** * @hibernate.property column="duration" * @return */ public int getDuration() { return duration; } public void setDuration(int duration) { this.duration = duration; } /** * @hibernate.many-to-one column="location_id" cascade="save-update" * @return */ public Location getLocation() { return location; } public void setLocation(Location location) { this.location = location; } /** * @hibernate.set cascade="save-update" * @hibernate.collection-key column="event_id" * @hibernate.collection-one-to-many class="Speaker" * @return */ public Set getSpeakers() { return speakers; } public void setSpeakers(Set speakers) { this.speakers = speakers; }
}
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; import java.util.Date; import java.util.Set; import java.util.LinkedHashSet; /**
* A persistant Hibernate object. * * @hibernate.class table="events" */
public class Event implements Serializable {
private Long id; private int duration; private String name; private Date startDate; private Location location; private Set speakers = new LinkedHashSet(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } /** * @hibernate.property column="name" * @return */ public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.property column="start_date" * @return */ public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } /** * @hibernate.property column="duration" * @return */ public int getDuration() { return duration; } public void setDuration(int duration) { this.duration = duration; } /** * @hibernate.many-to-one column="location_id" cascade="save-update" * @return */ public Location getLocation() { return location; } public void setLocation(Location location) { this.location = location; } /** * @hibernate.set cascade="save-update" * @hibernate.collection-key column="event_id" * @hibernate.collection-one-to-many class="Speaker" * @return */ public Set getSpeakers() { return speakers; } public void setSpeakers(Set speakers) { this.speakers = speakers; }
}
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; /**
* An Address component, it"s not have its own identity. * */
public class Address implements Serializable {
private String streetAddress; private String city; private String state; private String zipCode; /** * @hibernate.property * @hibernate.column name="street_address" * @return */ public String getStreetAddress() { return streetAddress; } public void setStreetAddress(String streetAddress) { this.streetAddress = streetAddress;} /** * @hibernate.property * @hibernate.column name="city" * @return */ public String getCity() { return city; } public void setCity(String city) { this.city = city; } /** * @hibernate.property * @hibernate.column name="state" * @return */ public String getState() { return state; } public void setState(String state) { this.state = state; } /** * @hibernate.property * @hibernate.column name="zip_code" * @return */ public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; }
}
/////////////////////////////////////////////////////////////////////////
</source>
Generate Mapping File And Hibernate Config File Automatically
<source lang="java">
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; /**
* An Address component, it"s not have its own identity. * */
public class Address implements Serializable {
private String streetAddress; private String city; private String state; private String zipCode; /** * @hibernate.property * @hibernate.column name="street_address" * @return */ public String getStreetAddress() { return streetAddress; } public void setStreetAddress(String streetAddress) { this.streetAddress = streetAddress;} /** * @hibernate.property * @hibernate.column name="city" * @return */ public String getCity() { return city; } public void setCity(String city) { this.city = city; } /** * @hibernate.property * @hibernate.column name="state" * @return */ public String getState() { return state; } public void setState(String state) { this.state = state; } /** * @hibernate.property * @hibernate.column name="zip_code" * @return */ public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; }
}
///////////////////////////////////////////////////////////////////////// import java.io.Serializable; import java.util.Date; import java.util.Set; import java.util.LinkedHashSet; /**
* A persistant Hibernate object. * * @hibernate.class table="events" */
public class Event implements Serializable {
private Long id; private int duration; private String name; private Date startDate; private Location location; private Set speakers = new LinkedHashSet(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } /** * @hibernate.property column="name" * @return */ public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.property column="start_date" * @return */ public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } /** * @hibernate.property column="duration" * @return */ public int getDuration() { return duration; } public void setDuration(int duration) { this.duration = duration; } /** * @hibernate.many-to-one column="location_id" cascade="save-update" * @return */ public Location getLocation() { return location; } public void setLocation(Location location) { this.location = location; } /** * @hibernate.set cascade="save-update" * @hibernate.collection-key column="event_id" * @hibernate.collection-one-to-many class="Speaker" * @return */ public Set getSpeakers() { return speakers; } public void setSpeakers(Set speakers) { this.speakers = speakers; }
}
///////////////////////////////////////////////////////////////////////// <component
name="address" class="Address" > <property name="streetAddress" type="java.lang.String" update="true" insert="true" access="property" column="street_address" /> <property name="city" type="java.lang.String" update="true" insert="true" access="property" column="city" /> <property name="state" type="java.lang.String" update="true" insert="true" access="property" column="state" /> <property name="zipCode" type="java.lang.String" update="true" insert="true" access="property" column="zip_code" /> </component>
/////////////////////////////////////////////////////////////////////////
import java.io.Serializable; /**
* @hibernate.class table="locations" */
public class Location implements Serializable{
private Long id; private String name; private Address address = new Address(); /** * @hibernate.id generator-class="native" column="uid" * @return */ public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } /** * @hibernate.ruponent * @return */ public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address;}
}
///////////////////////////////////////////////////////////////////////// <project name="hibernate-tutorial" default="compile">
<property name="sourcedir" value="${basedir}/src"/> <property name="targetdir" value="${basedir}/build"/> <property name="librarydir" value="${basedir}/lib"/> <path id="libraries"> <fileset dir="${librarydir}"> <include name="*.jar"/> </fileset> </path> <target name="clean"> <delete dir="${targetdir}"/> <mkdir dir="${targetdir}"/> </target> <target name="compile" depends="clean, copy-resources"> <javac srcdir="${sourcedir}" destdir="${targetdir}" classpathref="libraries" debug="on"/> </target> <target name="copy-resources"> <copy todir="${targetdir}"> <fileset dir="${sourcedir}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target name="run" depends="compile"> <java classname="Main" fork="true" classpathref="libraries"> <classpath path="${targetdir}"/> <arg value="${action}"/> </java> </target> <target name="hbm" depends="compile"> <taskdef name="hibernatedoclet" classname="xdoclet.modules.hibernate.HibernateDocletTask" classpathref="libraries" /> <hibernatedoclet destdir="${targetdir}" verbose="true"> <fileset dir="${sourcedir}"> <include name="**/*.java"/> </fileset> <hibernate version="3.0"/> <hibernatecfg dialect="${hibernate.dialect}" jdbcUrl="${hibernate.connection.url}" driver="${hibernate.connection.driver_class}" userName="${hibernate.connection.username}" password="${hibernate.connection.password}" showSql="false" version="3.0" /> </hibernatedoclet> </target>
</project>
/////////////////////////////////////////////////////////////////////////
</source>