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

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

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

Query.executeUpdate介绍

[英]Execute the update or delete statement.

The semantics are compliant with the ejb3 Query.executeUpdate() method.
[中]执行update或delete语句。
语义符合ejb3查询。executeUpdate()方法。

代码示例

代码示例来源:origin: gocd/gocd

  1. @Override
  2. protected void doInTransactionWithoutResult(TransactionStatus status) {
  3. sessionFactory.getCurrentSession().createQuery("DELETE FROM " + Plugin.class.getSimpleName()).executeUpdate();
  4. }
  5. });

代码示例来源:origin: gocd/gocd

  1. @Override
  2. protected void doInTransactionWithoutResult(TransactionStatus status) {
  3. sessionFactory.getCurrentSession().createQuery("DELETE FROM VersionInfo").executeUpdate();
  4. }
  5. });

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

  1. @Deprecated
  2. @Override
  3. @SuppressWarnings({"rawtypes", "deprecation"})
  4. public int bulkUpdate(final String queryString, @Nullable final Object... values) throws DataAccessException {
  5. Integer result = executeWithNativeSession(session -> {
  6. org.hibernate.Query queryObject = queryObject(
  7. ReflectionUtils.invokeMethod(createQueryMethod, session, queryString));
  8. prepareQuery(queryObject);
  9. if (values != null) {
  10. for (int i = 0; i < values.length; i++) {
  11. queryObject.setParameter(i, values[i]);
  12. }
  13. }
  14. return queryObject.executeUpdate();
  15. });
  16. Assert.state(result != null, "No update count");
  17. return result;
  18. }

代码示例来源:origin: gocd/gocd

  1. public void deleteAll() {
  2. getHibernateTemplate().execute((HibernateCallback) session -> session.createQuery(String.format("DELETE FROM %s", ServerBackup.class.getName())).executeUpdate());
  3. }
  4. }

代码示例来源:origin: gocd/gocd

  1. @Override
  2. protected void doInTransactionWithoutResult(TransactionStatus status) {
  3. transactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
  4. @Override
  5. public void afterCommit() {
  6. clearEnabledUserCountFromCache();
  7. }
  8. });
  9. sessionFactory.getCurrentSession().createQuery("DELETE FROM User").executeUpdate();
  10. }
  11. });

代码示例来源:origin: gocd/gocd

  1. @Override
  2. protected void doInTransactionWithoutResult(TransactionStatus status) {
  3. transactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
  4. @Override
  5. public void afterCommit() {
  6. clearEnabledUserCountFromCache();
  7. }
  8. });
  9. String queryString = String.format("update %s set enabled = :enabled where name in (:userNames)", User.class.getName());
  10. Query query = sessionFactory.getCurrentSession().createQuery(queryString);
  11. query.setParameter("enabled", enabled);
  12. query.setParameterList("userNames", usernames);
  13. query.executeUpdate();
  14. }
  15. });

代码示例来源:origin: kaaproject/kaa

  1. @Override
  2. public void removeByName(String tenantName) {
  3. Query query = getQuery(DELETE_BY_NAME_HQL);
  4. int number = query.setString(NAME_PROPERTY, tenantName).executeUpdate();
  5. LOG.debug("Removed [{}] tenant by name [{}]", number, tenantName);
  6. }

代码示例来源:origin: gocd/gocd

  1. @Override
  2. public boolean deleteUsers(List<String> userNames) {
  3. return (Boolean) transactionTemplate.execute((TransactionCallback) status -> {
  4. String queryString = "delete from User where name in (:userNames)";
  5. Query query = sessionFactory.getCurrentSession().createQuery(queryString);
  6. query.setParameterList("userNames", userNames);
  7. query.executeUpdate();
  8. return Boolean.TRUE;
  9. });
  10. }

代码示例来源:origin: org.springframework/spring-orm

  1. @Deprecated
  2. @Override
  3. @SuppressWarnings({"rawtypes", "deprecation"})
  4. public int bulkUpdate(final String queryString, @Nullable final Object... values) throws DataAccessException {
  5. Integer result = executeWithNativeSession(session -> {
  6. org.hibernate.Query queryObject = queryObject(
  7. ReflectionUtils.invokeMethod(createQueryMethod, session, queryString));
  8. prepareQuery(queryObject);
  9. if (values != null) {
  10. for (int i = 0; i < values.length; i++) {
  11. queryObject.setParameter(i, values[i]);
  12. }
  13. }
  14. return queryObject.executeUpdate();
  15. });
  16. Assert.state(result != null, "No update count");
  17. return result;
  18. }

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

  1. private void createFunctionIndex() {
  2. Session session = openSession();
  3. Transaction transaction = session.beginTransaction();
  4. Query query = session.createSQLQuery( "CREATE UNIQUE INDEX uk_MyEntity_name_lowercase ON MyEntity (lower(name));" );
  5. query.executeUpdate();
  6. transaction.commit();
  7. session.close();
  8. }

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

  1. private void dropTable() {
  2. Session session = openSession();
  3. Transaction transaction = session.beginTransaction();
  4. Query query = session.createSQLQuery( "DROP TABLE IF EXISTS MyEntity;" );
  5. query.executeUpdate();
  6. transaction.commit();
  7. session.close();
  8. }

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

  1. private void createTable() {
  2. Session session = openSession();
  3. Transaction transaction = session.beginTransaction();
  4. Query query = session.createSQLQuery( "CREATE TABLE MyEntity(id bigint, name varchar(255));" );
  5. query.executeUpdate();
  6. transaction.commit();
  7. session.close();
  8. }

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

  1. private void dropFunctionIndex() {
  2. Session session = openSession();
  3. Transaction transaction = session.beginTransaction();
  4. Query query = session.createSQLQuery( "DROP INDEX IF EXISTS uk_MyEntity_name_lowercase;" );
  5. query.executeUpdate();
  6. transaction.commit();
  7. session.close();
  8. }

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

  1. @Test
  2. public void testSimpleInsertWithNamedParam() {
  3. TestData data = new TestData();
  4. data.prepare();
  5. Session s = openSession();
  6. Transaction t = s.beginTransaction();
  7. org.hibernate.Query q = s.createQuery( "insert into Pickup (id, owner, vin) select id, :owner, vin from Car" );
  8. q.setParameter("owner", "owner");
  9. q.executeUpdate();
  10. t.commit();
  11. t = s.beginTransaction();
  12. s.createQuery( "delete Vehicle" ).executeUpdate();
  13. t.commit();
  14. s.close();
  15. data.cleanup();
  16. }

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

  1. @Test
  2. public void testInsertWithMultipleNamedParams() {
  3. TestData data = new TestData();
  4. data.prepare();
  5. Session s = openSession();
  6. Transaction t = s.beginTransaction();
  7. org.hibernate.Query q = s.createQuery( "insert into Pickup (id, owner, vin) select :id, owner, :vin from Car" );
  8. q.setParameter("id", 5l);
  9. q.setParameter("vin", "some");
  10. q.executeUpdate();
  11. t.commit();
  12. t = s.beginTransaction();
  13. s.createQuery( "delete Vehicle" ).executeUpdate();
  14. t.commit();
  15. s.close();
  16. data.cleanup();
  17. }

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

  1. private void cleanUpTest(String pckg) {
  2. Session session = null;
  3. Transaction tx = null;
  4. try {
  5. session = openSession();
  6. tx = session.beginTransaction();
  7. String hql = String.format( "delete from %s", entityName(pckg) );
  8. Query q = session.createQuery( hql );
  9. q.executeUpdate();
  10. tx.commit();
  11. }
  12. catch (Exception e) {
  13. if ( tx != null ) {
  14. tx.rollback();
  15. }
  16. }
  17. finally {
  18. if ( session != null ) {
  19. session.close();
  20. }
  21. }
  22. }

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

  1. @Test
  2. public void testInsertSingleValue() {
  3. final String name = "Name";
  4. final String lastName = "LastName";
  5. final String fullName = name + " " + lastName;
  6. final FromEntity fromEntity = createFrom( name, lastName );
  7. final int id = 10000;// id fake
  8. Session session = openSession();
  9. session.getTransaction().begin();
  10. Query insert = session.getNamedQuery( "DestinationEntity.insert" );
  11. insert.setParameter( "generatedId", id );
  12. insert.setParameter( "fromId", fromEntity.id );
  13. insert.setParameter( "fullName", fullName );
  14. int executeUpdate = insert.executeUpdate();
  15. assertEquals( 1, executeUpdate );
  16. session.getTransaction().commit();
  17. session.close();
  18. session = openSession();
  19. DestinationEntity get = (DestinationEntity) session.get( DestinationEntity.class, id );
  20. session.close();
  21. assertEquals( fromEntity, get.from );
  22. assertEquals( fullName, get.fullNameFrom );
  23. }

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

  1. @Test
  2. public void testDeleteMultipleValues() {
  3. final String name = "Name";
  4. final String lastName = "LastName";
  5. final List<Integer> ids = new ArrayList<Integer>();
  6. final int quantity = 10;
  7. final List<DestinationEntity> destinations = new ArrayList<DestinationEntity>();
  8. for ( int i = 0; i < quantity; i++ ) {
  9. FromEntity fe = createFrom( name + i, lastName + i );
  10. DestinationEntity destination = createDestination( fe, fe.name + fe.lastName );
  11. destinations.add( destination );
  12. ids.add( destination.id );
  13. }
  14. Session session = openSession();
  15. session.getTransaction().begin();
  16. Query delete = session.getNamedQuery( "DestinationEntity.delete" );
  17. delete.setParameterList( "ids", ids );
  18. int executeUpdate = delete.executeUpdate();
  19. assertEquals( quantity, executeUpdate );
  20. session.getTransaction().commit();
  21. session.close();
  22. List<DestinationEntity> list = findDestinationByIds( ids );
  23. assertTrue( list.isEmpty() );
  24. }

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

  1. @Test
  2. public void testUpdateSingleValue() {
  3. final String name = "Name";
  4. final String lastName = "LastName";
  5. final String fullName = name + " " + lastName;
  6. final FromEntity fromEntity = createFrom( name, lastName );
  7. final DestinationEntity destinationEntity = createDestination( fromEntity, fullName );
  8. final String inverseFullName = lastName + " " + name;
  9. final FromEntity anotherFrom = createFrom( lastName, name );
  10. Session session = openSession();
  11. session.getTransaction().begin();
  12. Query update = session.getNamedQuery( "DestinationEntity.update" );
  13. update.setParameter( "idFrom", anotherFrom.id );
  14. update.setParameter( "fullName", inverseFullName );
  15. update.setParameterList( "ids", Collections.singletonList( destinationEntity.id ) );
  16. int executeUpdate = update.executeUpdate();
  17. assertEquals( 1, executeUpdate );
  18. session.getTransaction().commit();
  19. session.close();
  20. session = openSession();
  21. session.beginTransaction();
  22. DestinationEntity get = (DestinationEntity) session.get( DestinationEntity.class, destinationEntity.id );
  23. assertEquals( anotherFrom, get.from );
  24. assertEquals( inverseFullName, get.fullNameFrom );
  25. session.getTransaction().commit();
  26. session.close();
  27. }

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

  1. @Test
  2. public void testDeleteSingleValue() {
  3. final String name = "Name";
  4. final String lastName = "LastName";
  5. final String fullName = name + " " + lastName;
  6. final FromEntity fromEntity = createFrom( name, lastName );
  7. final DestinationEntity destinationEntity = createDestination( fromEntity, fullName );
  8. Session session = openSession();
  9. session.getTransaction().begin();
  10. Query delete = session.getNamedQuery( "DestinationEntity.delete" );
  11. delete.setParameterList( "ids", Collections.singletonList( destinationEntity.id ) );
  12. int executeUpdate = delete.executeUpdate();
  13. assertEquals( 1, executeUpdate );
  14. session.getTransaction().commit();
  15. session.close();
  16. session = openSession();
  17. DestinationEntity get = (DestinationEntity) session.get( DestinationEntity.class, destinationEntity.id );
  18. session.close();
  19. assertNull( get );
  20. }

相关文章