JPA 应用例子

/*********************************************************************

* TelnetLogon.java

*/

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

public class TelnetLogon { // implements Serializable {
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}

public String getLogonName() {
return logonName;
}
public void setLogonName(String logonName) {
this.logonName = logonName;
}

public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}

public boolean isAutoLogon() {
return isAutoLogon;
}
public void setAutoLogon(boolean isAutoLogon) {
this.isAutoLogon = isAutoLogon;
}
private int id;
private String logonName;
private String password;
private boolean isAutoLogon;
}

/*********************************************************************

* TelnetLogon.hbp.orm.xml

*/

<?xml version="1.0" encoding="UTF-8"?>
<orm:entity-mappings version="1.0"
xmlns:orm="http://java.sun.com/xml/ns/persistence/orm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm http://java.sun.com/xml/ns/persistence/orm_1_0.xsd ">
<orm:description>
description for entity TelnetLogon mapping
</orm:description>
<orm:persistence-unit-metadata>
<!--
<orm:xml-mapping-metadata-complete/>
<orm:persistence-unit-defaults>
<orm:schema>core</orm:schema>
<orm:catalog>core</orm:catalog>
</orm:persistence-unit-defaults>
-->
</orm:persistence-unit-metadata>
<orm:package>org.eastcom.sse.model</orm:package>
<!--
<orm:schema>core</orm:schema>
<orm:catalog>core</orm:catalog>
-->
<orm:access>PROPERTY</orm:access>
<orm:entity class="TelnetLogon">
<orm:description>
description of definitions the settings and mappings for entity TelnetLogon
</orm:description>
<orm:table name="TELNET_LOGON">
<orm:unique-constraint>
<orm:column-name>LOGON_NAME</orm:column-name>
</orm:unique-constraint>
</orm:table>
<orm:attributes>
<orm:id name="id">
<orm:column name="LOGON_ID" column-definition="PK"/>
<orm:generated-value strategy="AUTO"/>
</orm:id>
<orm:basic name="logonName">
<orm:column name="LOGON_NAME" insertable="true" length="26" nullable="false" unique="true"/>
</orm:basic>
<orm:basic name="password">
<orm:column name="LOGON_PASSWD" insertable="true" nullable="false" updatable="true"/>
</orm:basic>
<orm:basic name="autoLogon">
<orm:column name="ISAUTO_LOGON" insertable="true" nullable="true" updatable="true"/>
</orm:basic>
</orm:attributes>
</orm:entity>
</orm:entity-mappings>

/***********************************************************************

* persistence.xml

*/

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ">
<persistence-unit name="core"
transaction-type="RESOURCE_LOCAL">
<description>description for persistence unit core</description>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<mapping-file>
org/jd/sse/model/SshLogon.hbp.orm.xml
</mapping-file>
<mapping-file>
org/jd/sse/model/TelnetLogon.hbp.orm.xml
</mapping-file>
<mapping-file>
META-INF/hbp.orm.xml
</mapping-file>
<!--
<class>org.eastcom.sse.model.TelnetLogon</class>
-->
<properties>
<property name="hibernate.connection.driver_class"
value="com.mysql.jdbc.Driver"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="jxcoco1128"/>
<property name="hibernate.connection.url"
value="jdbc:mysql://localhost:3306/core"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.dialect"
value="org.hibernate.dialect.MySQL5Dialect"/>
<property name="hibernate.hbm2ddl.auto"
value="create"/>
</properties>
</persistence-unit>
</persistence>

/***********************************************************************

* HibernateTelnetLogonJpaDao.java

*/

public class HibernateTelnetLogonJpaDao {
private EntityManager createEntityManager() {
EntityManagerFactory emFactory =
Persistence.createEntityManagerFactory("core");
return emFactory.createEntityManager();
}

public void persist(Object entity) {
EntityManager eManager = createEntityManager();

EntityTransaction etx = eManager.getTransaction();
etx.begin();

eManager.persist(entity);

etx.commit();
eManager.close();
}
}

/***********************************************************************

* HibernateTelnetLogonJpaDaoTest .java

*/

public class HibernateTelnetLogonJpaDaoTest {
private static HibernateTelnetLogonJpaDao dao;

@BeforeClass
public static void setUpBeforeClass() {
dao = new HibernateTelnetLogonJpaDao();
}

@Test
public void persist() {
TelnetLogon l = new TelnetLogon();
l.setLogonName("corev2");
l.setPassword("core1234");
l.setAutoLogon(true);
dao.persist(l);
}
}

你可能感兴趣的:(Hibernate,xml,mysql,orm,jpa)