루카스모
4k
2021-04-11 14:44:50 작성 2021-04-11 14:55:29 수정됨
1
128

스프링에서 자바 list<map> 이어 붙이기 질문이요


안녕하세요 현재 제가 스프링 프로젝트를 진행중인데..

public List<Map<String, Object>> m_list = new ArrayList<Map<String,Object>>();

이렇게 선언된 m_list를

service에서 객체로 만든다음 -> DAO -> xml로 접근해서 db에서 쿼리문을 가져옵니다.

(pl은 List가 선언돼있는 클래스의 객체)

아래는 Service에 선언된 pl.m_list에서 DAO를 호출하는 건데

@Resource(name="UserDAO")
	private UserDAO m_dao;

// ~~~~

  pl.m_list = m_dao.getFirstList(mapPar);
  pl.m_list += m_dao.getSecondList(mapPar);

만약에 처음 getFirstList(mapPar)에서 호출한 값이 다음과 같습니다.

[{name=사과, userdbid=1, id=12}, {name=테스트, userdbid=1, id=13}, {names=바나나, userdbid=1, id=7}]

그리고 getSecondList(mapPar)에서 호출 예정인 값이

[{name=파인애플, userdbid=8, id=15}, {name=카카오, userdbid=1, id=10}, {names=망고, userdbid=1, id=18}]

다음과 같습니다 그런데

제 코드 대로 작성하면 당연히 에러가 발생합니다..

즉, 저는 pl.m_list에 getFirstList와 getSecondList를 호출한 값들을 이어서 하나의 List<Map> 처럼 담아 주고 싶습니다..

제딴에는 += 를 사용했는데 이어서

List<Map>에 아래와 같이 이어서 붙일수 있도록 어떻게 코드를 작성하면 좋을까요?

[{name=사과, userdbid=1, id=12}, {name=테스트, userdbid=1, id=13}, {names=바나나, userdbid=1, id=7}, {name=파인애플, userdbid=8, id=15}, {name=카카오, userdbid=1, id=10}, {names=망고, userdbid=1, id=18}]


감사합니다. 

List 안에 map도 들어서 너무 헷갈리네요 정확한 예시를 들어주시면 감사하겠습니다..

0
  • 답변 1

  • 루카스모
    4k
    2021-04-11 15:17:44 작성 2021-04-11 15:17:55 수정됨

    해결했습니다.

    pl.m_list = m_dao.getFirstList(mapPar);

    pl.m_list.addAll(m_dao.getSecondList(mapPar));

    이렇게 하니까 해결되네요

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