Ich versuche, benutzerdefinierte SQL Service Buider verwenden, aber ich kann keine benutzerdefinierte Abfrage von Datei default.xml erhalten. Ich habe versucht, zu debuggen, aber es gibt null an sql von Student1FinderImpl zurück. Kann mir jemand helfen? Hier ist mein Code: default.xmlKann nicht benutzerdefinierte SQL durch ID in LIFERAY
<?xml version="1.0" encoding="UTF-8"?>
<custom-sql>
<sql id="searchByNameStudent1">
<![CDATA[
SELECT * FROM database_student1 WHERE name= ?
]]>
</sql>
</custom-sql>
public class Student1FinderImpl extends BasePersistenceImpl<Student1> implements Student1Finder {
@SuppressWarnings("unchecked")
public List<Student1> searchByName(String name,int start,int end){
Session session= null;
String sql= "";
try{
//open session
session= openSession();
//set SQL by ID
sql=CustomSQLUtil.get("searchByNameStudent1");
SQLQuery query= session.createSQLQuery(sql);
query.addEntity("Student1", Student1.class);
query.setCacheable(false);
QueryPos qPos= QueryPos.getInstance(query);
qPos.add(name);
System.out.println(query);
return (List<Student1>) QueryUtil.list(query, getDialect(), start, end);
}
catch(Exception ex){
ex.printStackTrace();
return null;
}
finally{
closeSession(session);
}