Java/Hibernate/Config Generation

Материал из Java эксперт
Перейти к: навигация, поиск

Generate Hibernate Config File: Set Dialect In Ant

/////////////////////////////////////////////////////////////////////////
<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;}
}





Generate Hibernate Config File: Set URL in ANT

/////////////////////////////////////////////////////////////////////////
<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;    }
}





Generate Hibernate Config File: Set User Name And Password

/////////////////////////////////////////////////////////////////////////
<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>





Generate Hibernate Config File: Set Your Own Driver Class

/////////////////////////////////////////////////////////////////////////
<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>





Generate Hibernate Mapping File: Set Generator Class In Ant

/////////////////////////////////////////////////////////////////////////

<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;    }
}

/////////////////////////////////////////////////////////////////////////





Generate Mapping File And Hibernate Config File Automatically

/////////////////////////////////////////////////////////////////////////
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>

/////////////////////////////////////////////////////////////////////////