Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да изберете обекти чрез извикване на съхранена процедура с Spring Data

Да кажем, че това е вашата процедура:

CREATE OR REPLACE PROCEDURE get_users(data out SYS_REFCURSOR)
AS
BEGIN
OPEN data FOR SELECT * FROM USERS;
END;

Вие дефинирате @NamedStoredProcedureQuery :

@NamedStoredProcedureQuery(
    name="getUsers", 
    procedureName="get_users", 
    resultClass=User.class, parameters={
        @StoredProcedureParameter(queryParameter="data", name="data", direction=Direction.OUT_CURSOR)
    }
)
@Entity
public class User {
    ...
}

След това можете да извикате процедурата си така:

public UserRepository extends JpaRepository<User, Long>{
    @Procedure('User.getUsers')
    List<User> getUsers();
}

Можете също да проверите това с помощта на вашия EntityManager по този начин:

Query query = entitymanager.createNamedQuery("getUsers");
List users = query.getResultList();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Форматиране на DateTime в .Net за MySQL база данни

  2. Как да конвертирате IPv6 от двоичен файл за съхранение в MySQL

  3. Как да синхронизирам две MySQL таблици?

  4. PHP/MySQL Изтрийте изображение от базата данни

  5. Как да свържете локално хоствана MySQL база данни с докер контейнера