实体类:MembersInfo
package entity; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.SequenceGenerator; import javax.persistence.Table; /** * MembersInfo 实体类及注解 */ @Entity @Table public class MembersInfo { @Id @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="seq_membersinfo") @SequenceGenerator(sequenceName="seq_membersinfo",name="seq_membersinfo",initialValue=1,allocationSize=1) private int mid;//会员编号 @Column private String mname;//会员姓名 @Column private String mgender;//会员性别 @Column private int mage;//会员年龄 @Column private String maddress;//家庭住址 @Column private String memail;//电子邮件 /* * 构造方法 * */ public MembersInfo() { } public MembersInfo(String mname, String mgender, int mage, String maddress, String memail) { this.mname = mname; this.mgender = mgender; this.mage = mage; this.maddress = maddress; this.memail = memail; } public MembersInfo(int mid, String mname, String mgender, int mage, String maddress, String memail) { this.mid = mid; this.mname = mname; this.mgender = mgender; this.mage = mage; this.maddress = maddress; this.memail = memail; } /* * 封装方法 * */ public int getMid() { return mid; } public void setMid(int mid) { this.mid = mid; } public String getMname() { return mname; } public void setMname(String mname) { this.mname = mname; } public String getMgender() { return mgender; } public void setMgender(String mgender) { this.mgender = mgender; } public int getMage() { return mage; } public void setMage(int mage) { this.mage = mage; } public String getMaddress() { return maddress; } public void setMaddress(String maddress) { this.maddress = maddress; } public String getMemail() { return memail; } public void setMemail(String memail) { this.memail = memail; } }
测试类:Test
package test; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import entity.MembersInfo; import util.HibernateSessionFactory; public class Test { public static void main(String[] args) { /* * List<MembersInfo> membersInfos = getMembersInfoByPage(2, 3); for * (MembersInfo membersInfo : membersInfos) { * System.out.println(membersInfo * .getMid()+" "+membersInfo.getMaddress()); } */ /* * MembersInfo membersInfo = getMembersInfoByMid(2); * System.out.println(membersInfo * .getMid()+" "+membersInfo.getMaddress()); */ MembersInfo membersInfo = new MembersInfo(2, "何开6", "男", 18, "新凤凰直街18号", "[email protected]"); update(membersInfo); } private static void update(MembersInfo membersInfo) { Session session = HibernateSessionFactory.getSession(); Transaction tx = null; try { tx = session.beginTransaction(); session.update(membersInfo); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); } finally { HibernateSessionFactory.closeSession(); } } private static MembersInfo getMembersInfoByMid(int mid) { Session session = HibernateSessionFactory.getSession(); String hql = "from MembersInfo where mid=:mid"; Query query = session.createQuery(hql); query.setInteger("mid", mid); MembersInfo membersInfo = (MembersInfo) query.uniqueResult(); HibernateSessionFactory.closeSession(); return membersInfo; } private static List<MembersInfo> getMembersInfoByPage(int pageIndex, int pageSize) { Session session = HibernateSessionFactory.getSession(); String hql = "from MembersInfo"; Query query = session.createQuery(hql); query.setFirstResult((pageIndex - 1) * pageSize); query.setMaxResults(pageSize); List<MembersInfo> membersInfos = query.list(); HibernateSessionFactory.closeSession(); return membersInfos; } }
数据访问层:MembersInfoDao 和 MembersInfoDaoImpl
package dao; import java.util.List; import org.hibernate.HibernateException; import entity.MembersInfo; /** * MembersInfo 数据访问层接口 * */ public interface MembersInfoDao { //列表分页 public List<MembersInfo> getMembersInfoByPage(int pageIndex, int pageSize) throws HibernateException; //根据 mid 查询会员信息 public MembersInfo getMembersInfoByMid(int mid) throws HibernateException; //修改数据 public void update(MembersInfo membersInfo) throws HibernateException; }
package dao.impl; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import util.HibernateSessionFactory; import dao.MembersInfoDao; import entity.MembersInfo; /** * MembersInfo 数据访问层实现 * */ public class MembersInfoDaoImpl implements MembersInfoDao { //列表分页 public List<MembersInfo> getMembersInfoByPage(int pageIndex, int pageSize) throws HibernateException{ Session session = HibernateSessionFactory.getSession(); String hql = "from MembersInfo"; Query query = session.createQuery(hql); query.setFirstResult((pageIndex - 1) * pageSize); query.setMaxResults(pageSize); List<MembersInfo> membersInfos = query.list(); HibernateSessionFactory.closeSession(); return membersInfos; } //根据 mid 查询会员信息 public MembersInfo getMembersInfoByMid(int mid) throws HibernateException{ Session session = HibernateSessionFactory.getSession(); String hql = "from MembersInfo where mid=:mid"; Query query= session.createQuery(hql); query.setInteger("mid", mid); MembersInfo membersInfo = (MembersInfo) query.uniqueResult(); HibernateSessionFactory.closeSession(); return membersInfo; } //修改数据 public void update(MembersInfo membersInfo) throws HibernateException{ Session session = HibernateSessionFactory.getSession(); Transaction tx = null; try { tx = session.beginTransaction(); session.update(membersInfo); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } } }
业务逻辑层:MembersInfoBiz 和 MembersInfoBizImpl
package biz; import java.util.List; import org.hibernate.HibernateException; import entity.MembersInfo; /** * MembersInfo 业务逻辑层接口 * */ public interface MembersInfoBiz { //列表分页 public List<MembersInfo> getMembersInfoByPage(int pageIndex, int pageSize) throws HibernateException; //根据 mid 查询会员信息 public MembersInfo getMembersInfoByMid(int mid) throws HibernateException; //修改数据 public void update(MembersInfo membersInfo) throws HibernateException; }
package biz.impl; import java.util.List; import org.hibernate.HibernateException; import dao.MembersInfoDao; import dao.impl.MembersInfoDaoImpl; import entity.MembersInfo; import biz.MembersInfoBiz; /** * MembersInfo 业务逻辑层实现 * */ public class MembersInfoBizImpl implements MembersInfoBiz { //全局 MembersInfoDao 对象 MembersInfoDao dao = new MembersInfoDaoImpl(); //列表分页 public List<MembersInfo> getMembersInfoByPage(int pageIndex, int pageSize) throws HibernateException{ return dao.getMembersInfoByPage(pageIndex, pageSize); } //根据 mid 查询会员信息 public MembersInfo getMembersInfoByMid(int mid) throws HibernateException{ return dao.getMembersInfoByMid(mid); } //修改数据 public void update(MembersInfo membersInfo) throws HibernateException{ dao.update(membersInfo); } }