因碰到需要动态查询不同视图的结果,自己尝试使用@Query注解中传递视图名称参数:
@Query("select * from ?1")
List<Object> getDatats(String view);
但是结果报错,查看控制台的打印的异常信息,了解到是使用这种方法视图名会被加上单引号。
自己解决问题的方法: 不使用@Query注解,而是采用实体管理器。将sql语句字符串拼接视图名称参数。
public List<Object> getDatas(String view) {
String sql ="select * from"+view;
........ //其他
}