월 22,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결스프링 부트 개념과 활용
강의 진행되로 똑같이 했는데 jquery가 실행되지 않았는데
<script src="">https://code.jquery.com/jquery-3.3.1.min.js"></script> <script>jQuery(document).ready(function(){alert('ready!');});</script> junit5 인데 변경을 했더니 실행이 되었네요
- 미해결스프링 부트 개념과 활용
HateOas 가 업데이트가 되어서, "Spring HATEOAS" 코드를 아래처럼 하셔야 될겁니다.
package hello.hateoas; import org.springframework.hateoas.RepresentationModel; public class Hello extends RepresentationModel<Hello> { private String prefix; private String name; public String getPrefix() { return prefix; } public void setPrefix(String prefix) { this.prefix = prefix; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return prefix + name; } } package hello.hateoas; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.linkTo; import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.methodOn; @RestController public class SampleController { @GetMapping("hello") public Hello hello() { Hello hello = new Hello(); hello.setPrefix("Hey."); hello.setName("keesun"); hello.add(linkTo(methodOn(SampleController.class).hello()).withSelfRel()); return hello; } } Test Code 는 동일 합니다.
- 미해결스프링 부트 개념과 활용
springSecurit jwt에 대해서 질문드립니다.
강좌 완강하고 난뒤에 리액트랑 연계프로젝트 만들면서 jwt작업하다가 궁금한게 있어서 질문드립니다. 1.리액트(localhost:3000) ,스프링부트 (localhost:8080) 의 Cors 설정입니다 @Configuration @EnableWebMvc public class WebConfig { private static final Long MAX_AGE = 3600L; private static final int CORS_FILTER_ORDER = -102; @Bean public FilterRegistrationBean corsFilter() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); CorsConfiguration config = new CorsConfiguration(); config.setAllowCredentials(true); config.addAllowedOrigin("http://localhost:3000"); config.setAllowedHeaders(Arrays.asList( HttpHeaders.AUTHORIZATION, HttpHeaders.CONTENT_TYPE, HttpHeaders.ACCEPT)); config.setAllowedMethods(Arrays.asList( HttpMethod.GET.name(), HttpMethod.POST.name(), HttpMethod.PUT.name(), HttpMethod.DELETE.name())); config.setMaxAge(MAX_AGE); source.registerCorsConfiguration("/**", config); FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source)); bean.setOrder(CORS_FILTER_ORDER); return bean; } }Security 설정일부입니다 @Bean SecurityFilterChain filterChain(HttpSecurity http) throws Exception { return http .authorizeRequests(requests -> requests .requestMatchers("/login", "/signup", "/user").permitAll() .requestMatchers("http://localhost:8080/main") .hasAnyAuthority("ROLE_USER") ) .formLogin(login -> login .loginPage("/login") .usernameParameter("username") .loginProcessingUrl("/loginProcess") .successHandler((req, res, auth) -> { //여기선 토큰이 잘 나옵니다 데이터 String token = JwtUtil.generateToken(auth.getName()); res.addHeader("Authorization", "Bearer " + token); }) ) .logout(logout -> logout .logoutSuccessUrl("/login") .invalidateHttpSession(true) ) .csrf(csrf -> csrf.disable()) .build(); } 프론트쪽 react 입니다.axios .post(`${SERVER_URL}/loginProcess`, null, { params: loginData }) .then((response) => { //authorization,Authorization 바꿔봐도 둘다 안나옵니다. const token = response.headers["authorization"]; console.log("토큰:::::::::::::::::::::::::::::" + token); <==undefined가 나와요 localStorage.setItem("token", token); }) .catch((error) => console.log("Error:", error));문제점 : 서버에서 로그인은 정상적으로 되고 token생성까진 되는데 jwt의 토큰을 클라이언트인 리액트 쪽에서 받아오질 못하네요 이거 혹시 어디가 잘못된건지 알수있을까요 ?
- 미해결스프링 부트 개념과 활용
섹션2 자동설정 부분 질문있습니다.
왼쪽이 spring-boot-starter, 오른쪽 spring-boot-getting-started입니다.둘다 패키지 이름은 me.gang으로 똑같고 수업과 똑같이 따라하면 started 프로젝트에서 holoman클래스를 찾을수 없다고 나옵니다. 어떻게 해야 해당 에러를 해결할 수 있나요?
- 미해결스프링 부트 개념과 활용
mongo shell 명령어 대체 mongo -> mongosh
https://www.mongodb.com/docs/manual/release-notes/6.0-compatibility/#legacy-mongo-shell-removedmongo 명령어가 mongodb 6.0이상부터 mongosh 명령어로 대체되었습니다학습하시는분들 참고하세용~
- 미해결스프링 부트 개념과 활용
데이터베이스 마이그레이션 강의에서 질문 있습니다
강의에서 에러가 나는 사례를 따라한 후 V1__init.sql의 이름의 V를 정상적으로 다시 대문자로 바꾸고 db.migration에 넣고 어플리케이션을 런했는데 여전히 Schema-validation: missing table [account] 에러가 뜨네요...아래는 제가 작성한 코드와 발생한 에러를 올렸습니다[V1__init.sql][V1__init.sql 오류?]이 부분은 schema.sql에서 그대로 복붙하고 첫번째 줄인 if exists 부분과 뒤에 ;를 붙이는것만 진행했는데 이런 현상이 나타납니다[application.properties][명령 프롬프트][에러]2023-01-16 17:30:34.391 INFO 17036 --- [ main] m.w.s.SpringbootjpaApplication : Starting SpringbootjpaApplication using Java 11 on DESKTOP-66DSP0G with PID 17036 (C:\Users\K\Downloads\study\3\스프링 데이터 8부 데이터베이스 마이그레이션\springbootjpa\target\classes started by K in C:\Users\K\Downloads\study\3\스프링 데이터 8부 데이터베이스 마이그레이션\springbootjpa)2023-01-16 17:30:34.393 INFO 17036 --- [ main] m.w.s.SpringbootjpaApplication : No active profile set, falling back to 1 default profile: "default"2023-01-16 17:30:34.773 INFO 17036 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.2023-01-16 17:30:34.803 INFO 17036 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 24 ms. Found 1 JPA repository interfaces.2023-01-16 17:30:35.215 INFO 17036 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)2023-01-16 17:30:35.226 INFO 17036 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]2023-01-16 17:30:35.226 INFO 17036 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.70]2023-01-16 17:30:35.299 INFO 17036 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext2023-01-16 17:30:35.299 INFO 17036 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 873 ms2023-01-16 17:30:35.392 INFO 17036 --- [ main] o.f.c.internal.license.VersionPrinter : Flyway Community Edition 8.5.13 by Redgate2023-01-16 17:30:35.393 INFO 17036 --- [ main] o.f.c.internal.license.VersionPrinter : See what's new here: https://flywaydb.org/documentation/learnmore/releaseNotes#8.5.132023-01-16 17:30:35.393 INFO 17036 --- [ main] o.f.c.internal.license.VersionPrinter :2023-01-16 17:30:35.397 INFO 17036 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...2023-01-16 17:30:35.519 INFO 17036 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.2023-01-16 17:30:35.533 INFO 17036 --- [ main] o.f.c.i.database.base.BaseDatabaseType : Database: jdbc:postgresql://localhost:5432/springboot (PostgreSQL 15.1)2023-01-16 17:30:35.542 WARN 17036 --- [ main] o.f.c.internal.database.base.Database : Flyway upgrade recommended: PostgreSQL 15.1 is newer than this version of Flyway and support has not been tested. The latest supported version of PostgreSQL is 14.2023-01-16 17:30:35.559 INFO 17036 --- [ main] o.f.core.internal.command.DbValidate : Successfully validated 0 migrations (execution time 00:00.010s)2023-01-16 17:30:35.559 WARN 17036 --- [ main] o.f.core.internal.command.DbValidate : No migrations found. Are your locations set up correctly?2023-01-16 17:30:35.566 INFO 17036 --- [ main] o.f.core.internal.command.DbMigrate : Current version of schema "public": << Empty Schema >>2023-01-16 17:30:35.568 INFO 17036 --- [ main] o.f.core.internal.command.DbMigrate : Schema "public" is up to date. No migration necessary.2023-01-16 17:30:35.656 INFO 17036 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]2023-01-16 17:30:35.693 INFO 17036 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.6.14.Final2023-01-16 17:30:35.806 INFO 17036 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}2023-01-16 17:30:35.871 INFO 17036 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.PostgreSQL10Dialect2023-01-16 17:30:36.187 ERROR 17036 --- [ main] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [account]2023-01-16 17:30:36.188 WARN 17036 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [account]2023-01-16 17:30:36.188 INFO 17036 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...2023-01-16 17:30:36.193 INFO 17036 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.2023-01-16 17:30:36.194 INFO 17036 --- [ main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]2023-01-16 17:30:36.200 INFO 17036 --- [ main] ConditionEvaluationReportLoggingListener :Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2023-01-16 17:30:36.210 ERROR 17036 --- [ main] o.s.boot.SpringApplication : Application run failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [account]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.24.jar:5.3.24]at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.24.jar:5.3.24]at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.24.jar:5.3.24]at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.7.jar:2.7.7]at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.7.jar:2.7.7]at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.7.jar:2.7.7]at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.7.jar:2.7.7]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.7.jar:2.7.7]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.7.jar:2.7.7]at me.whiteship.springbootjpa.SpringbootjpaApplication.main(SpringbootjpaApplication.java:10) ~[classes/:na]Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [account]at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:421) ~[spring-orm-5.3.24.jar:5.3.24]at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.24.jar:5.3.24]at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.24.jar:5.3.24]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.24.jar:5.3.24]... 16 common frames omittedCaused by: org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [account]at org.hibernate.tool.schema.internal.AbstractSchemaValidator.validateTable(AbstractSchemaValidator.java:129) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.tool.schema.internal.GroupedSchemaValidatorImpl.validateTables(GroupedSchemaValidatorImpl.java:42) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.tool.schema.internal.AbstractSchemaValidator.performValidation(AbstractSchemaValidator.java:97) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.tool.schema.internal.AbstractSchemaValidator.doValidation(AbstractSchemaValidator.java:76) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:204) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:85) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:335) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.14.Final.jar:5.6.14.Final]at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.24.jar:5.3.24]at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.24.jar:5.3.24]at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.24.jar:5.3.24]... 20 common frames omitted종료 코드 1(으)로 완료된 프로세스
- 미해결스프링 부트 개념과 활용
자동 설정 만들기 2부에서 질문 있습니다
자동 설정 만들기 2부:@ConfigurationProperies에서 진행하다가 에러가 발생했습니다spring boot getting started 프로젝트에서 빈을 등록하지 않으면spring boot starter의 HolomanConfiguration에서 @ConditionalOnMissingBean과 AutoConfiguration을 통해HolomanProperties의 값을 참조해서 application.properties에 있는 내용으로 빈을 만드는 것으로 이해했습니다따라서 Application 프로젝트에서 빈을 재정의할 필요없고 properties만 정의하면 되는 것으로 알고 강사님 코드를 다시 살펴봤는데 어디를 고쳐야 되는지 잘 모르겠습니다...아래는 HolomanProperties와 에러가 발생한 실행결과를 올렸습니다
- 미해결스프링 부트 개념과 활용
의존성 관리 응용 부분에서 질문 있습니다
강의 내용처럼 dependency를 추가하려고 spring-boot-starter-data-jpa를 입력했는데 빨간 글씨로 나타나네요마우스 커서를 올려보니 종속성 'org.springframework.boot:spring-boot-starter-data-jpa:2.7.7을(를) 찾을수 없습니다' 이렇게 뜹니다구글링을 해봤지만 이 부분에 대한 해답을 찾기 어려워 질문 드립니다
- 미해결스프링 부트 개념과 활용
Intellij 에서 빈 주입할때 계속 빨간줄이 뜨는데 어떻게 고쳐야 할까요
프로젝트에 이상한 현상이 2개가 있어요. 이것저것 해봐도 해결되지 않아 질문드려요ㅜ 1) 이상한점 하나 :: 빨간줄 첨부사진처럼 빈 주입하고 있는데 빨간줄이 뜨는데 잘은 돌아가요 2) 오히려 빨간줄 안뜨는 빈주입이 있는 클래스에서 아래의 예외가 발생해요 NoSuchBeanDefinitionException ** 이것저것 조사해본결과 인텔리제이에서 프로젝트구조를 인식을 못하는것같은데 어떻게 고쳐야하는지 감이 안오네요 project structure 부분을 만지면 될까요(Ctrl + alt + shift + s)
- 미해결스프링 부트 개념과 활용
자동설정으로 다른 프로젝트 빈 사용(번외질문)
자동설정 만들기에서 궁금증이 생겨 질문드립니다. 자동설정만들기에서 spring.factories파일안에 자동설정파일(@Configuration 이나 @ConditinalOnxxx 붙은)을 읽어가 거기에 직접 @Bean이나 @Autowired 된 빈을 import한 다른 프로젝트에 자동 등록되어 빈으로 사용가능한것은 이해했습니다. 근데 여기서 import될 프로젝트에서 componentScan으로 빈 등록된 것들은 import 를 해도 다른 프로젝트에서 빈으로 사용이 안되는건가요? 다른 프로젝트에서 빈으로 사용하려면 @Configuration애너테이션이 붙은 객체에 직접 @Bean등록이나 @Autowired를 꼭 넣어줘야하는건지 문의드립니다.
- 미해결스프링 부트 개념과 활용
CREATE TABLE 예제 따라하다가 'expected "identifier"; SQL statement:' 오류나는 경우
강의를 따라하다가 아래와 같은 에러가 나며 종료가 되었는데 테이블명 USER 대신 USERS 로 변경하니 정상동작 했습니다. 다른분들 참고하세요. Spring Boot 2.7.0 버전 입니다. java.lang.IllegalStateException: Failed to execute ApplicationRunner at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:765) ~[spring-boot-2.7.0.jar:2.7.0] at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:752) ~[spring-boot-2.7.0.jar:2.7.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) ~[spring-boot-2.7.0.jar:2.7.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.0.jar:2.7.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.0.jar:2.7.0] at com.example.db.DbApplication.main(DbApplication.java:10) ~[classes/:na] Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "CREATE TABLE [*]USER(id INTEGER NOT NULL, name VARCHAR(255), PRIMARY KEY (id));"; expected "identifier"; SQL statement: CREATE TABLE USER(id INTEGER NOT NULL, name VARCHAR(255), PRIMARY KEY (id)); [42001-212] at org.h2.message.DbException.getJdbcSQLException(DbException.java:502) ~[h2-2.1.212.jar:2.1.212] at org.h2.message.DbException.getJdbcSQLException(DbException.java:477) ~[h2-2.1.212.jar:2.1.212]
- 미해결스프링 부트 개념과 활용
junit5 관련하여 질문드립니다.
안녕하세요 백기선 강사님 항상 퀄리티 높은 스프링 강의 잘 수강하고 있습니다. 여쭤볼게 하나 있어서 질문을 하게 되었는데, 이 강의에서 테스트 코드를 작성하신건 junit4 인듯싶습니다. 현재 저는 junit5로 테스트 코드를 작성하고있는데, MockMvc가 의존성 주입이 안된다고 하고 있습니다. 하지만 테스트는 통과가 되는데 혹시 왜 이런 현상이 발생하는지에 대해 아시는지 궁금합니다. 아래 사진과 같습니다.
- 미해결스프링 부트 개념과 활용
맨 처음 프로젝트 생성 후 Run 시 에러
안녕하세요 강의 수강 시작한 학생입니다. 스프링 부트 프로젝트 생성 후 Run 시 문제가 발생하는데... 아무리 검색을 해 봐도 잘 모르겠어서 질문 남깁니다. Lombok 얘기가 있긴 한데... 그 이유때문은 아닌 것 같은데 혹시 초기 설정이나 그런 쪽으로 제가 빼 먹은 것이 있을까요? class는 완전 기본 형태인 main 안에 SpringApplication.run(Applicaion.class, args); 만 작성되어 있는 상태 입니다.
- 미해결스프링 부트 개념과 활용
외부 설정과 관련된 질문입니다.
[질문] @Value로 정의된 값을 특정 클래스에서만 다르게 값을 재정의 할 수 있나요? [내용] ....->a->b->c->.... 순서로 읽히는 클래스가 있을 때 (....은 이전, 이후 클래스들 입니다.) a와 a이전 클래스들, c와 c이후 클래스들은 외부설정의 우선순위(3) application.properties 파일의 key, value를 읽고 b에서만 외부설정의 우선순위(13) @TestProperty로 해당 key, value를 재정의 한 값을 읽히려고 합니다. 결국 ....(3)->a(3)->b(13)->c(3)->....(3)을 의도하였는데 위와 같이 세팅을 하고 나서 run하면 ....(3)->a(3)->b(13)->c(13)->....(13)이 되어버립니다. 투박하지만 c에서 다시 @TestProperty와 같은 상위 외부 설정을 통해 다시 Override하면 되겠지만, 추후 클래스가 추가되는 경우엔 굉장히 비효율적이라고 생각해서 어렵네요. 의도하고자 한 내용대로 구현하는 방법이 있을까요?
- 미해결스프링 부트 개념과 활용
test와 runner account.setEmail에 동일한 값 입력
runner클래스 안의 account email과 Test 클래스 안의 account email을 같은 값으로 입력하고 테스트를 실행하면 유니크 에러가 뜨는데 이유가 궁금합니다. 서로 다른값을 입력하고 테스트를 실행하면 에러는 뜨지 않습니다.
- 미해결스프링 부트 개념과 활용
컨트롤러 view 호출
안녕하세요 강의 듣고 혼자 이것저것 해보고있는데 타임리프 의존성을 추가하지 않으면 컨트롤러에서 view를 호출을 못하던데 스프링 부트로 컨트롤러로 view를 호출하려면 무조건 타임리프 의존성을 추가해야하는지 궁금해서 질문드립니다.
- 미해결스프링 부트 개념과 활용
JVM 과 arguments 는 뭔가요???
저게 뭔지몰라서 뭘하시려는건지 모르겠어요..
- 미해결스프링 부트 개념과 활용
pom 테그 에러
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spriog-boot-autoconfigure</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-autoconfigure-processor</artifactId> <optional>true</optional> </dependency></dependencies> Cannot resolve org.springframework.boot:spriog-boot-autoconfigure:unknown 라는 오류가 나는데 jar파일이 없어서 나는것같습니다.. 따로 다운을 받아야하는건지..
- 미해결스프링 부트 개념과 활용
안녕하십니까 기선님!!!!! webclient와 비동기관련 질문요청드립니다
안녕하십니까. 기선님처럼 되고싶은 1년차 주니어 개발자입니다. 제 개인 프로젝트 중에 현재는 동기방식 restTemplate으로 한번에 여러 군데에 요청을 던지는 기능이 구현되어 있는데 일부 요청이 오래 걸리는 것들이 있어서 스레드를 오래 물고있다는 판단을 하여 해당 기능을 nio 방식으로 전환하려고 합니다.(webclient)웹서버는 io/nio모두 지원하는 undertow를 사용하고 있으며, 스프링 mvc를 사용하고 있습니다. 본론으로 제가 해당 프로젝트에 한번 외부로의 요청에 각각 응답시간이 다른 여러곳에 일부는 오래걸리는 요청을 던지기 위해 비동기 처리로 수정하여 개발하려고 하는데, @Async나 CompletableFuture말고 webflux를 추가하여 mvc+webflux의 형태로 개발해도 괜찮을지 여쭤보고 싶습니다.(이게 개인 프로젝트가 아닌 실무에서도 가능할지) webflux와 mvc를 같이 쓰면 않좋다는 이전 토비님 말씀과 예전 구글링 글들도 있지만, 제 개인적인 생각에는 undertow는 예전 3.0 서블릿과는 다르게 io/nio를 함께 처리해주기 때문에 webflux + mvc 두개를 같이 써서 필요한 부분에 비동기 처리중에서도 pub/sub구조와 backpressure가 구현되어 있는 webflux-reacotr를 일부 도입해도 괜찮지 않을까하여 여러곳들을 전전하며 찾아보고 있었습니다.제 부족한 실력으로는 어깨너머로 알게된 지식으로 스스로 원하는 결론을 그냥 내린것 같은 생각이 강하게 들고, 마땅한 결론에 도달하지 않아서 여쭙고싶습니다!!!!!
- 미해결스프링 부트 개념과 활용
webEnvironment 내장 톰캣
webEnvironment에서타입에 따라 내장 톰캣 구동을 하고 안하고 라고 써져있는데어떤 차이인지 잘 모르겠습니다. 둘다 서버를 사용하긴 하는것 아닌가요?