java.lang.IllegalArgumentException:参数在中不作为命名参数存在

java.lang.IllegalArgumentException:参数在中不作为命名参数存在,java,mysql,hibernate,Java,Mysql,Hibernate,需要建议来解决此问题您在下界和上界前面缺少参数指示符(冒号) java.lang.IllegalArgumentException: Parameter lowerBound does not exist as a named parameter in [select * from data inner join route on (data.id=route.data_id and data.status=:status and data.is_active='Y' and route.ow

需要建议来解决此问题您在
下界
上界
前面缺少参数指示符(冒号)

java.lang.IllegalArgumentException: Parameter lowerBound does not exist as a named parameter in [select * from data inner join route on (data.id=route.data_id and data.status=:status  and data.is_active='Y' and route.owner_id= :ownerId) LIMIT lowerBound,upperBound ]
如果没有这些指示符,JDBC就不知道这些是参数,从而混淆了它们的列名

java.lang.IllegalArgumentException: Parameter lowerBound does not exist as a named parameter in [select * from data inner join route on (data.id=route.data_id and data.status=:status  and data.is_active='Y' and route.owner_id= :ownerId) LIMIT lowerBound,upperBound ]
SQLQuery query = session.createSQLQuery(
    "select * from data "+
    "inner join route on (data.id=route.data_id and data.status=:status  and data.is_active='Y' and route.owner_id= :ownerId)"+
    "LIMIT :lowerBound,:upperBound "
);