天天看点

hql 传参 Like

//查询

public list<student> getallstudent() {

        string hql = "from student";

        query query = sessionfactory.getcurrentsession().createquery(hql);

        return query.list();

}

//带参查询

public boolean delstudent(string id) {

        string hql = "delete student u where u.id = ?";

        query.setstring(0, id);

        return (query.executeupdate() > 0);

//模糊查询

public list<student> getpartlystudent(string key) {

        string hql = "from student u where u.id like ?";

        query.setstring(0, key+"%");

//多表查询 & 部分字段查询

public list<student> getpassed() {

        string hql = "select stu.name,gr.grade from student as stu,grades as gr where stu.id=gr.id and gr.grade>60";

//排序 & 分组

from user user order by user.name asc,user.age desc ;

select count(user),user.age from user user group by user.age having count(user)>10 ;

//分页查询

public list<student> getbypage(int pagesize, int pagenow) {

        query.setfirstresult((pagenow-1)*pagesize);

        query.setmaxresults(pagesize);  

query setfirstresult(int firstresult)

set the first row to retrieve.

<dl></dl>

<dt>parameters:</dt>

<dd>firstresult - a row number, numbered from 0</dd>

<dt>returns:</dt>

<dd>this, for method chaining</dd>

<dt>see also:</dt>

<dd>getfirstresult()</dd>

//插入

public void addstudent(student user) {

        sessionfactory.getcurrentsession().save(user);

//删除

//更新

public boolean updatestudent(student student) {

        string hql = "update student u set u.username = ?,u.age=? where u.id = ?";

        query.setstring(0, student.getname());

        query.setstring(1, student.getaddress());

        query.setstring(2, student.getid());

继续阅读