:: 게시판
:: 이전 게시판
|
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다. 통합 규정을 준수해 주십시오. (2015.12.25.)
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
17/02/10 00:25
ArrayList<HashMap<String, Object>> 이렇게 사용해보세요. ArrayList 안에 hashMap 넣으시면 됩니다.
아니면 같은 내용이라면 VO 한 개에 다 넣으셔도 됩니다.
17/02/10 08:16
오호 콜랙션 클래스 안에 콜랙션 제너릭을 쓰면 되는군요? 감사합니다~!
그런데 VO 한개에 다 넣으라는 말이 뭔말이지 이해가 안갔는데 아래 Unikys님 댓글의 2번에 대한 내용인가 보군요 저게 객체지향방법이라고 하니까 한번 시도해보겠습니다. 감사합니다!!
17/02/10 04:25
1. Spring 프레임워크를 사용하시면 관계 정의만 하시면 아주 쉽게 해결 가능합니다.
2. 객체지향을 고려한다면 A1용 HashMap 또는 ArrayList 따로, B1 HashMap 또는 ArrayList 따로하는 것은 좋지 않습니다. (물론 가능은 합니다.) 일반적으로는 A1VO의 HashMap 또는 ArrayList만 생성하고 A1VO 클래스 안에 ArrayList 멤버변수를 정의하여 해당 B1의 값들을 A1VO의 멤버로 넣는 것이 맞습니다. (Spring은 이것을 쉽게 해줍니다.) 3. 이렇게 할 수 없고 굳이 A1/B1 따로따로 두개의 HashMap/ArrayList를 두어야 한다면 HashMap<Key, List<B1VO>>로 하시는게 좋습니다. Key로 검색하면 여러 개의 B1V0가 있는 List를 받아서 순서대로 출력해주면 됩니다. 하지만 참고로 이렇게 개발하는 것은 15년전에나 하던 개발방식입니다. 아무리 급해도 객체지향 방식을 공부하시고 활용하시길 권하고 JSP를 쓴다면 아직 개발 초기단계면 Spring 프레임워크의 도입을 고민하셔도 좋을 것 같습니다. 요즘 JSP 개발자라면 Spring은 기본으로 하는게 좋은 것 같더라고요.
17/02/10 08:27
댓글과 조언 정말 진심으로 감사드립니다!
3번은 위에 길치님 댓글과 같은 방법이군요. 방금 간단히 흉내내봤는데 역시나 잘 될것같습니다. (사실 제가 초급개발자라 원했던 답은 이거였고요) 2번에 대한 내용은 충격적이네요 심지어 그게 객체지향적 개발이라고 하니까 더 충격이네여.. 왜냐하면 이전직장이 대기업 계약직이었는데 대규모 사이트를 Struts2로 개발했는데 단 한번도 겟셋전용 클래스에서 언젠가 쓰일지 모르는 임의의 Arraylist나 Hashmap 같은 콜렉션클래스 변수를 만들어 두는것을 진짜 듣도보도 못했거든요. 실제로 사용하는것을 본적도 없고요. 하긴 거기서는 자체개발한 API라는 것을 통해 지정된 API코드에 인자값을 (where절에 들어갈 값) 넣으면 알아서 select결과를 여러 row를 가진 XML 태그를 뱉어줘서 그걸 documnet.getElement 이런 클래스, 메서드를 통해 담아서 웹전송하고, 화면단에서는 그것을 받아 XPath로 원하는 엘리먼트의 값을 찾아 반복시켜 출력하고 뭐 그랬었거든요. (사실 정확히 이해는 못하고 SM 유지보수업무라서 기존소스 그대로 가져다 썼었어요..) 그리고 지금 중소기업으로 이직해서 jsp로 개발하고 있는데요. Spring은 기왕이면 기본 spring말고 바로그냥 HRD재직자교육과정으로 전자정부표준프레임워크 Spring 3.x 교육을 여름이후에 들을 생각이에요.(spring 4.x는 전자정부표준 교육과정이 없어서 패스) 이후 제가 만든 이 프로그램에 도입할 예정이고요. (그러면 DAO가 빠지고 mybatis를 쓰게되겠죠) ----------- 여기까지는 중요한 내용이 아니고 주절주절해본거라 스킵하셔도 되구요 --------------------------- 뭐여튼 Unikys님 말씀대로 [일일이 콜렉션클래스(Arraylist나 Hashmap) 변수를 만들지 말고, A1VO 클래스 또는 B1VO 클래스 등에 무조건 콜렉션클래스를 임의로 하나 만들어서 필요할때(여러table join) 거기에 값들을 집어넣어서 출력시켜보겠습니다.] 지금 출근해서 개발시작하니까 오늘 오후나 저녁에 결과가 어떠했는지 다시 댓글로 달겠습니다. 감사합니다~! ^^
|