HQL插入数据
package query.HQL;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.Query;
import org.junit.jupiter.api.Test;
import util.SessionUtil;
public class HQLInsert {
private Session session = SessionUtil.getSession();
private Transaction transaction = session.beginTransaction();
private String hql;
@Test
public void test01() {
hql = "INSERT INTO Event (title, date) SELECT data1, data2 From Datas WHERE id = :id";
Query<?> query = session.createQuery(hql);
query.setParameter("id", 1);
System.out.println(query.executeUpdate());
transaction.commit();
}
}
HQL删除数据
package query.HQL;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.Query;
import org.junit.jupiter.api.Test;
import util.SessionUtil;
public class HQLDelete {
private Session session = SessionUtil.getSession();
private Transaction transaction = session.beginTransaction();
private String hql;
@Test
public void test00() {
hql = "DELETE FROM Event WHERE id = :id";
Query<?> query = session.createQuery(hql);
query.setParameter("id", Long.valueOf(9));
System.out.println(query.executeUpdate());
transaction.commit();
}
}
HQL修改数据
package query.HQL;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.Query;
import org.junit.jupiter.api.Test;
import util.SessionUtil;
public class HQLUpdate {
private Session session = SessionUtil.getSession();
private Transaction transaction = session.beginTransaction();
private String hql;
@Test
public void test07() {
hql = "UPDATE Event SET title = :title WHERE id = :id";
Query<?> query = session.createQuery(hql);
query.setParameter("title", "标题8");
query.setParameter("id", 8l);
System.out.println(query.executeUpdate());
transaction.commit();
}
}
HQL查询数据
package query.HQL;
import java.util.Arrays;
import java.util.List;
import org.hibernate.ScrollableResults;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.query.Query;
import org.junit.jupiter.api.Test;
import orm.entity.Event;
import util.SessionUtil;
public class HQLQuery {
private Session session = SessionUtil.getSession();
private Transaction transaction = session.beginTransaction();
private String hql;
@Test
public void test00() {
hql = "from Event";
Query<Event> query = session.createQuery(hql, Event.class);
System.out.println(query.list());
transaction.commit();
}
@Test
public void test01() {
hql = "from Event where id = ?1 and title = ?2";
Query<Event> query = session.createQuery(hql, Event.class);
query.setParameter(1, Long.valueOf(1));
query.setParameter(2, "标题一");
System.out.println(query.list());
transaction.commit();
}
@Test
public void test02() {
hql = "from Event where id = :id";
Query<Event> query = session.createQuery(hql, Event.class);
query.setParameter("id", Long.valueOf(1));
System.out.println(query.list());
transaction.commit();
}
@Test
public void test03() {
hql = "select title from Event";
ScrollableResults scrollableResults = session.createQuery(hql).scroll();
while (scrollableResults.next()) {
Object[] row = scrollableResults.get();
System.out.println(Arrays.toString(row));
}
}
@Test
public void test04() {
hql = "from Event";
int first = 0;
int size = 10;
Query<Event> query = session.createQuery(hql, Event.class);
query.setFirstResult(first);
query.setMaxResults(size);
List<Event> events = query.list();
for (int i = 0; i < events.size(); i++) {
Event event = events.get(i);
System.out.println(event);
}
}
@Test
public void test06() {
hql = "SELECT count(*) FROM Event";
System.out.println(session.createQuery(hql).getSingleResult());
}
}