【发布时间】:2016-12-17 07:28:41
【问题描述】:
我需要从 org.springframework.data.repository 调用 MySQL funtion(),这将返回 String。
我可以在我的接口方法声明之上使用@Query 注释执行查询,但我不知道调用函数。
【问题讨论】:
标签: java mysql spring spring-boot spring-data
我需要从 org.springframework.data.repository 调用 MySQL funtion(),这将返回 String。
我可以在我的接口方法声明之上使用@Query 注释执行查询,但我不知道调用函数。
【问题讨论】:
标签: java mysql spring spring-boot spring-data
假设您有一个名为 echo 的函数,它接受一个字符串作为其输入并返回相同的字符串作为输出的一部分:
CREATE FUNCTION echo(to_be_echoed TEXT) RETURNS TEXT;
如果你想从你的存储库中调用这个函数,你可以使用带有以下 SQL 的 Native Query:
SELECT function_name(arguments)
因此,您的存储库方法如下:
@Query(value = "SELECT echo(?1)", nativeQuery = true)
String echo(String toBeEchoed);
【讨论】:
如果您使用 Spring Data,则可以使用以下功能之一:
@Procedure("prosedure_name")
void prosedureName();
或
@Procedure(value = "prosedure_name")
void prosedureName();
或
@Procedure(procedureName = "prosedure_name")
void prosedureName();
或
@Procedure
void prosedure_name();
【讨论】: