struts2.0+hibernate+oracle的分页详解(二)

2014-11-24 07:29:12 · 作者: · 浏览: 1
String password;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}


}
hibernate.cfg.xml

Xml代码
< xml version='1.0' encoding='utf-8' >
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">




jdbc:oracle:thin:@127.0.0.1:1521:JIM
scott
tiger
org.hibernate.dialect.OracleDialect
oracle.jdbc.driver.OracleDriver
true
false





user.hbm.xml

Java代码
< xml version="1.0" encoding="UTF-8" >
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">












IuserDao.java接口

Java代码
package page;

import hibernate.User;

import java.util.List;



public interface IuserDao {

public List displayUser(int offset,int max);

public int count();

}


UserDao.java

Java代码
package page;

import hibernate.HibernateUtil;
import hibernate.User;

import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;



public class UserDao implements IuserDao {

@Override
public List displayUser(int offset, int max) {
// TODO Auto-generated method stub

//PagerModel pm = null;
List list =null;
String hsql = "from User ";

Session session = HibernateUtil.currentSession();
Transaction ts = null;
try {
ts = session.beginTransaction();
Query query = session.createQuery(hsql);

query.setFirstResult(offset);
query.setMaxResults(max);
list = query.list();

} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
if (ts != null) {
ts.rollback();
}
}finally{
session.close();
}

return list;

}

@Override
public int count() {
// TODO Auto-generated method stub
int i = 0 ;
Session session = HibernateUtil.currentSession();
Transaction ts = null;
try {
ts = session.beginTransaction();
Query query = session.createQuery("select count(*) from User");
i = (Integer) query.uniqueResult();

} catch (HibernateException e) {
// TODO Auto-generated catch block

e.printStackTrace();
if (ts != null) {
ts.rollback();
}

}finally{
session.close();
}

return i;

}

}


pageAction.