스프링 부트 개념과 활용

스프링 부트 개념과 활용

(59개의 수강평)

1279명의 수강생
15% 할인 11일 남음

93,500원110,000원

백기선
평생
중급
수료증
62개 수업, 총 11시간 31분
Wishlist
성재우 프로필

bean 동적 생성 문의 성재우 15시간 전

안녕하세요.

스프링부트에서 executable jar를 만들어서 파라미터를 주면서 실행할 때, 입력받은 파라미터에 따라 다른 bean이 주입되도록 할 수 있나요?

처음에 로딩될때 빈들이 주입되고 시작해서 안될거같은데 혹시 방법이 있나 해서 여쭤봅니다..

1
dev 프로필

access 처리 부분 문의드립니다. dev 1일 전

안녕하세요. 강좌 잘 보고 있습니다. 

스프링부트로 개발중인데 기존 참고 소스에 아래 부분이 있습니다. 

    @Override

    public void configure(HttpSecurity http) throws Exception{

        http.authorizeRequests()

                .antMatchers("/").access("#oauth2.test.web")

                .anyRequest().authenticated();

    }

여기서 access("#oauth2.test.web") 이 부분은 어떤 걸 처리하는건지 궁금합니다. 

1
blossom_mind 프로필

Spring Boot OAuth2 방식에 대해서 질문드립니다 . blossom_mind 5일 전

다름이 아니라 스프링 부트를 공부하던 중에 

 

기존에 하던 로그인 방식 말고 oauth2를 적용해보자라는 생각이 들었습니다 ..

근데 궁금한게 생겼는데 ..

제가 만든앱을 Test라고 가정을 한다면 

 

최초 Test의 로그인 화면에서 로그인 할떄 보통 아이디,비밀번호를 넣자나요 ?

보통은 디비 비교 loadByUser 메소드로 비교해서 넘기겠지만 

 

Oauth2는 처음에 클라이언트 (아이디,비번 [로그인 입력한 아이디,비번 아닙니다]) 을 받고 맞으면 토큰을 

리소스 서버에 주고 거기서 개인정보나 이런것들을 가져오는걸로 아는데 ..

 

지금 예제를 여러개 보고 블로그나 유투브를 볼떄 느끼는 건데 Auth 서버 쪽에서 대부분 로그인을 하더라구요 

그러면 저같은 경우에는 test앱의 로그인 화면에서 아이디 비밀번호를 치고 --> 다시 Auth서버쪽의 로그인 화면에서 아이디 비밀번호를 쳐야하는건가요 ??

유투브에서 하신 강의 참조 해서 잘 보고 있구요 인강도 많은 도움 되고 있습니다 .

좋은 하루 보내세요 

 

 

 

1
정선환 프로필

Bean 등록에 실패 한거 같은데 해결해보려 아무리 해도 안되서 질문드립니다. 정선환 15일 전

Description:

Field holoman in com.sun.springinit.HolomanRunner required a bean of type 'me.sun.Holoman' that could not be found.

Action:

Consider defining a bean of type 'me.sun.Holoman' in your configuration.

 

발생한 에러 로그입니다. 버전 2.1.4 에서 2.0.4 로 변경 후 run 해도 동일하게 발생합니다..

어디 부분이 잘못 되었을까요..?

1
blossom_mind 프로필

질문드립니다 blossom_mind 15일 전

oauth2.0 을 구현을 하긴 했는데요. 블로그 공부하면서 ..

궁금한게 여러명의 사용자가 만약에 oauth2.0 방식으로 로그인 한다면 접속할떄의 클라이언트가 가지고 있는 clentId,clientPassword 도 각자다를 껀데 

그럼 회원가입할때 각자의 클라이언트 아이디 클라이언트 패스워드를  가지고 있어야 되는건가요 ?

 

 

sns연동하는 사람은 어떻게 받아올지 ....예제들은 보면 전부다 클라이언트ID랑 password를 박고 시작하더라구요 ..

 

4
이상현 프로필

스프링 부트 2.1.1 버전에서는 Tomcat에서 8080 포트가 열리지 않습니다. 이상현 11일 전

- 스프링 부트 2.1.1 버전에서는 톰캣 9.0 버전이 사용되고

Jun 02, 2019 11:33:48 PM org.apache.catalina.core.StandardContext setPath
경고: A context path must either be an empty string or start with a '/' and do not end with a '/'. The path [/] does not meet these criteria and has been changed to []
Jun 02, 2019 11:33:48 PM org.apache.catalina.core.StandardService startInternal
정보: Starting service [Tomcat]
Jun 02, 2019 11:33:48 PM org.apache.catalina.core.StandardEngine startInternal
정보: Starting Servlet Engine: Apache Tomcat/9.0.13

다음과 같이 나오고 실제로 8080이 연결 되지 않습니다.

- 스프링 부트 2.0.3 버전으로 하면 톰캣 8.5 버전이 실행되고 8080 접속이 제대로 됩니다.

Jun 02, 2019 11:38:41 PM org.apache.catalina.core.StandardContext setPath
경고: A context path must either be an empty string or start with a '/' and do not end with a '/'. The path [/] does not meet these criteria and has been changed to []
Jun 02, 2019 11:38:42 PM org.apache.coyote.AbstractProtocol init
정보: Initializing ProtocolHandler ["http-nio-8080"]
Jun 02, 2019 11:38:42 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
정보: Using a shared selector for servlet write/read
Jun 02, 2019 11:38:42 PM org.apache.catalina.core.StandardService startInternal
정보: Starting service [Tomcat]
Jun 02, 2019 11:38:42 PM org.apache.catalina.core.StandardEngine startInternal
정보: Starting Servlet Engine: Apache Tomcat/8.5.31
Jun 02, 2019 11:38:42 PM org.apache.coyote.AbstractProtocol start
정보: Starting ProtocolHandler ["http-nio-8080"]

 

실제로 netstat 에서 8080이 사용되지 않네요.

 

감사합니다.

1
JeongWoon Koo 프로필

java.util.concurrent.ExecutionException JeongWoon Koo 16일 전

자바 코드로 톰캣 만들때 계속 에러가 나는데 이 부분 그냥 넘어가도 상관없는 거겠지요?

public static void main(String[] args) throws LifecycleException {

Tomcat tomcat = new Tomcat();
tomcat.setPort(8080);

Context context = tomcat.addContext("/", "/");
tomcat.start();
}

1
8miles 프로필

두번째 Bean 등록하니까 이렇게 에러가 나오네요. 각각 실행할때는 안나는데요. 동시 실행하니까 나네요. 8miles 21일 전

Description:

The bean 'holoman', defined in class path resource [me/fun/HolomanConfiguration.class], could not be registered. A bean with that name has already been defined in me.fun.springboot1.Springboot1Application and overriding is disabled.

1
8miles 프로필

인텔리제이 단축키 F4 : 상위 소스 추적 8miles 26일 전

질문은 아니고.. 제가 헤메서 남김니다^^

1
배광민 프로필

안녕하세요 강의 잘 들었습니다!! 배광민 1달 전

안녕하세요~ 

강의 잘 들었습니다! 많은 도움이 되었습니다. 유투브에 올라오는 영상도 잘 챙겨보면서 많을걸 배우고 있습니다.

강좌에서 보면 mvn package를 통해 jar형태로 패키징을 하고 있습니다.

공부를 위해 war로 배포로 하여 호스팅해서 올려보고싶은데 war로 패키징 하려면 다른 설정과 방법이 필요한가요? 알고싶습니다.

그리고 혹시 강의자료는 어디서 다운받을 수 있을까요? 

강의자료를 보고싶은데 찾지를 못하구있네요..

1
blossom_mind 프로필

질문드립니다. blossom_mind 1달 전

강좌보고 공부하면서 혼자 코딩을 하던중에 

ajax를 이용해서 게시판 등록을 해봤는데요 

   var formData = $("#replyForm").serializeObject();

          console.log(formData);

    $.ajax({

        type: "POST",

        contentType : "application/json; charset=utf-8",  

        url: "/replyWriteAction",

        data: formData,

        dataType: 'json',

        cache: false,

        timeout: 600000,

        success: function (data) {

                      },

        error: function (e) {

        }

컨트롤러 파일입니다 .

@RequestMapping(value = "/replyWriteAction", method = RequestMethod.GET, produces = { MediaType.APPLICATION_JSON_VALUE })

public void replyWriteAction(@ModelAttribute Comment comment)

{

logger.debug("!>>55555555555555555>>>>>>"+comment.toString());

}

 

ajax 통신을 했는데 

There was an unexpected error (type=Bad Request, status=400).
Required request body is missing: public void com.sakumall.com.controller.BoardController.replyWriteAction(com.sakumall.com.entities.Comment)
org.springframework.http.converter.HttpMessageNotReadableException: Required request body is missing: public void com.sakumall.com.controller.BoardController.replyWriteAction(com.sakumall.com.entities.Comment)
이렇게 에러가 발생하네요 ..해결책을 좀 알수있을까요 ?
 
github 주소입니다 .
ajax통신 부분 파일
html => board.html
server => BoardController.java
 
입니다 ..

1
임준혁 프로필

Holoman.java / HolomanProperties.java 관련 질문 임준혁 1달 전

HolomanProperties 클래스 파일을 이용해서

사용자가 application.properties 파일에 정의한대로 빈을 설정할 수 있는걸로 알고 있습니다.

 

다만, 제가 궁금한 점은

Holoman 클래스 안에 멤버 변수나 멤버 함수가 변경되면 HolomanProperties도 같이 변경해야 하기때문에 나중에 관리할 파일들이 많아지면.... 다 일일히 수정해야하는건가요?

2
강덕구 프로필

내장 tomcat 에 대한 질문. 강덕구 1달 전

안녕하세요, 기선님.

항상 강의 잘 보고 있습니다.

흔히들 보통, 스프링boot는 내장 tomcat이 있어서 바로 이걸로 서버를 띄울수 있다. 라고 하고, 본 강의 내에서도 내장 tomcat이라고 말씀을 하시더라구요.

그래서 문득 궁금한 점이 생겨 문의드립니다.

처음에는, "내장 tomcat 이라는게 스프링 boot framekwork 안에 기본적으로 tomcat이 함께 들어가 있구나" 라고 생각했는데

pom강의 를 보면서 생각이 든 점이,
spring boot framework 안에 tomcat이 기본 내장되어 있기보다는 어떤 특정 starter에서 (spring-boot-starter-web 인것 같습니다) tomcat 에 대한 dependency 가 어떤 pom에 들어가 있고, 우리가 만든 spring boot app 이 build 될때 이 의존성에 의해 tomcat이 maven에 의해 불러져 띄워지는것 같은데 제가 이해한 내용이 맞을까요?

 

항상 좋은 강의 감사드립니다~!

 

 

1
강덕구 프로필

starter 생성시 질문입니다. 강덕구 1달 전

안녕하세요.

xxx-spring-boot-starter 를 커스텀하여 만들었는데요.

 

이 경우 강의와 같이 아래 dependencies를 추가해주었는데

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure-processor</artifactId>
<optional>true</optional>
</dependency>
</dependencies>

이걸 없이 빌드해도 다른 project에서 해당 starter의 jar파일을 가져와 자동으로 bean으로 등록해주는데 문제가 없더라구요.

그럼 이 경우, 이걸 추가해주는 이유가 무엇인가요?

궁금합니다~!

1
전성환 프로필

@controllerAdvice 설정이 잘 되지 않네요 ㅠ_ㅠ 전성환 1달 전

안녕하세요ㅎ 유익한 강의 잘 듣고있습니다 ㅎ
강의 내용 연습 중에 막히는 부분이 있어 질문드립니다

@ControllerAdvice 이용해서 global Exception handler를 만들어보려고 했는데 잘 되지않네요ㅜ_ㅜ

@ControllerAdvice
public class SampleGlobalExceptionHandler extends ResponseEntityExceptionHandler {

    @ExceptionHandler(SampleException.class)
    public AppError sampleError(SampleException e) {
        AppError appError = new AppError();
        appError.setMessage("controllerAdvice error.app.key ... " + e.getMessage());
        appError.setReason("hmm...");
        return appError;

    }
}
@RestController
public class SampleController {
    @GetMapping("/hello")
    public String hello(){
        return "Hello Planet.";
    }
    @GetMapping("/ex")
    public String exception() {
        throw new SampleException();
    }
}

답변 부탁드립니다 ㅠ_ㅠ

github : https://github.com/wooowangsh/springboot-exercise.git

4