mvc - spring java tutorial
Hibernate no pudo ubicar el parámetro nombrado incluso si existe (2)
Debería ser así:
Query query = sess().createQuery("from UserProfile where firstName LIKE :name").setParameter("name", "%"+name+"%");
En su caso '':name''
es una cadena real que Hibernate buscará. Si necesita tener un parámetro con nombre real, debe tener just :name
.
Por lo tanto, %
debe pasar como un valor de :name
e Hibernate sustituirá :name
con valor real.
Tenga en cuenta que si su valor contiene %
y quiere que sea una letra real en lugar de un comodín, tendrá que escapar, aquí hay un ejemplo de escaper-class.
Hibernate sigue detectando
org.hibernate.QueryParameterException: could not locate named parameter [name]
aunque exista aquí está mi hql
Query query = sess().createQuery("from UserProfile where firstName LIKE ''%:name%''").setParameter("name", name);
¿Por qué hibernate sigue arrojando esa excepción? a pesar de que el parámetro existe?
intenta concatenarlo usando hql
"from UserProfile where firstName LIKE ''%'' || :name || ''%''"
o usando CONCAT
"from UserProfile where firstName LIKE CONCAT(''%'', :name ,''%'')"