묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
depth가 2단계인 상속관계는 어떻게 설계를 해야 할까요?
depth가 2단계의 상속관계를 셋팅하는 경우 id는 최상위 엔티티의 id를 모두 공유하는 방식으로 설계를 해야 할까요?예를 들어 A가 최상위 A를 상속하는 AA, BB 그리고 다시 AA를 상속하는 AAA, BBB. CCC가 있다면 AAA를 만드는 경우 A의 id를 AA, AAA모두가 공유하는 방식이어야 하는건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 데이터베이스 테이블 생성이 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]2023-09-06T15:55:42.478+09:00 INFO 7976 --- [ restartedMain] jpabooks.jpashop.JpashopApplication : Starting JpashopApplication using Java 17.0.7 with PID 7976 (D:\SelfStudySpring\jpashop\out\production\classes started by sjj in D:\SelfStudySpring\jpashop)2023-09-06T15:55:42.483+09:00 INFO 7976 --- [ restartedMain] jpabooks.jpashop.JpashopApplication : No active profile set, falling back to 1 default profile: "default"2023-09-06T15:55:42.569+09:00 INFO 7976 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable2023-09-06T15:55:42.570+09:00 INFO 7976 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'2023-09-06T15:55:43.452+09:00 INFO 7976 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.2023-09-06T15:55:43.482+09:00 INFO 7976 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 20 ms. Found 0 JPA repository interfaces.2023-09-06T15:55:44.366+09:00 INFO 7976 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8086 (http)2023-09-06T15:55:44.380+09:00 INFO 7976 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]2023-09-06T15:55:44.380+09:00 INFO 7976 --- [ restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.12]2023-09-06T15:55:44.496+09:00 INFO 7976 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext2023-09-06T15:55:44.498+09:00 INFO 7976 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1926 ms2023-09-06T15:55:44.655+09:00 INFO 7976 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...2023-09-06T15:55:44.856+09:00 INFO 7976 --- [ restartedMain] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b user=SA2023-09-06T15:55:44.858+09:00 INFO 7976 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.2023-09-06T15:55:44.873+09:00 INFO 7976 --- [ restartedMain] o.s.b.a.h2.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b'2023-09-06T15:55:45.058+09:00 INFO 7976 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]2023-09-06T15:55:45.138+09:00 INFO 7976 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.2.7.Final2023-09-06T15:55:45.141+09:00 INFO 7976 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000406: Using bytecode reflection optimizer2023-09-06T15:55:45.313+09:00 INFO 7976 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy2023-09-06T15:55:45.520+09:00 INFO 7976 --- [ restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer2023-09-06T15:55:45.966+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983345966 | took 9ms | statement | connection 2| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504bselect * from INFORMATION_SCHEMA.SEQUENCESselect * from INFORMATION_SCHEMA.SEQUENCES;2023-09-06T15:55:45.983+09:00 INFO 7976 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy2023-09-06T15:55:46.832+09:00 INFO 7976 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]2023-09-06T15:55:46.853+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists category cascade 2023-09-06T15:55:46.854+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346854 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists category cascade drop table if exists category cascade ;2023-09-06T15:55:46.855+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists category_item cascade 2023-09-06T15:55:46.855+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346855 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists category_item cascade drop table if exists category_item cascade ;2023-09-06T15:55:46.855+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists delivery cascade 2023-09-06T15:55:46.855+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346855 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists delivery cascade drop table if exists delivery cascade ;2023-09-06T15:55:46.855+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists item cascade 2023-09-06T15:55:46.855+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346855 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists item cascade drop table if exists item cascade ;2023-09-06T15:55:46.855+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists member cascade 2023-09-06T15:55:46.855+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346855 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists member cascade drop table if exists member cascade ;2023-09-06T15:55:46.856+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists order_item cascade 2023-09-06T15:55:46.856+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346856 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists order_item cascade drop table if exists order_item cascade ;2023-09-06T15:55:46.856+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop table if exists orders cascade 2023-09-06T15:55:46.856+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346856 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop table if exists orders cascade drop table if exists orders cascade ;2023-09-06T15:55:46.856+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists category_seq2023-09-06T15:55:46.857+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346857 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists category_seq drop sequence if exists category_seq;2023-09-06T15:55:46.857+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists delivery_seq2023-09-06T15:55:46.857+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346857 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists delivery_seq drop sequence if exists delivery_seq;2023-09-06T15:55:46.857+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists item_seq2023-09-06T15:55:46.857+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346857 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists item_seq drop sequence if exists item_seq;2023-09-06T15:55:46.858+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists member_seq2023-09-06T15:55:46.858+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346858 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists member_seq drop sequence if exists member_seq;2023-09-06T15:55:46.858+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists order_item_seq2023-09-06T15:55:46.858+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346858 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists order_item_seq drop sequence if exists order_item_seq;2023-09-06T15:55:46.858+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists orders_seq2023-09-06T15:55:46.858+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346858 | took 0ms | statement | connection 3| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b drop sequence if exists orders_seq drop sequence if exists orders_seq;2023-09-06T15:55:46.863+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence category_seq start with 1 increment by 502023-09-06T15:55:46.865+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346865 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence category_seq start with 1 increment by 50 create sequence category_seq start with 1 increment by 50;2023-09-06T15:55:46.865+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence delivery_seq start with 1 increment by 502023-09-06T15:55:46.865+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346865 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence delivery_seq start with 1 increment by 50 create sequence delivery_seq start with 1 increment by 50;2023-09-06T15:55:46.865+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence item_seq start with 1 increment by 502023-09-06T15:55:46.866+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346866 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence item_seq start with 1 increment by 50 create sequence item_seq start with 1 increment by 50;2023-09-06T15:55:46.866+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence member_seq start with 1 increment by 502023-09-06T15:55:46.866+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346866 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence member_seq start with 1 increment by 50 create sequence member_seq start with 1 increment by 50;2023-09-06T15:55:46.866+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence order_item_seq start with 1 increment by 502023-09-06T15:55:46.867+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346867 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence order_item_seq start with 1 increment by 50 create sequence order_item_seq start with 1 increment by 50;2023-09-06T15:55:46.867+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create sequence orders_seq start with 1 increment by 502023-09-06T15:55:46.867+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346867 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create sequence orders_seq start with 1 increment by 50 create sequence orders_seq start with 1 increment by 50;2023-09-06T15:55:46.869+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table category ( category_id bigint not null, parent_id bigint, name varchar(255), primary key (category_id) )2023-09-06T15:55:46.873+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346873 | took 3ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table category ( category_id bigint not null, parent_id bigint, name varchar(255), primary key (category_id) ) create table category ( category_id bigint not null, parent_id bigint, name varchar(255), primary key (category_id) );2023-09-06T15:55:46.874+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table category_item ( category_id bigint not null, item_id bigint not null )2023-09-06T15:55:46.874+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346874 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table category_item ( category_id bigint not null, item_id bigint not null ) create table category_item ( category_id bigint not null, item_id bigint not null );2023-09-06T15:55:46.874+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table delivery ( delivery_id bigint not null, city varchar(255), status varchar(255) check (status in ('READY','COMP')), street varchar(255), zipcode varchar(255), primary key (delivery_id) )2023-09-06T15:55:46.876+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346876 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table delivery ( delivery_id bigint not null, city varchar(255), status varchar(255) check (status in ('READY','COMP')), street varchar(255), zipcode varchar(255), primary key (delivery_id) ) create table delivery ( delivery_id bigint not null, city varchar(255), status varchar(255) check (status in ('READY','COMP')), street varchar(255), zipcode varchar(255), primary key (delivery_id) );2023-09-06T15:55:46.877+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table item ( price integer not null, stock_quantity integer not null, item_id bigint not null, dtype varchar(31) not null, actor varchar(255), artist varchar(255), author varchar(255), director varchar(255), etc varchar(255), isbn varchar(255), name varchar(255), primary key (item_id) )2023-09-06T15:55:46.878+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346878 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table item ( price integer not null, stock_quantity integer not null, item_id bigint not null, dtype varchar(31) not null, actor varchar(255), artist varchar(255), author varchar(255), director varchar(255), etc varchar(255), isbn varchar(255), name varchar(255), primary key (item_id) ) create table item ( price integer not null, stock_quantity integer not null, item_id bigint not null, dtype varchar(31) not null, actor varchar(255), artist varchar(255), author varchar(255), director varchar(255), etc varchar(255), isbn varchar(255), name varchar(255), primary key (item_id) );2023-09-06T15:55:46.878+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table member ( member_id bigint not null, city varchar(255), name varchar(255), street varchar(255), zipcode varchar(255), primary key (member_id) )2023-09-06T15:55:46.879+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346879 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table member ( member_id bigint not null, city varchar(255), name varchar(255), street varchar(255), zipcode varchar(255), primary key (member_id) ) create table member ( member_id bigint not null, city varchar(255), name varchar(255), street varchar(255), zipcode varchar(255), primary key (member_id) );2023-09-06T15:55:46.879+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table order_item ( count integer not null, order_price integer not null, item_id bigint, order_id bigint, order_item_id bigint not null, primary key (order_item_id) )2023-09-06T15:55:46.880+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346880 | took 0ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table order_item ( count integer not null, order_price integer not null, item_id bigint, order_id bigint, order_item_id bigint not null, primary key (order_item_id) ) create table order_item ( count integer not null, order_price integer not null, item_id bigint, order_id bigint, order_item_id bigint not null, primary key (order_item_id) );2023-09-06T15:55:46.882+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : create table orders ( status tinyint check (status between 0 and 1), delivery_id bigint unique, member_id bigint, order_date timestamp(6), order_id bigint not null, primary key (order_id) )2023-09-06T15:55:46.885+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346885 | took 2ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b create table orders ( status tinyint check (status between 0 and 1), delivery_id bigint unique, member_id bigint, order_date timestamp(6), order_id bigint not null, primary key (order_id) ) create table orders ( status tinyint check (status between 0 and 1), delivery_id bigint unique, member_id bigint, order_date timestamp(6), order_id bigint not null, primary key (order_id) );2023-09-06T15:55:46.886+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category2023-09-06T15:55:46.892+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346892 | took 6ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category alter table if exists category add constraint FK2y94svpmqttx80mshyny85wqr foreign key (parent_id) references category;2023-09-06T15:55:46.892+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item2023-09-06T15:55:46.894+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346894 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item alter table if exists category_item add constraint FKu8b4lwqutcdq3363gf6mlujq foreign key (item_id) references item;2023-09-06T15:55:46.894+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category2023-09-06T15:55:46.895+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346895 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category alter table if exists category_item add constraint FKcq2n0opf5shyh84ex1fhukcbh foreign key (category_id) references category;2023-09-06T15:55:46.895+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item2023-09-06T15:55:46.897+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346897 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item alter table if exists order_item add constraint FKija6hjjiit8dprnmvtvgdp6ru foreign key (item_id) references item;2023-09-06T15:55:46.897+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders2023-09-06T15:55:46.898+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346898 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders alter table if exists order_item add constraint FKt4dc2r9nbvbujrljv3e23iibt foreign key (order_id) references orders;2023-09-06T15:55:46.898+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery2023-09-06T15:55:46.899+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346899 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery alter table if exists orders add constraint FKtkrur7wg4d8ax0pwgo0vmy20c foreign key (delivery_id) references delivery;2023-09-06T15:55:46.899+09:00 DEBUG 7976 --- [ restartedMain] org.hibernate.SQL : alter table if exists orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member2023-09-06T15:55:46.901+09:00 INFO 7976 --- [ restartedMain] p6spy : #1693983346901 | took 1ms | statement | connection 4| url jdbc:h2:mem:1f4065c7-8198-4f9e-a2f8-a5551835504b alter table if exists orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member alter table if exists orders add constraint FKpktxwhj3x9m4gth5ff6bkqgeb foreign key (member_id) references member;2023-09-06T15:55:46.903+09:00 INFO 7976 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'2023-09-06T15:55:46.956+09:00 WARN 7976 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning2023-09-06T15:55:47.167+09:00 INFO 7976 --- [ restartedMain] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html]2023-09-06T15:55:47.418+09:00 INFO 7976 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 357292023-09-06T15:55:47.469+09:00 INFO 7976 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8086 (http) with context path ''2023-09-06T15:55:47.487+09:00 INFO 7976 --- [ restartedMain] jpabooks.jpashop.JpashopApplication : Started JpashopApplication in 5.642 seconds (process running for 6.434)
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
확실한 답을 못얻었습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 일단 페치조인으로 둘이상의 컬렉션은 페치 조인 할 수 없다는 걸 알았습니다, 이럴땐 배치사이즈로 컬렉션들을 in 절로 끌고오면 되는것도 이해했습니다. 궁금한것은 in절로 끌고온 컬렉션들안에 또 @oneToMany로 선언된 엔티티가 존재한다면 그 컬렉션들은 @Batchsize옵션으로 in절로 끌고 올 수 가 없나요? 배치 사이즈를 줘도 컬조회할 기준 엔티티에 직접적으로 존재하지 않는 컬렉션 엔티티들은 in절로 끌고오지않고 n+1이 터지는것같습니다
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Dockerfile 질문
Dockerfile에서 FROM은 base 이미지를 지정할 수 있는데요, 보통 ubuntu와 같은 OS를 지정하는 것으로 알고 있습니다. 만약 FROM ubuntu로 지정했을 경우 ubuntu OS로 해당 컨테이너가 동작하며 그 안에서 jdk를 설치하고 앱을 실행하고 하는 작업이 가능할 것 같은데요FROM에 그냥 jdk를 지정하면 java는 jvm을 통해 OS에 종속되지 않고 앱이 실행 가능하니 정상 실행될 것이라는 것은 알지만 컨테이너의 OS는 어떻게 되는것인가요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
의존관계 주입
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]헷갈려서 질문 남깁니다.JpaConfig 를 통해 @Bean 등록 한다JpaConfig Class 에 있는 EntityManager 는 스트링부트가 자동적으로 Bean 등록을 해주기 때문에의존관계 주입을 통해 사용이 가능하다.new JpaRepository(em) 을 통해 의존관계 주입 JpaRepository에서의 EntityManager em 은 JpaConfig에서 ItemRepository 를 @Bean 등록할 때매개변수로 받은 것을 사용제가 이해하고 있는 흐름이 맞나요?
-
미해결스프링 프레임워크는 내 손에 [스프2탄]
pom.xml의 dependencies 관련 질문
안녕하세요 해당 프로젝트를 이클립스가 아닌 인텔리제이로 만들고 싶어 글을 올리게 되었습니다.SpringMVC12 프로젝트(이게 7강에서 11강까지 다 모여있는 거겠죠...?)의 pom.xml에 사용한 것들을 스프링 이니셜라이저의 gradle(build.gradle)로 하고 싶은데 dependencies에 각각 어떠한 것들이 들어가 있는지 알 수 있을까요?
-
미해결Practical Testing: 실용적인 테스트 가이드
@NotNull 관련 질문 드립니다.
안녕하세요.먼저, 강의 잘 듣고 있습니다. 강의 따라하던 중 아래 이슈가 발생해서 문의 드립니다. Q1. @NotNull 지정 시,Not-null fields must be initialized라고 경고창이 뜨며.. Q2. 테스트를 진행하면 아래와 같이 메세지 부분에기대했던 값 외에.. 추가 적인 스트링이 들어가서 테스트 성공이 되지 않는 것 같습니다.Body = {"code":400,"status":"BAD_REQUEST","message":"Field error in object 'productCreateRequest' on field 'type': rejected value [null]; codes [NotNull.productCreateRequest.type,NotNull.type,NotNull.sample.cafekiosk.spring.domain.product.ProductType,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [productCreateRequest.type,type]; arguments []; default message [type]]; default message [상품 타입은 필수입니다.]","data":null} 그 외에 @NotBlank, @Postivie 도 유사한 에러가 발생하고 있습니다. Expected :상품 가격은 양수여야 합니다.Actual :Field error in object 'productCreateRequest' on field 'price': rejected value [0]; codes [Positive.productCreateRequest.price,Positive.price,Positive.int,Positive]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes ... Q2 의 경우 하여.. 우선은 아래와 같이 문자열을 포함하는지로 수정해서 테스트는 넘어갔습니다..andExpect(jsonPath("$.message", "상품 가격은 양수여야 합니다.").exists()) Q1 내용은 어떻게 수정하면 된느지 궁금합니다. 확인 부탁드립니다~
-
미해결실전! Querydsl
인텔리제이 Build 설정과 Q클래스
// querydsl 추가 implementation 'com.querydsl:querydsl-core' implementation 'com.querydsl:querydsl-jpa' annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jpa" annotationProcessor 'jakarta.persistence:jakarta.persistence-api' annotationProcessor 'jakarta.annotation:jakarta.annotation-api'위처럼 build.gradle 설정을 조금 다르게 했습니다.그런데 Build and run using을 Intellij IDEA로 설정하면 Q클래스 파일이 생성되긴하는데 사용하려고 하면 import가 되지 않고, Build and run using을 Gradle로 설정하면 정상적으로 import가 되는데 설정 문제로 그러는걸까요? 이유가 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계 매핑 관련 질문 - 읽기 전용 매핑
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]연관관계 매핑 수업을 듣다가 읽기 전용 필드,매핑이란 게 정확히 뭔지 잘 모르겠습니다.예를 들어 섹션6.다양한 연관관계 매핑 수업에서 일대다 양방향 설명해 주실때 Member클래스에 team 이라는 읽기 전용필드를 사용했는데 읽기 전용 필드가 값을 변경할 순 없고 읽기만 가능하다고 하셨는데 Q1. 읽기 전용 필드가 정확히 어떤걸 변경할 수 없고 읽기만 가능하다는 건가요??team.setXX()처럼 객체에서 값을 변경할 수 없다는 건가요??Q2. Team클래스의 members 가 연관관계 주인이라서 members.add(member)이런식으로 해야 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 나가고 team.setTeam(team) 이런식으로 하면은 MEMBER 테이블의 TEAM_ID(FK)에 대해 update문이 안나간다는 건가요??
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
실무에서 사용자 정의 함수를 많이 사용하나요?
실무에서 DB방언을 상속받아 사용자 정의 함수를 등록해서 사용하는 경우가 많은지 궁금합니다!
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
restApi, html api 스펙
restApi를 배울땐 api스펙이 달라져서 데이터를 보낼때와 받을때 Dto로 바꿔서 했는데html에서 데이터를 보낼때는 Dto로 만들지 않고 entity로 데이터를 주고 받는데 html에서도 dto로 바꿔서 해야하는 거 아닌가요???
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
E..dito...r에 대한 질문...
난독증이 있는건지 내용은 그대론데 읽을 때마다 내용이 달라지는 것 같아 질문을 남깁니다...다른 분들이 작성하고, 호돌맨님께서 남기신 답글들을 보고 나서 제가 이해한 것이 맞는지 확인 부탁드립니다... 1. 자판기 비유에 대한 내용1.1. request(edit), domain(editor)를 작성하셨는데, 말씀하시는 부분이 (결국 같은 내용이겠지만...) request(edit)에는 edit.title, edit.content(100원, 500원)(동전)뿐만 아니라 추후에 예를 들어 edit.name, edit.gender(1000원, 10000원)(지폐)가 넘어 올 수도 있는 상황이 발생할 수도 있는데, 지폐(name, gender)는 받고 싶지 않은 상황에서 domain(editor)(금액 투입구)를 사용하지 않으면, 지폐가 들어오는 것을 막을 수 없고, 추후에 불필요한 지폐를 걸러내는 작업이 발생하기 때문에 애초에 입구 자체를 동전만 넣을 수 있는 domain(editor) 금액 투입구를 만들게 되면, 들어온 모든 동전은 사용에 필요한 값이기 때문에 불필요하게 걸러내는 작업이 없어진다고 생각하는 것이 맞을까요...? (같은 말인 것 같은데... 예를 더 어렵게 만든 것 같아 죄송합니다...) 호돌맨님이 if를 통해 기존 값을 사용하는 방식2.1 이 말은 즉, 위 예를 연속해서 사용하자면 [사람 1]이 edit.title(100원)을 넣은 상태에서 [사람 2]가 edit.content(500원)짜리를 넣어도 [사람 2] 때문에 [사람 1]이 넣은 edit.title(100원)이 사라지면 안되기 때문에 사용한다는 말씀이 맞으실까요? (물론 위의 예는 [사람 2]가 edit.title(100원)을 넣게되면 금액이 추가되는 것이 아니라 동전이 변경되야 한다는 오류가 있긴 하지만... 그냥 사용하겠습니다...) 뭔가 작성하면서 또 이해가 된 것 같긴하지만... 틀린 부분이 있다면 지적 부탁드립니다... 또 예를 추가하고 글을 복잡하게 만들어 죄송합니다...
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
배포까지 완료한 프로젝트 수정 질문있습니다!
안녕하세요~ 강사님!강의보고 다 만들고 배포까지 완료한 홈페이지에서 수정할게 있어서 수정해서 git에 업로드까지 했습니다.그런데 Ec2 서버에 적용시킬때 기존 library-app폴더를 완전히 삭제 후 다시 git에서 전체 업로드 해서 빌드해야하나요?? 아니면 부분 수정이 가능 한걸까요??어떤 방법으로 수정처리 해야하는지 궁금합니다!!!
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
testMember 시 insert가 안 되는 문제
testMember에서 table은 생성이 되는데 값이 insert가 안 됩니다.구글링을 해도 이유를 모르겠어서 질문 드립니다.[directory 구조][Member.java][Repository][MemberRepositoryTest][application.yml][build.gradle]plugins { id 'java' id 'org.springframework.boot' version '3.1.3' id 'io.spring.dependency-management' version '1.1.3' } group = 'com.jpabook' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-validation' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-devtools' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation("org.junit.vintage:junit-vintage-engine") { exclude group: "org.hamcrest", module: "hamcrest-core" } } tasks.named('test') { useJUnitPlatform() } test { useJUnitPlatform() } [실행 후 DB] 아래의 log를 보면 create 쿼리가 날라가는 것은 확인 되지만 insert query는 보이지 않습니다.[log] :: Spring Boot :: (v3.1.3)2023-09-05T04:30:50.821+09:00 INFO 49729 --- [ restartedMain] com.jpabook.jpabook.JpabookApplication : Starting JpabookApplication using Java 17.0.6 with PID 49729 (/Users/innahyeon/study/jpabook/build/classes/java/main started by innahyeon in /Users/innahyeon/study/jpabook)2023-09-05T04:30:50.822+09:00 INFO 49729 --- [ restartedMain] com.jpabook.jpabook.JpabookApplication : No active profile set, falling back to 1 default profile: "default"2023-09-05T04:30:50.841+09:00 INFO 49729 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable2023-09-05T04:30:50.841+09:00 INFO 49729 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'2023-09-05T04:30:51.061+09:00 INFO 49729 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.2023-09-05T04:30:51.068+09:00 INFO 49729 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 4 ms. Found 0 JPA repository interfaces.2023-09-05T04:30:51.294+09:00 INFO 49729 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)2023-09-05T04:30:51.298+09:00 INFO 49729 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]2023-09-05T04:30:51.298+09:00 INFO 49729 --- [ restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.12]2023-09-05T04:30:51.320+09:00 INFO 49729 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext2023-09-05T04:30:51.321+09:00 INFO 49729 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 480 ms2023-09-05T04:30:51.331+09:00 INFO 49729 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...2023-09-05T04:30:51.387+09:00 INFO 49729 --- [ restartedMain] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:tcp://localhost/~/jpastudy1 user=SA2023-09-05T04:30:51.388+09:00 INFO 49729 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.2023-09-05T04:30:51.392+09:00 INFO 49729 --- [ restartedMain] o.s.b.a.h2.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:h2:tcp://localhost/~/jpastudy1'2023-09-05T04:30:51.435+09:00 INFO 49729 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]2023-09-05T04:30:51.460+09:00 INFO 49729 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.2.7.Final2023-09-05T04:30:51.461+09:00 INFO 49729 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000406: Using bytecode reflection optimizer2023-09-05T04:30:51.511+09:00 INFO 49729 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy2023-09-05T04:30:51.568+09:00 INFO 49729 --- [ restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer2023-09-05T04:30:51.660+09:00 INFO 49729 --- [ restartedMain] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy2023-09-05T04:30:51.882+09:00 INFO 49729 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]2023-09-05T04:30:51.887+09:00 DEBUG 49729 --- [ restartedMain] org.hibernate.SQL : drop table if exists member cascade Hibernate: drop table if exists member cascade 2023-09-05T04:30:51.889+09:00 DEBUG 49729 --- [ restartedMain] org.hibernate.SQL : drop sequence if exists member_seqHibernate: drop sequence if exists member_seq2023-09-05T04:30:51.891+09:00 DEBUG 49729 --- [ restartedMain] org.hibernate.SQL : create sequence member_seq start with 1 increment by 50Hibernate: create sequence member_seq start with 1 increment by 502023-09-05T04:30:51.892+09:00 DEBUG 49729 --- [ restartedMain] org.hibernate.SQL : create table member ( id bigint not null, username varchar(255), primary key (id) )Hibernate: create table member ( id bigint not null, username varchar(255), primary key (id) )2023-09-05T04:30:51.895+09:00 INFO 49729 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'2023-09-05T04:30:51.926+09:00 WARN 49729 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning2023-09-05T04:30:51.975+09:00 INFO 49729 --- [ restartedMain] o.s.b.a.w.s.WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html]2023-09-05T04:30:52.047+09:00 INFO 49729 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 357292023-09-05T04:30:52.061+09:00 INFO 49729 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''2023-09-05T04:30:52.066+09:00 INFO 49729 --- [ restartedMain] com.jpabook.jpabook.JpabookApplication : Started JpabookApplication in 1.393 seconds (process running for 1.638)
-
미해결스프링 프레임워크는 내 손에 [스프2탄]
혹시 마프는 언제 오픈 되나요?
선생님 강의 정말 감사하게 잘 듣고 있는 학생입니다~선생님께서는 코딩 멍충이도 술술 이해 시키는 놀라운 마력을 가지고 계시는 거 같아요항상 감사하는 마음 가지고 수업에 임하고 있습니다. 많이 바쁘시겠지만 혹시 언제 마프가 오픈되는지 알 수 있을까요? 이번 강의 마무리하고 곧 마프로 선생님 강의 듣고 싶은 학생입니다. 존경합니다~ 박매일 선생님!!
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
API 호출 방법
안녕하세요. JPA 활용 강의를 들으며 추가로 REST API에 대해 공부중입니다.@Controller에서 페이지 렌더링을 하고,@RestController에서 API를 작성하는 것은 이해했습니다. 그러나 model로만 데이터를 넘기다가 API에 대해 공부를하다보니 호출 방식에 대해 이해가 되지 않습니다. 만약에 회원조회 기능을 만든다고 가정하면[1]@RestController에서 /api/members에서 회원 조회하여 ResponseEntity<MemberDto>를 리턴해주고,@Controller에서 /api/members를 호출한 다음에 MemberDto로 변경하여 Model에 담은 후 /memberList로 렌더링 [2]@Controller에서 /memberList로 렌더링한 후, javascript에서 fetch()를 사용하여 /api/members를 호출하여 가져온 값을 화면에 뿌려줌 제가 고민해본 방식은 위 2가지입니다... 올바른 방식이 있는지,, 없다면 어떤 방식이 맞는 지 조언 해주시면 감사하겠습니다... ========================================앗 해당 질문글을 작성한 후 더 공부를 해보았는데요,CSR (클라이언트 사이드 렌더링)와 SSR (서버 사이드 렌더링) 방식으로 두 가지 방식 모두 존재하는 방식이었군요... (제가 고민해본 방식과 CSR, SSR가 동일한 방식인지는 모르겠습니다... 맞나요...?) 페이지 이동과 동시에 조회가 필요한 곳인 경우 (필터 없이 회원조회) = 페이지 렌더링할때 api를 호출하여 model에 담아 넘기고, 필터로 조회하는 경우 = API만 호출하여 데이터 보여주기 위에 내용으로 개발하면 될까요?? (저는 현재 백엔드 개발자를 준비하며 혼자서 포트폴리오용 프로젝트를 만들고있습니다!)
-
해결됨Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
소형 테스트 실행 시 빌드 타임은 어떻게 극복하셨는지요
강의를 굉장히 감명 깊게 보고 Spring 기반으로 되어 있는 레거시 프로젝트에 도메인을 분리하고 유닛 테스트를 넣는 작업을 하고 있습니다. 여기에서 가장 답답한 게 단순한 유닛 테스트임에도 빌드 타임을 그대로 기다려야 한다는 점인데요. 비록 빌드 캐시 덕에 아주 오래 걸리는 건 아니긴 해도 몇십 ms면 끝날 테스트를 몇 초씩 기다려야 하는 점이 많이 답답합니다. 시간 상으로는 인메모리 db를 띄우는 것과 별 차이 없는 것 아닌가? 하는 생각이 들 정도예요. (물론 테스트 코드를 작성하기 쉬운 구조가 좋은 코드 구조라는 명제에는 이견이 없기 때문에 별 차이가 없다 하더라도 계속 진행할 예정입니다.)선생님께서도 담당하시던 시스템에 유닛 테스트를 붙이는 작업을 하셨다고 들었는데 이러한 부분은 어떻게 극복하셨는지 궁금합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Resilience4JCircuitBreakerFactory id
return factory 객체에서 생성하는 Resilience4JConfigBuilder에게 전달되는 id 값은 직접 주입하는것이 아닌것 같은데요,circuitBreakerFactory create시에 지정하는 name 값이 컨테이너를 통해 주입되는건가요?만약 그렇다면 생성된 모든 circuitBreakerFactory을 조회해서 id를 주입하는 로직이 있는건가요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
강의를 보다가 해당 어노테이션 속성 목록들 보는 단축키
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 아니요3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요. 해당 어노테이션 목록 띄우는 키가 있을까요? ctrl로 들어가서 봐야 하는걸까요?ctrl + space로 했었던 거 같은데 안되네요~key 에서 code는 ctrl + space로 되어있습니다
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
orderList action
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]home.html에서 주문 내역을 클릭 시에 orders api 파라미터 값인 orderSearch 값이 비어 있어서 표시할 list 가 없는 거고orderList.html 에서 memberName과 status 값을 입력 한 form의 action url을 따로 지정해주지 않았는데 그럼 form 태그에 입력한 값이 orderSearch 에 값이 매핑이 되어 get 방식의 orders api를 재호출 하는 걸까요 ?