inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 부트 웹 개발 입문 - 따라하며 배우기

@Service 를 사용하자 (feat. DI/IoC 개념)

오류가 왜 나는건지 모르겠어요

150

mins199600

작성한 질문수 24

0

 

package hello.sailing.v1.service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MenuSvc {

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

    Map<String, Object> map = new HashMap<>();
        map.put("No","1");
        map.put("name","아이스아메리카노");
        map.put("kind","커피");
        map.put("price","2,000");
        map.put("reg_day","2020.10.29");
        map.put("mod_day","2021.10.29");
        list.add(map);

    Map<String, Object> map2 = new HashMap<>();

        map2.put("No","2");
        map2.put("name","아이스초코");
        map2.put("kind","음료");
        map2.put("price","4,000");
        map2.put("reg_day","2020.10.29");
        map2.put("mod_day","2021.10.29");
        list.add(map2);

        return list;
}

 put이랑 add 부분이랑 list.add 하는 부분이 오류가 나요ㅕ 왜그런거죠?

spring mvc spring-boot

답변 2

0

IT늦공 김부장

안녕하세요.
위 구문은 제가 강의에 사용한 내용과는 조금 다른듯 합니다.
우선 제가 사용한 소스를 참고해 주시구요.

위 구문을 살펴보면
1. return 구문이 있는데, 메소드에 반환형이 없습니다.
2.public List<Map<String, Object>> list = new ArrayList<>();
위 구문에서 public 은 생략되어야 합니다.

수정을 해보면 아래와 같이 되어야 합니다.

package hello.sailing.v1.service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MenuSvc {

    /**
     * @return
     */
    public List<Map<String, Object>> doList() {

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

        Map<String, Object> map = new HashMap<>();
        map.put("No", "1");
        map.put("name", "아이스아메리카노");
        map.put("kind", "커피");
        map.put("price", "2,000");
        map.put("reg_day", "2020.10.29");
        map.put("mod_day", "2021.10.29");
        list.add(map);

        Map<String, Object> map2 = new HashMap<>();

        map2.put("No", "2");
        map2.put("name", "아이스초코");
        map2.put("kind", "음료");
        map2.put("price", "4,000");
        map2.put("reg_day", "2020.10.29");
        map2.put("mod_day", "2021.10.29");
        list.add(map2);

        return list;
    }
}


0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. mins199600님.

해당 코드에서 putadd 부분이 제대로 작동하지 않는 이유는 코드 블록의 위치와 문법적인 오류 때문입니다. 생성자나 메서드 내에서 이 부분들이 있어야 하는데, 현재 상태에서는 클래스 필드로 선언된 위치에 있어서 오류가 나는 것입니다.

다음은 수정된 코드입니다:

package hello.sailing.v1.service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MenuSvc {

    public List<Map<String, Object>> list;

    public MenuSvc() {
        list = new ArrayList<>();

        Map<String, Object> map = new HashMap<>();
        map.put("No","1");
        map.put("name","아이스아메리카노");
        map.put("kind","커피");
        map.put("price","2,000");
        map.put("reg_day","2020.10.29");
        map.put("mod_day","2021.10.29");
        list.add(map);

        Map<String, Object> map2 = new HashMap<>();
        map2.put("No","2");
        map2.put("name","아이스초코");
        map2.put("kind","음료");
        map2.put("price","4,000");
        map2.put("reg_day","2020.10.29");
        map2.put("mod_day","2021.10.29");
        list.add(map2);
    }

    public List<Map<String, Object>> getList() {
        return list;
    }
}

위와 같이 수정하면 오류 없이 코드가 작동할 것입니다. MenuSvc 클래스의 생성자 내에서 모든 초기화를 진행하고, getList 메서드로 리스트를 반환하도록 작성해 보았습니다.

유사한 문제에 대해 궁금하시다면 아래 기존 Q&A를 참고해 보세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

마이바티스 환경설정 조회하기 강의 부분에서 메뉴부분에러

0

57

2

자바 8버전이 선택지에 없는데 어떻게 하죠

0

71

2

zip파일 다운받아서 풀었는데도 계속 오류가 생기네요

0

182

2

가격 수정만 자꾸 에러페이지로 갑니다...ㅜ

0

266

2

오류가 이렇게 뜨는데

0

496

1

타임리프 > jsp

0

96

1

File imprt 어떤거 해야하죠?

0

127

1

검색기능이 안됩니다

0

141

2

검색기능이 안됩니다

0

173

3

500에러

0

168

2

v2 객체 만드는중 입니다

0

123

2

오류가 자꾸 나는데 왜이러는 걸까요?ㅠㅠ

0

239

5

스프링 부트 버전

0

168

2

log.info가 적용이 안되는 문제

0

171

1

Spring Boot에서 jsp 연동 오류

0

317

1

7장 insert mapper erro 문의합니다

1

246

2

선생님 혹시 파일업로드도 알려주실수있나여?

2

593

1

선생님 혹시 세션하고 쿠키 부분 언제쯤 올려주실수있나여?

1

195

1

스프링 부트 2.x 버전 지원 중단, myBatis 추가가 안돼요

0

879

1

커뮤니티 버전에서 스프링 부트를 선택할수 없습니다.

1

346

1

안녕하세요 Ajax강의 잘듣고있습니다. 다름이 아니라 Ajax로 검색할떄 시작일이나 종료일 고객명과 같은 검색조건을 어떻게 구현해야하는지 고민을해보다 질문드립니다.

1

346

2

DB 생성시 발생 에러 관련! "Can't create table" "Error No 150. "Foreign key constraint is incorrectly formed")

1

525

0

int i = menuService.doInsert(coffee,kind,price); 이 코드 질문있어요

1

375

1

@Data 인식 문제

0

286

2