Java Mailing List Archive

http://www.java2.5341.com/

Home » user-java.ibatis »

Select with dynamic where

Leucht, Axel

2010-05-19


Author LoginPost Reply
I'm currently having one problem with iBATIS-3.

My test bed runs fine with iBATIS-2 and I have a problem with one select
statement which inserts a dynamic where clause.
The parameters, which are plain strings, are not inserted into the sql
command.

 <select id="getSomeStudents" resultType="entities.Student"
   parameterType="list">
   select name,descr as description from student where name
in
   <foreach item="item" index="index" collection="list"
     open="(" separator="," close=")">
       #{value,jdbcType=VARCHAR}
   </foreach>
 </select>

In Java-Code
    List<String> props = new ArrayList<String>();
    props.add("string1");
    props.add("string2");
    props.add("string3");
    List<Student> listStudenten =
sqlSession.selectList("Student.getEinigeStudenten", props);

The log shows that the sql don't contain the parameters given.

DEBUG [main] - ==> Executing: select name,descr as description from
student where name in ( ? , ? , ? )
DEBUG [main] - ==> Parameters: null, null, null

What is wrong with my approach?

/Axel

---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@(protected)
For additional commands, e-mail: user-java-help@(protected)

©2008 java2.5341.com - Jax Systems, LLC, U.S.A.