Mam SQL napisany w pliku odwzorowujący MyBatis który jest mniej więcej tak:dostępu public static final ciąg w mybatis sql w plikach Mapper
<select id="somesql">
select a,b,c from tbl_name where d = ?
</select>
Wartość zastępczy d
ma być stałe zadeklarowane plik o nazwie Constants.java
jak:
public static final String d = "d_value";
Jak wymienić element zastępczy z wartością bez faktycznie przechodzącą parametr w <select>
konstruktem? Próbowałem #{com.pkg.name.Constants.d}
, ale to nie zadziałało.
Bez twardego kodowania !!!
Właściwie to działa !! Pamiętaj jednak, że wartość jest wklejana "tak jak jest", bez ucieczki, bez cudzysłowów. Więc jeśli nie używasz go do liczb, musisz przynajmniej dodać cytaty. –
Właściwie to zamieniamy wszelkie parametry przekazane na mappers, poza faktem, że nie używamy tylko stałych STATYSTYCZNYCH, ale można również wywołać metodę statyczną, jak poniżej: ${@foo.product.constant.StoreType @getWhereClausule()} – kensai