저장 프로 시저를 호출 한 결과 행을 특정 객체로 강제 변환 할 수 있도록 객체의 목록 만 뷰에 전달할 수 있습니까?객체에 결과 행 강제 변환
Node.list()와 같은 것을 사용할 수 있지만 임시 테이블을 생성하고 최적화 된 SQL fu를 수행하는 상당히 복잡한 저장 프로 시저로 getnodes()를 대체하려고합니다. 그러나 지금은 grails 상호 작용에 대해 노력하고 있습니다. 나는 다음과 같은 한 Grails의 컨트롤러에서
CREATE DEFINER=`root`@`255.255.255.255` PROCEDURE `getnodes`()
BEGIN
select * from node;
END
:
def nodes = new ArrayList<Node>()
// collect all the nodes returned
sql.eachRow("{call getnodes()}") {
nodes.add(it as Node)
}
println "Nodes size is: " + nodes.size()
nodes.eachWithIndex { d, i ->
println "$i : $d"
}
내 계획은 다음 뷰에 노드를 전달하는 것입니다
그래서 MySQL의 측면에서 나는 다음과 같은 저장 프로 시저가 있습니다.nodes.add(it as Node)
이도 가능 :
문제는 라인에 불면이다? 이게 바로 권리를 강요해야한다는 뜻인가요? 내가 도대체 뭘 잘못하고있는 겁니까?
Node.get (it.id)로 각 노드를 검색했을뿐입니다. – TheBigS