这篇文章是接着“第一个spring程序来写的”,只是在这上面加了一些补充简单的使用了下hql
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="org.lxh.vo">
<class name="StudentInfo" table="m_student">
<id name="fid" column="fid">
<generator class="increment"/>
</id>
<property name="username" column="username"/>
<property name="password" column="password"/>
</class>
</hibernate-mapping>
前面的东西一样,只需在junit里加一下代码就可以了,代码如下所示
package org.lxh.test;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.lxh.util.HibernateUtil;
import org.lxh.vo.StudentInfo;
public class TestUnit {
@org.junit.Test
public void add() {
Session session = null;
Transaction tra = null;
// 通过工具类取得session
try {
session = HibernateUtil.getSession();
tra = session.beginTransaction();
StudentInfo info = new StudentInfo();
info.setPassword("123456");
info.setUsername("潘玮柏");
session.save(info);
tra.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (session != null) {
session.close();
}
}
}
@org.junit.Test
public void delete() {
Session session = null;
Transaction tra = null;
// 通过工具类取得session
try {
session = HibernateUtil.getSession();
tra = session.beginTransaction();
StudentInfo info = new StudentInfo();
info.setFid(1);
session.delete(info);
tra.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (session != null) {
session.close();
}
}
}
@org.junit.Test
public void update() {
Session session = null;
Transaction tra = null;
// 通过工具类取得session
try {
session = HibernateUtil.getSession();
tra = session.beginTransaction();
StudentInfo info = new StudentInfo();
info.setFid(3);
info.setPassword("12345");
info.setUsername("蔡依林");
session.update(info);
tra.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (session != null) {
session.close();
}
}
}
@org.junit.Test
public void updatePassword() {
Session session = null;
Transaction tra = null;
// 通过工具类取得session
try {
session = HibernateUtil.getSession();
tra = session.beginTransaction();
Query q=session.createQuery("update StudentInfo set username=? where fid=?");
q.setString(0, "刘若英");
q.setInteger(1, 3);
q.executeUpdate();
tra.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (session != null) {
session.close();
}
}
}
}