이야기를 나눠요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
저번질문에 글올렸는데코드가더꼬인것같아요..
https://drive.google.com/file/d/19EdcpxnIZQKKAeCSlucWIrX8HVv4bCtf/view?usp=drive_link 머리아프네요..17강까지 잘되었습니다..
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DB를 제외한 로드맵
안녕하세요, 현재 사지방에서 스프링을 공부하고있는 군인입니다.스프링 입문 편을 보면서 다른건 다 문제 없이 진행됐는데 h2 database를 활용하는 부분에서부터 막히게 됐습니다. 계속해서 방법을 검색하고 적용해봤지만 결국에 DB관련 파트는 포기하게됐습니다.앞으로 '스프링 완전 정복' 로드맵을 따라가고싶은데 DB이후의 강의인 '스프링 핵심 원리-고급편', '스프링 부트 -핵심 원리와 활용' 강의를 들을 때 DB를 활용하지 못하면 제약이 있거나 진행이 불가하게 되는지 궁금합니다!
-
실전! 스프링 데이터 JPA
Spring Data JPA로 Mysql Full Text Search 기술 가용여부 질문
안녕하세요 스프링 데이터 JPA 강의를 듣다 질문이 생겨 문의드립니다.토이프로젝트로 JPA를 사용하여 Mysql 전문검색(Full Text Search)를 해보는 중입니다. public interface JpaMenuReviewRepository extends JpaRepository<MenuReview, Long> { @Query(value = "SELECT * FROM menu_review WHERE MATCH (comments) AGAINST (:keyword IN NATURAL LANGUAGE MODE)", nativeQuery = true) List<MenuReview> findMenuReviewByCommentsContainingOnFullTextSearchWithQuery(@Param("keyword") String keyword); } JPA에서는 Full Text Search를 지원하지 않아서 nativeQuery로 다음과 같이 쿼리문을 작성하였습니다.그런데 전문검색을 위해서 Table의 컬럼에 Full index를 추가해야 전문검색 쿼리가 작동한다고 알고 있는데요,JPA의 해당 특징은 "JPA의 DDL 자동 생성 기능" 또는 "JPA의 스키마 자동 생성 기능"으로 알고 있습니다.이 기능은 JPA가 애플리케이션의 Entity 클래스를 분석하고, 이를 바탕으로 데이터베이스 스키마를 자동으로 생성하거나 업데이트하는 역할을 하여 @Entity, @Table, @Column 등의 애노테이션을 사용하여 엔티티 클래스를 정의하면, JPA는 이 정보를 바탕으로 필요한 테이블과 컬럼을 데이터베이스에 생성하는데요,이럴 경우에는 제가 "ALTER TABLE tbl_query ADD FULLTEXT INDEX FullText (`comments` ASC)" 해당 ddl문을 넣을 수 없어서 곤란한 상황입니다. JPA, Mysql에서는 Full Text Search를 사용할 수 없는 건가요? 차선책으로 Elastic Search, Postgre, Mongo를 구상중인데 차선책으로 우회해야할지 고민입니다.추가로 실무에서는 전문검색 기능을 위해 어떤 방법을 쓰시는지, 관련해서 문의드리고 싶습니다.강의내용과 동떨어져 있는 질문이라 죄송합니다.
-
Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부
webfluxtest를 통한 테스트
webfluxtest를 통한 테스트 수고많으십니다. mvc만 쓰면서 개발하다보니 junit은 사실 개발을 위한 개발처럼 보여서 쓰지않았습니다. 헌데 reactive로 하려니 하아... junit을 안쓸수가 없겠더군요. 교과목은 아니지만 연관은 있어서 문의하나만 드려봅니다. 한 며칠고민하고 찾아봐도 답이 딱히 나오질않아서 의견을 여쭙거나 합니다. spring boot 3.2 를쓰고있습니다. reactive redis를 사용하려니 spring.io에서 제공하는 방법은 ReactiveRedisOperations를 사용하도록 해서 사용하고있습니다. 이걸 서비스에서 만들고 RestController에서 쓰고있습니다. 이 controller를 @WebfluxTest 로 테스트 하려고 했더니. 주입이 안되어서 에러가 발생하는 상황입니다. @Import등으로 직접 넣어주는데 Controller 에서 서비스 리파지토리정도야 주입해서 넣어야하는건 그럴수있다고 해도 @Configuration에서 등록한 Redis connection factory까지 넣어주어야 한다면 이게 일을 위한 일이 되어버리는 상황이 되겠는데. 지금 내가 테스트를 하는건지 개발을 해야하는건지 의문이 들정도입니다. 아 그리고 @MockBean을 써도 해당 method를 찾지못하기도 하지만 controller 에서 테스트하고싶은것은 repository - service - controller 까지 최종테스트를 하는건데. 이걸 mockbean으로 하는것도 큰의미가 없어보입니다. controller부분이야 많이 만들수밖에 없을텐데 이때마다 두배의 코딩량을 늘려야하는건 아닌것같은데. 이를 좀더 효율적으로 테스트및 디버깅을 할수는 없는지 궁금하여 문의드립니다.
-
스프링 핵심 원리 - 기본편
미니 프로젝트 추천해주세요
이때까지 배운 지식으로 제 스스로 무언가를 만들어보려고 하는데 프로젝트를 진행한 경험이 없어서 어디서 어떻게 시작해야 할지 막막하더라고요. 제가 아이디어를 생각해도 이걸 내 실력으로 구현할 수 있을까? 라는 생각이 들었습니다.. 지금 스프링 입문 강의, 스프링 기본 강의를 들은 상태인데 이 지식으로 제 스스로 만들어볼 수 있는 것이 있을까요?추가로 프로젝트 만들 때 구글을 참고해도 되는지 궁금합니다.. 처음 구현하는거다 보니 어디서 어떻게 시작할지 모르는데 구글 코드 가져와서 써도 되나요??
-
스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
백엔드 개발자는 언제 화면을 그리나요??
제가 취준생이라서 실무개발환경에 대해서 잘 알지 못해서 상상의 나래를 펼쳐봤습니다. 요즘은 웹개발에서 보통 프론트엔드랑 백엔드로 나누잖아요 프론트엔드가 화면을 그리는 부분이고 백엔드가 서버에서 데이터를 뿌려준다고 알고있는데, 데이터를 뿌려주는건 api로 뿌려주면 되는 것이 아닌지 의문이 들어서요 서버사이드렌더링은 언제 왜 하는것인지 궁금합니다.그리고 취준생이라서 드는 고민도 있는데, 프로젝트를 만들었다고 함은 어느정도까지 구현을 해놔야하는 것인지 궁금합니다. 지금은 mvc 강의를 보면서 코드를 따라치기만 하는 단계이지만나중에 만약 어떤 프로젝트를 만들어서 서버를 배포하는데까지 어떻게 저떻게 했다고 하더라도 이용자가 저만 있다면 그게 의미가 있는걸까요?? 저만 사용하는 어플리케이션 혹은 웹은 실제 서비스가 되지 않다고 해도 무방할것 같은데 이런 개발은 결국엔 무의미 한게 아닌가 하는 생각도 들고... 잡생각이 참 머리가 너무 번잡해지네요
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
spring 공부방법 질문
현재 스프링 완전정복로드맵을 들어가기전 스프링 입문 강의를 듣고있는 수강생입니다. 수업하나하나 들을때마다 코드하나하나 따라치는거밖에 못하고 실제로 강의끝나고 이걸복습하자니 어디서부터 해야할지도 모르겠습니다. 제가 spring을 처음접해서 그런거일수도있는데 이렇게 코드만 따라치는게 맞는지 공부하는 느낌이 안들고 의구심이 들어서 질문해봅니다 ㅠㅠㅠ 처음 말씀해주신 목표는 전체적으로 어떻게 돌아가는지, 동작하는지를 이해하는게 포인트라고 하셨는데 다행히 이부분에서는 구글링으로 부족한개념들을 메꾸면서 도달할수는 있을거같습니다. 하지만 위에서 적었다싶이 코드를 하나하나 이해하고 따라치는데는 한강의를 듣는데 4~5시간이 소요되어 실제로 완강을 하기에는 2주가 넘는시간이 소요됩니다.. 그래서 조언을듣고싶습니다
-
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
상품 주문, 수정 같은 DB 데이터에 접근할 때 유저 정보 노출 여부
현재 예제에는 로그인을 하지 않지만 만약 로그인 기능이 추가된다고 하면 로그인을 성공했는지 여부를 판단하는 정보는 어떤 식으로 유지하나요? 인프런의 경우에도 로그인에 한번 성공하면 로그아웃을 하지 않는 이상 사이트에 들어오게 되면 자동으로 로그인이 되는데 어떻게 로그인 정보를 안전하게 유지하는지 궁금합니다.
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
로드맵 이수 이후 공부 방향성
안녕하세요. 현재 자바 공부 중이고, 이후 김영한 강사님의 자바 스프링 완전 정복 시리즈 로드맵을 이수할 계획입니다.개인적으로 공부하다보니 공부 계획을 정할때 공부할 과목과 순서도 잘 모르겠고, 얼마나 깊이 공부해야 할지도 감이 안와 고민이 많습니다.일단 저의 1차적인 공부 목표는 다른 분들처럼 개인 또는 팀 프로젝트에 백엔드 개발자로 참여할 수 있는 수준의 지식을 쌓는 것입니다.해당 스프링 로드맵 이수를 하고 나면 프로젝트에 지원해도 될까요? 만약 아니라면 이후에 무엇을 공부해야 할까요?데이터베이스, API 등은 로드맵에 포함이 안되어있나요? 개인적으로 찾아보고 알아보기도 했지만, 용어들이 대체로 생소하다보니 어렵습니다.. 쓰고 보니 질문에 무지함이 드러나는 것 같아 부끄럽고 죄송하지만 막막한 마음에 일단 여쭤봅니다. 읽어주셔서 감사합니다.
-
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
사내에서 Kotlin 으로 전환하면서 ORM 기술 선택에 고민이 있습니다.
안녕하세요 강사님.강사님의 코틀린 기본강의를 수강후 해당 강의도 이제 거의 다 들어갑니다. 가장 우선적으로, 이렇게 좋은 강의를 만들어주셔서 정말 감사합니다 🙂 현재 제가 다니는 회사에서 자바-스프링 기반의 프로젝트를 코틀린-스프링으로 전환하는 작업을 진행하고 있습니다. 그러면서 기술들을 선택하는 과정가운데 있는데요, ORM 기술을 어떤것을 쓸지 고민중입니다. 저는 개인적으로 자바-스프링을 통해 어플리케이션을 개발할 때, 현재 듣는 강의와 같이 Spring Data Jpa 와 Querydsl 을 함께 썼었고 익숙했는데요.. 문제는 Querydsl 이 2021년 이후로 업데이트가 없다는 점입니다. 팀 내에서도 그 문제로 인해서 여러가지 고민을 가지고 있는데요... Querydsl 을 사용할지 Exposed 를 사용할지 아니면 jdsl 을 사용할지 고민중에 있습니다. 현재 저희는 Springboot 3.x 로 올리면서 앞으로도 계속 기술을 최신화 하면서 유지할 생각인데요, querydsl 이 릴리즈가 지속되지 않는 점이 가장 걸리고, 앞으로의 대응도 어려울것같아서 기술 선택에 많은 고민을 하고있습니다.. 강사님께서도 실무에서 개발을 하고 계시는 분이시고, 코틀린으로 어플리케이션을 만들고 계시는 분이시기에 여쭙고 싶었습니다. 어떤 기술을 선택해서 사용하고 계시는지, 만약 Querydsl 을 계속 사용하고 계시다면 실무에서 문제없이 사용중이신지.. 아니면 다른 기술을 사용중이신지 (혹은 현재는 querydsl 이지만 다른 기술로의 전환을 고민중이신지) 궁금합니다!
-
스프링 핵심 원리 - 기본편
백엔드 개발 및 공부에 대한 고민이 있습니다..!
안녕하세요! 저는 현재 2학년 그리고 내년에 3학년이 되는 대학생입니다. 최근 백엔드 개발자로서의 진로를 확정하고, 김영한 강사님의 자바 그리고 스프링 강의를 구매하여 공부를 시작했습니다..! 공부를 하며 생긴 고민은 총 2가지입니다.첫 번째 고민은 스프링 강의에 대한 어려움입니다!스프링 강의를 수강하며 느낀 것은 생각보다 복잡하고 어렵다는 것이었습니다..! 스프링이라는 프레임워크 그리고 자바의 객체지향 개념이 추상적인 부분이 많아서 그런지 뭔가 머릿속에서 이해가 될 것 같은데 혼자 코드를 짜보라고 하면 못 짜겠는?? 그런 느낌이 많이 들었습니다.. 원래 이런건지 궁금합니다..! 또한, 제가 위와 같이 어려움을 느끼는 이유가 자바에 대한 이해도가 부족해서 그런걸까요??두 번째 고민은 개발에 대한 궁금증입니다!최근 1~2달 정도 단기 프로젝트를 하게 되어 스프링에 GPT API를 연동했고, 티베로라는 데이터베이스를 연동한 경험이 있습니다. 이제야 자바 및 스프링을 입문한 입장에서 상당히 난이도가 높았고, 구글 및 각종 래퍼런스를 참고해가며 구현에 성공은 하게 되었습니다. 다만, 프로젝트에 대한 구현이 제가 온전히 모든 것을 이해하기보단 코드들을 참고하여 프로그래밍하고, 이후 작성한 코드를 이해하는 느낌이었고, 이 과정에서 약간의 회의감이 들게 되었습니다. 현재 저의 실력이 완전 초보 단계라 당연한 것이겠지만 과연 나중엔 이런 어려움들을 극복하고 프로그래밍을 원활히 잘할 수 있을까라는 생각이 많이 들었습니다. 다들 이런 어려움을 느끼는 게 당연한 부분이겠죠? 또한, 프로그래밍을 잘하는 개발자 그리고 좋은 개발자가 되기 위해선 어떤 방향성을 가지고 공부를 해야 하는지도 궁금합니다! 강의는 영한 강사님께서 강의를 너무너무 잘해주시고 관련 내용 또한 핵심을 자세히 다뤄주셔서 이해도 편하고 매우 매우 만족합니다!!!(조금 더 일찍 들을 걸이라는 후회를 하고 있어요 ㅠ) 앞으로 영한 강사님의 자바 그리고 스프링 커리큘럼 쭉 따라가려합니다!
-
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
그러면 API를 개발할 때 최선의 방법은 무엇인가요?
이번 API 개발 고급 - 컬렉션 조회 최적화를 쭉 들으면서 생긴 고민입니다.V1 ~ V3 까지의 각각의 명확한 차이점과 최적화 과정에 대해 이해하고 왜 이렇게 사용하는지에 대략적으로 이해하였습니다. 반면에 V4, V5, V6의 경우 DTO를 직접 조회를 통해 쿼리문의 간소화를 진행시키는 방법으로 최적화를 진행하는 것에 배웠는데 질문 1) 최종적인 실무에서는 V3.1의 fetch join 방식과 DTO를 통해 최소한의 쿼리 줄이는 방식 중 어느 것이 더 대중화된 방식인지 궁금합니다.질문 2) 명확히 정해진 방식이 없다면 어느 부분에서는 fetch join 방식이 유용한지 dto 방식이 유용한지 아직 잘 이해가 되지 않습니다. 관련 지식을 학습할만한 검색 키워드를 알려주실수 있으신가요?
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
안녕하세요 강사님. 강의 선택에 대한 고민이 있습니다.
안녕하세요 🙂 김영한 강사님.저는 ruby로 백앤드 개발 2년 ~3년 정도 하였습니다.이번에 java + spring으로 프로젝트를 시작하게 되어서 학습이 필요하게 되었습니다.강사님이 정말로 친절하게 로드맵을 제시해 주셨지만 저는 조금 와닿지는 않았습니다. (로드맵이 안좋다는 뜻이 아닙니다 !!!!)와닿지 않은 이유는 초보자라고 가정되어서 로드맵이 시작되기 떄문입니다. 그래서 타 프레임워크로 백앤드 개발을 한 사람을 위한 로드맵은 어떻게 될까요?추가로 신규 프로젝트에서는 어떤 spring 기술스택을 채택하나요? 제가 서칭한 결과 JPA + Spring boot는 기본이라고 하는데 주변에 현업 스프링 개발자가 없어서 확실한 정보인지는 모르겠습니다. (코틀린을 도입하는 추세라는 건 맞는거 같기도 합니다) 감사합니다.
-
스프링 핵심 원리 - 고급편
트래픽이 많이 발생하는 사이트의 경험??
트래픽이 많이 발생하는 사이트, 시스템에서 일하는 경험이 많지 않아서요 쿼리 최적화 클린코드 모니터링 많은 대한이 있겠지만 그런 곳에 있지 않은 상황이라면 어느것을 통해 경험할수 있을까요 혹은 그런 간접경험을 할수 있는 수단? 사이트? 그런게 있을까요?
-
자바 웹 개발 지망 mac, window 고민
안녕하세요 현재 컴공 3학년 재학중인 학부생입니다.다름이 아니라 19년도에 구매한 삼성노트북이 자꾸 재부팅이 됩니다.(포맷해도 몇개월 뒤면 똑같습니다ㅜㅜ) 계속 포맷하고 옮기기도 번거롭고 메인보드 교체도 70만원 정도여서 아예 노트북을 새로 사려고하는데요 이번에 살때 mac을 살지 고민돼서 질문 남깁니다ㅜㅜ게임도 안하고 보통 인텔리제이하고 vscode 주로 쓰는데 mac 쓰는데에 불편한점이 더 많을까요?맥은 에어 m1 램16 생각중이고 , 윈도우도 필요할 것 같아 현재 쓰고있는 삼성노트북을 포맷해서 사용하려고 하고 있고, windows를 사게되면 i7에 램16 스펙의 노트북을 사려고 생각중입니다.(현재 i5 램8)아무래도 현재 대학생인 저에겐 큰돈이어서 취업준비하고 공부하는데 좋은 선택을 하고 싶어 질문 남깁니다ㅠ
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 DB 접근 기술 관련 고민
안녕하세요 먼저 저는 아직 대학교 재학 중인 학생으로 천천히 공부를 하는 단계입니다. 데이터베이스의 기본적인 이론과 간단한 SQL 문은 짤 줄 아는 상태에서 이제 DB 접근 기술 공부를 하려는데JPA, SPRING DATA JPA 이전에 먼저 JDBC를 어느 정도 잘 다루고 싶은데 순수 JDBC는 영한님 말씀대로 가볍게 역사 공부 느낌으로만 듣고 넘기고 바로 JDBC TEMPLATE으로 입문을 진행하여도 상관이 없을까요?순수 JDBC는 지금 시점에서는 배울 필요가 크게 없는지.. 아니면 JDBC TEMPLATE 앞서 배우고 가는 것이 정석적인지 궁금합니다.
-
스프링 DB 2편 - 데이터 접근 활용 기술
DB1편을 듣지않고 2편을 듣기 어려운가요?
삭제된 글입니다
-
스프링 핵심 원리 - 기본편
이해는 가는데 막상 혼자 코드를 작성해보려니까 생각이 안나네요
분명 강사님이 코드 작성하시는거 보면서 따라서 작성하면 다 왜 이렇게 작성되는지는 이해가 가는데 막상 코드를 작성해보려니까 엉망진창이고 어디서부터 적어야할지 감이 안잡힙니다..ㅠㅠ 그래도 일단 계속 반복적으로 들어보는게 맞을까요? 코드를 보고 이해는 가니 자바 강의로 돌아가고는 있지 않긴한데 부분부분 왜 여기서 static을 쓰는지, private를 쓰는지.. 헷갈릴때가 있습니다. 계속 진행을 하는게 맞을까요 ?
-
재고시스템으로 알아보는 동시성이슈 해결방법
강의 자료랑 소스코드랑 터미널에서 치는 화면이 너무 작아요..ㅠ
화면이 너무 작아요..ㅠㅠ 너무 해상도가 높아서 그런지.. 글씨가 콩알만해서 잘 보이지 않네요... 솔직히 다시 녹화해야할거 같은데.. 보는게 너무 힘드네요 ㅠ
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
진로 방향성 고민
친구 프론트엔드, 저 백엔드 이렇게 해서 간단한 웹페이지 만들어 보려하는데, 현재 저의 백엔드지식은 아예 없다 생각해도 무방합니다. 첫 프로젝트를 하기 위해 공부해보려 하는데 백엔드 지식이 너무 방대하고 뭐 부터 해야 할지 몰라 막막합니다. 서로 프엔, 백엔 체험해보는식으로 만드는거라 깊게 공부는 하지않고 일단 만들어보면서 흥미를 느껴보려 하는데 조언좀 주실 수 있을까요