Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Usando MyBatis com a função Oracle XMLType existeNode()


É possível. Você não deve codificar o ? em seu xml MyBatis. MyBatis tem linguagem especial para sql dinâmico, sugiro ler o Guia do usuário do MyBatis 3 .

Altere seu mapa sql,
<select id="select" parameterType="String" resultMap="urlList">
    select 
                x.t002_id
    from
                 t002_metadata x  
    where
        existsNode(x.t002_xml, #{id}) = 1;
</select>

Pode não ser #{id}, depende de como você chama select de Mybatis. Por exemplo, você pode estar usando a tag @Param.