用户登录
用户注册

分享至

hibernate sql in

  • 作者: 戳不破的处女膜
  • 来源: 51数据库
  • 2020-09-23
我写个简单的例子,楼主可以参考下public int getLogin(String username,String password)
{ String sql="select * from user_table where username=? and password=?";
SQLQuery query=getSession().createSQLQuery(sql).addEntity(UserTable.class);
query.setString(0,username);
query.setString(1,password);
return Integer.parseInt(query.uniqueResult().toString());

}
public static void main(String[] args) {
new UserTableDAO().getLogin("zhang","yuan");
}



  第一个是从第几条开始,第二个是每页几条。
你看看你数据库里面的数据够不够分页,你这样只写两句就分页是不够的。
page = paginator.showpage(dao, hql, paramvalues, pagecurrent, pagesize);

/*
* 利用hql实现翻页
*/
public static page showpage(persistentbasedao pdao, string hql,
object[] paramvalues, int pagecurrent, int pagesize) {
// 入口参数校验(无)
if (pdao == null) {
// log.debug("paginator.pdao.hql is empty");
}
if (hql.equals("") || hql == null) {
// log.debug("paginator.showpage.hql is empty");
}
if (pdao == null) {
// log.debug("paginator.showpage.pdao is empty");
}
persistentbasedao dao = (persistentbasedao) pdao;
// 如果当前页大于>总的页数,则让当前页等于总页数
int temppagecount =0;

if (paramvalues == null) {
temppagecount = dao.getpagecount(hql, (object[]) null, pagesize);
} else {
temppagecount= dao.getpagecount(hql, paramvalues, pagesize);
}
if (pagecurrent > temppagecount) {
pagecurrent = temppagecount;
}
// 如果当前页大于<1,则让当前页等于1 if="" (pagecurrent="">< 1)="" {="" pagecurrent="1;" }="" 调用dao.serarch()方法="" if="" (paramvalues="=" null)="" {="" page="dao.search(hql," pagecurrent,="" pagesize);="" }="" else="" {="" page="dao.search(hql," paramvalues,="" pagecurrent,="" pagesize);="" }="" 为page对象设置当前页的属性="" page.setpagecurrent(pagecurrent);="" 将page对象放在request对象中="" return="" page;="" }="" *="" 利用list实现翻页="" */="" @suppresswarnings("unchecked")="" public="" static="" page="" showpage(list="" list,="" int="" pagecurrent,="" int="" pagesize)="" {="" 入口参数校验(无)="" if="" (list.isempty())="" {="" log.debug("paginator.showpage.list="" is="" empty");="" }="" 如果当前页大于="">总的页数,则让当前页等于总页数
if (pagecurrent > page.getpagecount()) {
pagecurrent = page.getpagecount();
}
// 如果当前页大于<1,则让当前页等于1 if="" (pagecurrent="">< 1)="" {="" pagecurrent="1;" }="" list="" ls="new" arraylist();="" 根据得到的list转化为page对象="" if="" (list.size()="" %="" pagesize="=" 0)="" {="" page.setpagecount((list.size()="" pagesize));="" }="" else="" {="" page.setpagecount((list.size()="" pagesize)="" +="" 1);="" }="" page.setpagecurrent(pagecurrent);="" page.setrecordcound(list.size());="" int="" stag="(pagecurrent" -="" 1)="" *="" pagesize;="" int="" etag="pagecurrent" *="" pagesize;="" for="" (int="" i="stag;" i="">< list.size()="" &&="" i="">< etag;="" i++)="" {="" ls.add(list.get(i));="" }="" page.setdatalist(ls);="" return="" page;="">
软件
前端设计
程序设计
Java相关