천재인
184
2017-05-11 14:12:15
7
3171

spring MVC에서 .xml 쿼리문에 배열 넣는법좀 알려주세요


jsp 체크박스 체크된 값을 불러오는 코드인데요. 체크된 값을 통해 셀렉트하여 jsp에 뿌리거나 insert 시키는 의도로 하는데요

@RequestMapping(value="/ep_chkbox", method = RequestMethod.POST)

public String ep_chkbox(Model model

,@RequestParam(value="food_id") List<String> food_id){

System.out.println(food_id);

dao.ep_mchck(food_id);

컨트롤 부분에선 배열 방식으로 값이 뽑아오는데 까지 확인했고

public List<Food> ep_mchck(List<String> food_id){

System.out.println(food_id+"<==== dao list");

return sqlSessionTemplate.selectList("kr.or.possys.ep_order_manage_service.Ep_Manage_Mapper.ep_chkadd",food_id);

dao를 통해 mapper.xml 에서 이 배열 방식을 어떻게 처리해야하는지 모르겠습니다. ㅠㅠ

구글링을 해도 제가 못찾는겆ㄴ지 못찼겟네요 부탁드리겟습니다 ㅠㅠ

0
0
  • 답변 7

  • 100m8cho
    461
    2017-05-11 14:20:16 작성 2017-05-11 14:20:28 수정됨

    리스트 담은걸 포문 돌려서 넣어주면되는걸까요? 

    구연하고자하는 쿠리 문이 어떤건지 잘모르겠어서 아래와 같이 일단 남겨봅니다. 


    <foreach collection="리스트" item="변수명" open="(" close=")" seprator=",">
      검새조건  in #{변수명.값}
    </foreach>



    0
  • 천재인
    184
    2017-05-11 14:33:07


    <select id="ep_chkadd" parameterType="java.util.List" resultType="kr.or.possys.food_service.Food">

    select *

    from food_manage  where food_id in

    <foreach collection="list" item="item" open="(" close=")" >

    (#{item.list})

    </foreach </select>

    이런식으로 우선 셀렉트된값을 담아서 jsp 에 Dto에 담긴값만 골라서 EL로 빼올려고 합니다.

    실행결과 오류메세지 class java.lang.String'에 'list'라는 속성에 대한 getter가 없습니다 라는 글이 뜨네요 ㅠ


    0
  • 100m8cho
    461
    2017-05-11 14:38:43

      

    <select id="ep_chkadd" parameterType="java.util.List" resultType="kr.or.possys.food_service.Food">
    		select *
    		from food_manage  
                    where food_id in
    <foreach collection="list" item="item" open="(" close=")"  separator=",">
    #{item}
    </foreach>
    </select>


    0
  • 천재인
    184
    2017-05-11 14:51:46

    감사합니다 한개의 값은 잘 가져오는것 같은데 두개이상은 

    이런 오류가 발생하네요 

    '('두번째값') 근처에서 사용할 올바른 구문에 대해서는 MySQL 서버 버전에 해당하는 매뉴얼을 확인하십시오

    0
  • 천재인
    184
    2017-05-11 14:53:35

    List<Food> list = dao.ep_mchck(food_id); 컨트롤에서 이런식으로 받아오면 안돼는건가요?


    0
  • 100m8cho
    461
    2017-05-11 14:54:41

    리스트에 담긴게 vo 객체이면

    #{item.food_id}



    0
  • 천재인
    184
    2017-05-11 17:15:39

    계속 안되네요 ㅠ;;List<string> 배열은 파라미터 타입으로 뭘로해야할까요 ;;mapper.xml에 제대로 전달이 안돼는거 같은데...

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.