org.hibernate.query.Query.setParameter()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.2k)|赞(0)|评价(0)|浏览(358)

本文整理了Java中org.hibernate.query.Query.setParameter方法的一些代码示例,展示了Query.setParameter的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.setParameter方法的具体详情如下:
包路径:org.hibernate.query.Query
类名称:Query
方法名:setParameter

Query.setParameter介绍

[英]Bind a value to a JDBC-style query parameter.
[中]将值绑定到JDBC样式的查询参数。

代码示例

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query<?> getRevisionsQuery(Session session, Set<Number> revisions) {
  2. return session.createQuery(
  3. String.format( REVISIONS_QUERY, revisionInfoEntityName, revisionInfoIdName )
  4. ).setParameter( REVISIONS_QUERY_PARAMETER, revisions );
  5. }
  6. }

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query<?> getRevisionDateQuery(Session session, Number revision) {
  2. return session.createQuery(
  3. String.format(
  4. REVISION_DATE_QUERY,
  5. revisionInfoTimestampName,
  6. revisionInfoEntityName,
  7. revisionInfoIdName
  8. )
  9. ).setParameter( REVISION_DATE_QUERY_PARAMETER, revision );
  10. }

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query<?> getRevisionNumberForDateQuery(Session session, Date date) {
  2. return session.createQuery(
  3. String.format(
  4. REVISION_NUMBER_FOR_DATE_QUERY,
  5. revisionInfoIdName,
  6. revisionInfoEntityName,
  7. revisionInfoTimestampName
  8. )
  9. ).setParameter( REVISION_NUMBER_FOR_DATE_QUERY_PARAMETER, timestampAsDate ? date : date.getTime() );
  10. }

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query toQuery(Session session) {
  2. final StringBuilder querySb = new StringBuilder();
  3. final Map<String, Object> queryParamValues = new HashMap<>();
  4. build( querySb, queryParamValues );
  5. final Query query = session.createQuery( querySb.toString() );
  6. for ( Map.Entry<String, Object> paramValue : queryParamValues.entrySet() ) {
  7. query.setParameter( paramValue.getKey(), paramValue.getValue() );
  8. }
  9. return query;
  10. }
  11. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public Person findByName(String name) {
  3. return (Person) this.sessionFactory.getCurrentSession().createQuery(
  4. "from Person person where person.name = :name").setParameter("name", name).getSingleResult();
  5. }

代码示例来源:origin: hibernate/hibernate-orm

  1. protected int doDelete(Session session, String queryString, Object param, Type paramType) {
  2. Query query = session.createQuery( queryString )
  3. .setParameter( 0, param, paramType );
  4. return doDelete( session, query );
  5. }

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query getQuery(Session s) {
  2. return s.createQuery( "from Student s where s.studentNumber = :studentNumber" )
  3. .setParameter( "studentNumber", shermanExpected.getStudentNumber() );
  4. }
  5. };

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query getQuery(Session s) {
  2. return s.createQuery(
  3. "select e.student, e.semester, e.year, e.course from Enrolment e where e.studentNumber = :studentNumber" )
  4. .setParameter( "studentNumber", shermanEnrolmentExpected.getStudentNumber() );
  5. }
  6. };

代码示例来源:origin: hibernate/hibernate-orm

  1. public Query getQuery(Session s) {
  2. return s.createQuery( "select e.semester from Enrolment e where e.studentNumber = :studentNumber" )
  3. .setParameter( "studentNumber", shermanEnrolmentExpected.getStudentNumber() );
  4. }
  5. };

代码示例来源:origin: hibernate/hibernate-orm

  1. @SuppressWarnings("unchecked")
  2. private static void executeAndVerifySelect(Session session) {
  3. List<Actor> list = session.createQuery("from Actor where firstName = ?0")
  4. .setParameter(0, "CHRISTIAN").list();
  5. Set<String> expectedLastNames = new HashSet<>(Arrays.asList("GABLE", "AKROYD", "NEESON"));
  6. assertEquals(expectedLastNames.size(), list.size());
  7. for (Actor actor : list) {
  8. assertTrue(expectedLastNames.remove(actor.getLastName()));
  9. }
  10. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testUpdate() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. int updateCount = session.createQuery( "update Person set name = :name where employed = :employed" )
  5. .setParameter( "name", "John Doe" )
  6. .setParameter( "employed", true )
  7. .executeUpdate();
  8. assertEquals(entityCount(), updateCount);
  9. });
  10. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testSetParameter() throws Exception {
  3. try (Session session = openSession()) {
  4. final Query<TestEntity> query = session.createQuery(
  5. "SELECT e FROM TestEntity e WHERE e.date <= :ts",
  6. TestEntity.class
  7. ).setParameter( "ts", new DateAttribute( System.currentTimeMillis() ), TemporalType.TIMESTAMP );
  8. final Stream<TestEntity> stream = query.stream();
  9. assertThat( stream.count(), is( 1L ) );
  10. }
  11. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void test() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. List<CorporateUser> users = session.createQuery(
  5. "select u from CorporateUser u where u.emailAddresses = :address", CorporateUser.class )
  6. .setParameter( "address", new Array(), ArrayType.INSTANCE )
  7. .getResultList();
  8. assertTrue( users.isEmpty() );
  9. } );
  10. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. @TestForIssue(jiraKey = "HHH-2735")
  3. public void testQueryLockModePessimisticWriteWithAlias() {
  4. doInHibernate( this::sessionFactory, session -> {
  5. // shouldn't throw an exception
  6. session.createQuery( "SELECT MAX(a.id)+1 FROM A a where a.value = :value" )
  7. .setLockMode( "a", LockMode.PESSIMISTIC_WRITE )
  8. .setParameter( "value", "it" )
  9. .list();
  10. } );
  11. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testStoredProcedureOutParameter() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. List<Object[]> persons = session
  5. .createNamedQuery(
  6. "getPerson")
  7. .setParameter(1, 1L)
  8. .getResultList();
  9. assertEquals(1, persons.size());
  10. } );
  11. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void HHH_10463_TestCoalesce() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. Query query = session.createQuery( "from Person p where p.name = coalesce(:name , p.name) ");
  5. query.setParameter("name", "Johannes");
  6. List<Person> resultList = query.getResultList();
  7. assertThat(resultList, hasItem(person));
  8. } );
  9. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. @TestForIssue(jiraKey = "HHH-2735")
  3. public void testQueryLockModeNoneWithAlias() {
  4. doInHibernate( this::sessionFactory, session -> {
  5. // shouldn't throw an exception
  6. session.createQuery( "SELECT a.value FROM A a where a.id = :id" )
  7. .setLockMode( "a", LockMode.NONE )
  8. .setParameter( "id", id )
  9. .list();
  10. } );
  11. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testDeleteFromPerson() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. //tag::batch-bulk-hql-temp-table-delete-query-example[]
  5. int updateCount = session.createQuery(
  6. "delete from Person where employed = :employed" )
  7. .setParameter( "employed", false )
  8. .executeUpdate();
  9. //end::batch-bulk-hql-temp-table-delete-query-example[]
  10. assertEquals( entityCount(), updateCount );
  11. });
  12. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testDeleteFromEngineer() {
  3. doInHibernate( this::sessionFactory, session -> {
  4. int updateCount = session.createQuery( "delete from Engineer where fellow = :fellow" )
  5. .setParameter( "fellow", true )
  6. .executeUpdate();
  7. assertEquals( entityCount() / 2, updateCount );
  8. });
  9. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. @SkipForDialect( jiraKey = "HHH-10463", value = PostgreSQL81Dialect.class)
  3. @SkipForDialect( jiraKey = "HHH-10463", value = Oracle8iDialect.class)
  4. public void HHH_10463_NullInCoalesce() {
  5. doInHibernate( this::sessionFactory, session -> {
  6. Query query = session.createQuery("from Person p where p.name = coalesce(:name, p.name) ");
  7. query.setParameter("name", null);
  8. List<Person> resultList = query.getResultList();
  9. assertThat(resultList, hasItem(person));
  10. } );
  11. }

相关文章