스프링 웹 MVC

스프링 웹 MVC

(37개의 수강평)

788명의 수강생
110,000원
지식공유자 · 백기선
60회 수업 · 총 10시간 36분 수업
평생 무제한 시청
수료증 발급 강의
수강 난이도 '중급'
Sujin Huh 프로필

config문제? Sujin Huh 1일 전

선생님 war 찾아서 넣었습니다.!

서버도 연결이 되었다고 뜨는데,

Run 시키면 페이지가  지동으로 실행 페이지가 나오고404문제가 뜹니다. 경로 문제인가요..?

3
Sujin Huh 프로필

질문있습니다. Sujin Huh 4일 전

fix버튼을 누르니까  바로 Structure가 나왔습니다. 어디서 설정을 해야 하나요..?

9분21초형상을 보고 실습중이였습니다. 

저는 Tomcat8.5.47을 사용 하고 있습니다.

선생님 코드를 받아도같은 문제가 발생할까요..?

강의중에 선생님께서 Servlet 부분 실습은 보기만해도 상관이 없을까요?

3
김명우 프로필

톰캣 add configuration에서 설정.. 김명우 6일 전

윈도우를 쓰고있습니다..말씀하신대로 설정을 다했는데 tomcat Run이 안되네요 ㅠㅠ;

2
김예찬 프로필

다른 Controller에서 Session 사용 김예찬 13일 전

AController에서  @SessionAttributes("user")를 이용하여user를 Session에 설정하였을 때 다른 BController에서 user값을 사용하기 위해서는 할 수 있는 다른 방법이 있나요? 

2
홍은모 프로필

@EnableWebMvc 와 @Configuration을 동시에 쓸 때 테스트에서 에러가납니다 홍은모 29일 전

RootConfig과 ServletConfig으로 계층형 컨텍스트를 구성하고있습니다( 레거시 프로젝트입니다 )

ServletConfig에 @EnableWebMvc와 @Configuration을 주고 테스트를 돌려보면 No ServletContext set 이라는 익셉션이 발생합니다 (실제 웹에서는 잘 동작됩니다)

근데 @Configuration을 제거하고, @EnableWebMvc만을 적용하면 테스트가 잘 통과됩니다.

제 생각으로는

ServletConfig에 달아준 @EnableWebMvc가 @Import 하고있는 DelegatingWebMvcConfiguration이 @Configuration을 달고 기본적인 셋팅이 되어있는데,

여기서 제가 ServletConfig에 @Configuration을 주니까DelegatingWebMvcConfiguration의 기본세팅이 무시되서 그런걸까요?

또 이렇게 ServletConfig -> @EnableWebMvc -> @Import(DelegatingWebMvcConfiguration) -> DelegatingWebMvcConfiguration -> @Configuration

몇 번의 단계를 거쳐야 @Configuration 이 있는데요, ServletConfig에 @Bean으로 빈을 등록해도 문제가 없을까요?

2
parkht 프로필

PetClinic에서 @ModelAttribute와 @PathVariable parkht 1달 전

안녕하세요. PetClinic 소스를 보다가 질문이 있어서 올립니다.

 @ModelAttribute("owner")

    public Owner findOwner(@PathVariable("ownerId") int ownerId) {

        return this.owners.findById(ownerId);

    }

이와 같은 코드면, Controller에 있는 핸들러 중@PathVariable로 ownerId를 받는 핸들러만 사용 가능한건가요?

3
castinglife 프로필

문의및 요청 드립니다. castinglife 1달 전

기본 기능들이 구현된 간단한 어플리케이션을 만드는 과정을 만드는 코딩 과정을 강좌로 만들어 주시면 어떨까요?

강좌 전체를 수강해도 프로젝트 전체 그림이 그려지지 않는것 같습니다.

1
Ohsang Kwon 프로필

HttpEntity에서 @Valid 사용법 Ohsang Kwon 1달 전

RequestBody 대신 HttpEntity를 사용하면 @Valid를 사용 하지 못하는 것 같은데, 맞나요?

1
parkht 프로필

@SessionAttributes에 저장된 객체 parkht 1달 전

/events/form-name에서 이름을 넣고 submit하면 세션에 변경된 객체가 저장되는 것으로 알고 있는데요.

값을 입력하고 넣어도 계속 null로 인식해서 bindingResult에 오류가 계속 반복됩니다.

eventsFormNameSubmit에서 HttpSession을 받아서 session에 저장된 객체의 getName()을 찍어봤는데 계속 null이더라구요.

강사님 코드를 보고 일일이 비교했을 때 이상은 없는데 왜그럴까요?

1
SimonDev 프로필

컨트롤러에 적용되는 파라미터에 대해 문의드립니다. SimonDev 1달 전

안녕하세요.

항상 좋은 강의를 만들어주셔서 감사드립니다.

궁금한게 있어서 질문드립니다.

컨트롤러를 만들 때, 아래 코드와 같이 파라미터에 아무 애노테이션을 주지 않으면 어떻게 처리가 되는지 궁금합니다.

밑에 보시면 /search라는 요청이 올 경우 parameter1, parameter2, pageable을 받아서 처리하도록 되어 있는데 기본적으로 각 파라미터에 @RequestParam(required=false) 가 붙는다고 생각하면 되는 걸까요? @RequestMapping에 연결되어 있는 스프링 레퍼런스를 읽어봐도 관련된 내용이 나오지 않아서요. 내용을 아시면 코멘트 부탁드리겠습니다.
https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-arguments

@RestController

public class Controller1 {

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

public ResponseEntity<?> search(String parameter1,

String parameter2,

Pageable pageable) {

     // 컨트롤러 비즈니스 로직

}

}

감사합니다.

2
songjimin 프로필

기선님이 강좌에서 사용하시는 Google Docs 파일을 볼 수는 없나요? songjimin 1달 전

기선님이 강좌에서 사용하는 Google Docs 파일은 따로 받을 수는 없나요?

가능하시면 수강생들에게  공유 해주시면 좋을것 같아요~

3
이인규 프로필

강좌 내용은 아니지만 Java final 관련해서 궁금한점이 있어서 질문드립니다. 이인규 1달 전

안녕하세요 기선님

최근에 한번만 값이 할당되는 변수에는 실수를 줄이기 위해서 명시적으로 final을 붙여주면 좋다는 글을 봤습니다.

저도 그 말이 맞다고 생각해서 실제로 코딩할 때 붙이는 습관을 들이려 하는데,

제 생각이 맞는지 궁금하기도 하고, 실제로는 어떻게 사용되는지 궁금해서 질문드립니다.

기선님은 평소에 final을 어떤식으로 사용하시나요?

변수 말고도 메소드나 클래스에도 어떤식으로 사용하시는지 공유해주시면 정말 감사드릴 것 같습니다.

1
조남철 프로필

@ModelAttribute 바인딩이 되지 않습니다. 조남철 1달 전

== Controller ==

@Controller

public class  MainController {

@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody
public int addTest(@ModelAttribute TestVo _testVo) {
TestVo testVo = _testVo;
System.out.printf("%s", testVo.getName());
// null 출력
return 0;
}

}

=== Model ===

public class TestVo {

private int id;
private String name;

public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

}

이렇게 작성한 후에 PostMan 프로그램을 통해서 아래 와 같이 전달 하였는데 전달 _testVo 객체의 값이 모두 비어 있습니다. 강좌를 이해하기로는 변수명이 맞으면 바인딩이 되는 것처럼 보였는데 왜 바인딩이 되지 않는 것인지 궁금합니다.

{

"id": 10

, "name": "cho"

}

@RequestBody 어노테이션을 이용하면 값이 매핑 되는데 무슨 차이가 있는지 궁금합니다. 

spring-webmvc : 4.3 버전을 사용하고 있습니다.

강좌 너무 감사히 잘 보고 있습니다.

고맙습니다.

7
이경환 프로필

setServletContext 설정 이유 이경환 1달 전

@EnableWebMvc의 WebMvcConfigurationSupport.class에서 servletContext를 참고하므로 setServletContext가 필요하다는 것은 이해됩니다. 여기서...

dispatcherServlet 생성 시 applicationContext를 인자로 받고, dispatcherServlet을 servletContext에 등록했기 때문에 applicationContext가 연결된 dispatcherServlet을 통해 servletContext를 찾을 수 있지 않을까 생각했지만 강의 내용처럼 setServletContext하지 않으면 'No ServletContext set' 에러가 발생하는 것을 확인했습니다.

servletContext에서 dispatcherServlet, dispatcherServlet에서 applicationContext가 설정되어 있어 servletContext > dispatcherServlet > applicationContext 방향으로 접근은 가능하나, 반대 방향은 설정되어 있지 않으므로 @EnableWebMvc를 위해 setServletContext를 설정한다고 보면 될까요?

3
parkht 프로필

Formatter로 여러개 PathVariable 받기 parkht 2달 전

Formatter의 메소드를 살펴보면 한개의 String 타입을 Object로 바꾸거나, 한개의 Object를 한개의 String으로 바꾸는데요.

@PathVariable로 여러개의 인자를 받는 경우에는 Formatter를 사용할 수 없나요?

1
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스