이야기를 나눠요
150만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
순위 정보를
불러오고 있어요
-
코드로 배우는 React with 스프링부트 API서버
사이트 만들고 공유해도 되나요?
따라서 만들고 있는데요. 다 만들고 여기에 공유해도 되나요?
-
백엔드 개발자 성능 개선 초석 다지기
학습한 내용을 바탕으로 부하테스트를 하려는데 고민이 있습니다.
안녕하세요. 강의 잘 들었습니다.이제 강의 들은 내용을 참고하여 현재 개발중인 서버의 부하 테스트를 진행해보려고 하는데 고민이 있어서 질문을 남김니다.현재 하려는게 spike test인데 vUsers 몇명에 duration을 어떻게 설정하고 해야할지 감이 안옵니다. 현재 사용하고 있는 툴은 nGrinder이고 시나리오 테스트를 통해서 진행하려고 하는데 아직 초보 개발자라 주변에 물어볼곳도 없고 하여 이렇게 글을 남깁니다.보통 vUsers를 어떻게 잡아야할까요? 그냥 점진적으로 증가시키는 부하 테스트를 통해서 찾은 최대 수용 유저 수를 가지고 해야할까요? 그리고 시나리오 테스트 하려는 서비스가 결제부분인데 현재 PG사 기능을 mock server처리 하였는데 실제로 이렇게 진행하는게 맞을지도 궁금합니다.아직 초보 개발자라 부족한게 많은데... 답변 부탁드립니다 ㅠㅠ
-
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OpenJDK 64-Bit Server VM warning 해결하는 방법인데, 제가 맞게 해결한건가요?
프로젝트 설정:Java 17 (amazon correto 17), Gradle-Groovy, Spring Boot 3.2.3저도 다른 분들과 비슷하게 위의 OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 경고 메시지가 발생했습니다.물론 경고 메시지여서 치명적이지 않고 무시하도 된다고 하셨지만, 빨간 메시지가 꺼림찍하여 해결방법을 찾아보던 중 아래의 두 글을 읽고 해결방법을 찾긴 했는데, 제가 맞게 설정한 것인지 정확하게 모르겠어서요. 제가 맞게 해결한 건가요? JVM 아규먼트 설정만 해도 경고 메시지가 발생하지 않아서, 병렬 실행 설정은 주석 처리 해놨는데, 병렬 실행 설정도 해야 하는 걸까요? 도움 부탁드립니다..ㅠㅜ참고한 글:https://github.com/mockito/mockito/issues/3111 https://stackoverflow.com/questions/77512409/adding-xshareoff-jvm-arg-break-jacoco-maven-plugin-setup설정한 build.gradle 파일tasks.named('test') { useJUnitPlatform() jvmArgs '-Xshare:off' // JVM 아규먼트 설정 // maxParallelForks = Runtime.runtime.availableProcessors() // 병렬 실행 설정 }
-
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
실제 개발할 때의 마음가짐에 대해 질문드립니다.
Q. 실제 개발시에는 메서드가 하나 추가될 때마다 테스트해줘야 하는 것 맞을까요?강의 상에서는 Order, OrderItem 코드 작성하시는 순서가 되게 유기적으로 매끄럽게 구성되어있는데요. 실제 코드 작성할 때는 실수도 나올 수 있고, 특정 메서드에 어느 클래스에 위치해야하는 게 좋을지에 대한 고민같은 것이 동반될 것 같다는 생각이 들 것 같다는 생각이 듭니다(실제로도 그래왔던 것 같구요).좋은 강의를 수강하다보니 새로운 상황을 혼자 맞이할 때 막막한 순간에 어떤 마음가짐을 가져야할 지 고민이 되어 질문드립니다.p.s) 지금은 열심히 완강을 향해 달려가고 있는 중이라 강의평을 남기지 못하고 있는데, 여유가 되면 감사 인사 꼭 드리도록 하겠습니다. 항상 고마워요 영햔님....
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
질문드립니다
안녕하세요! 스프링 입문편 듣고 있습니다 들으면서 이해가 가는 부분도 있고 어렵게 느껴지는 부분들이 있는데 이해갈때까지 입문을 돌려보는게 나을까요? 기본편을 결제해서 듣는게 나을까요? 기본편이 더 세세한 설명이 있는지도 궁금합니다
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
신입개발자 커리큘럼 고민
신입 개발자 입니다!다름이 아니라 제가 회사에서 아직 교육기간이라 선생님의 강의를 듣고있는데요,스프링입문 강의를 1회 완강을 해도 확실히 와닿지가 않아서 한 번 더 들을까 생각중인데..일단 진도를 쭉쭉 치고 나가는게 좋을지 아니면 스프링입문을 한번 더 듣고 기본편,HTTP… 이렇게 나가는게 좋을지 여쭤보고자 문의 남깁니다한달뒤에 교육이 끝나면 프로젝트에 투입되는 상황이라 고민이 됩니다..!
-
실전! 스프링 데이터 JPA
JPA 프로젝트 성능테스트 환경 구축 질문있습니다.
강사님의 강의를 보고 Spring/JPA 토이 프로젝트를 만들고 성능 테스트를 진행해보려고 합니다.현재 프로젝트는 AWS EC2 프론티어 클라우드 서버에서 구동 중인데, 성능 테스트 시 aws를 이용하게 되면 부담스러운 비용이 발생할까봐 우려되었습니다.때문에 로컬 환경에서 가상머신을 띄우고 실구동환경의 컴퓨팅 자원과 동일하게 세팅한 뒤 테스트를 진행해보려고 하는데, 이러한 방식으로 진행한 테스트 결과가 실제 서버에 적용할 수 있을만큼 유의미한지 궁금합니다. 질문 읽어주셔서 감사합니다.
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
java 중급강의 언제나오나요?!
김영한님 java 중급강의가 24년 초에 나온다고 알고 있는데 3,4월쯤에 나올나요??
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
AOP 수강 중 에러.
질문탭으로 가야하는데 고민으로 작성했네요... 수정으로는 이동이 안되는데 이동 가능하다면 부탁드립니다.ㅠㅠ===========================================AOP 수강 중 에러가 발생했는데 어디를 건드려야할지 잘 모르겠어서 문의 남깁니다.우선 강의와 다른 환경으로 실습해보고 있어 조금씩 코드가 다릅니다.먼저 에러 메세지는 아래 2개입니다.org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberController' defined in file [D:\dev\java\hello-spring\out\production\classes\hello\hellospring\controller\MemberController.class]: Unsatisfied dependency expressed through constructor parameter 0: No qualifying bean of type 'hello.hellospring.service.MemberService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'hello.hellospring.service.MemberService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}2번 메세지를 보게 되면 MemberService타입의 Qualifying 한 bean이 존재하지 않아 wiring 할수 없다는 에러인데. 스프링을 처음 해보는 입장에서는 그대로 따라 쳤는데 되지 않아 어떻게 더 수정해야할지 고민입니다.관련된 코드 블럭을 첨부 드립니다.SpringConfig.Javapackage hello.hellospring; import hello.hellospring.repository.*; import hello.hellospring.service.MemberService; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class SpringConfig { // private EntityManager em; private final MemberRepository memberRepository; public SpringConfig(MemberRepository memberRepository) { this.memberRepository = memberRepository; } // public SpringConfig(EntityManager em) { // this.em = em; // } @Bean public MemberService memberService(){ return new MemberService(memberRepository); } // @Bean // public MemberRepository memberRepository(){ //// return new MemoryMemberRepository(); //// return new JdbcMemberRepository(dataSource); //// return new JdbcTemplateMemberRepository(dataSource); //// return new JpaMemberRepository(em); // } }MemberService.Javapackage hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.JdbcMemberRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Optional; @Component public class MemberService { private final MemberRepository memberRepository; @Autowired public MemberService(MemberRepository memberRepository) { this.memberRepository = memberRepository; } /* * 회원가입 */ public Long join(Member member){ //같은 이름이 있느 중복 회원X validatedDuplicateMember(member); memberRepository.save(member); return member.getId(); } private void validatedDuplicateMember(Member member) { memberRepository.findByName(member.getName()) .ifPresent(m -> { throw new IllegalStateException("이미 존재하는 회원입니다."); }); } public List<Member> findMembers(){ return memberRepository.findAll(); } public Optional<Member> findOne(Long memberId){ return memberRepository.findById(memberId); } } application.propertiesspring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=none spring.datasource.username=sagradleplugins { id 'java' id 'org.springframework.boot' version '3.2.1' id 'io.spring.dependency-management' version '1.1.4' } group = 'hello' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '21' } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' // implementation 'org.springframework.boot:spring-boot-starter-jdbc' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' runtimeOnly 'com.h2database:h2' } tasks.named('test') { useJUnitPlatform() }MemberController.javapackage hello.hellospring.controller; import hello.hellospring.domain.Member; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import java.util.List; @Controller public class MemberController { private final MemberService memberService; @Autowired public MemberController(MemberService memberService) { this.memberService = memberService; } @GetMapping("/members/new") public String createForm() { return "members/createMemberForm"; } @PostMapping("/members/new") public String create(MemberForm form){ Member member = new Member(); member.setName(form.getName()); memberService.join(member); return "redirect:/"; } @GetMapping("members") public String list(Model model){ List<Member> members = memberService.findMembers(); model.addAttribute("members", members); return "members/memberList"; } } 감사합니다.
-
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트 환경에서 h2 db 를 사용하는 경우 실용성에 대하여
테스트 환경에서 h2 메모리 db 를 사용하는 방식에 대한 실용성 관련 고민이 있습니다. 프로젝트를 진행하다보면 기본적으로 orm 기반으로 구현을 하지만 일부 예외적인 기능들은 특정 dbms 에 의존적인 쿼리를 직접 실행하는 경우가 불가피하게 발생하는 듯 합니다. 이 경우 특정 dbms(예를들어 mysql) 에 대한 의존성이 발생할 수 밖에 없는데요. 이때 운영 dbms 와 다른 메모리 db(h2) 를 사용하여 테스트를 작성하게 불가능해지고 결국엔 실환경과 동일한 테스트용 db 를 세팅하는식으로 다시 변경하게 되는 듯 합니다. (결국 메모리 db 를 이용한 간단한 테스트를 사용할 수 없는 상황) 실무적인 차원에서 이런 경우 보통 어떤 방식으로 해결하는게 최선일지 궁금합니다.
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 소스 코드
현재 자바 기본편까지 듣고 스프링 입문 강의 수강 중입니다. 학업에 있어 건의드릴 사항이 있는데 강의 소스코드가 있었으면 좋겠습니다. 스프링 로드맵을 따라 쭉 공부할 예정인데 이 강의의 다음 강의인 스프링 핵심원리 기본편에도 강의 소스코드가 없는 것 같아 말씀드립니다.감사합니다.
-
Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Spring Cloud Config 사용시 의존 문제
강의 잘 듣고 있습니다. msa를 현업에서 적용시키려고 하고있는데 질문이있습니다.Spring Cloud Config 가 가지고 있는 경로에 Database 연결 정보를 넣고 db를 사용하는 Micro service들이 해당 config서비스를 빌드시 참조하도록 설계해보았는데요,Spring Cloud Config service에 너무 의존을 하고 있는거 같단 생각이 듭니다.해당 서비스가 먹통이되면 다른 서비스 모두 db는 사용할 수 없다는 치명적인 이슈가 있으니까요. 현업에서 Spring Cloud Config 서비스를 구현할 때에 이렇게 크리티컬한 정보는 사용하지 않는지, 사용한다면 어떻게 의존성이 강한 문제를 해결 할 수 있는지 궁금합니다.
-
[개념은 호옹~, 실습 빡] 스프링 부트, 입문!
controller, API controller차이
앞서서 만든 프로그램에apiContrioller가 있고 그냥 controller가 있었는데 이 둘의 차이가 궁금합니다. 또한 이미 만든 show,new,index등의 mustache들도 API controller로 만들수 있는거 아닌가요?(자바스크립트로 요청을 보낸다면)반대의 경우도 가능할까요?
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
로드맵에서 알려준 첫 챕터강의를 보고있습니다.
그런데 정말 무슨 내용인지 잘 모르겠습니다. 자바 입문 교제 공부 를 끝내고 자바 웹 백엔드 공부를 하고 싶어서 찾아 보았는데 자바 웹 백엔드 공부를 하려면 스프링은 필수라고 하여서 수강 중인데 내용 이해가 잘 안됩니다. 이럴땐 일단 완강부터 한 후 에 다시 들어봐야 하나요 너무 힘듭니다.
-
실전! 스프링 데이터 JPA
SSR 시 HTTP Patch 메소드는 redirect를 수행할 수 없나요 ?
@RequestMapping(value = "blog/{blogId}/poster/{posterId}/edit", method = RequestMethod.PATCH) ResponseEntity<String> editPoster(@PathVariable(required = false) Long blogId, @PathVariable(required = false) Long posterId, @ModelAttribute PosterDto posterDto, Model model) throws URISyntaxException { categoryService.findCategoryAndAddToModel(blogId, model); posterService.updatePosterByDto(posterId, posterDto); String redirectUrl = "/blog/" + blogId + "/poster/" + posterId; System.out.println("redirectUrl = " + redirectUrl); // 리다이렉션을 원하는 경우 URI location = new URI(redirectUrl);// 새로 업데이트된 리소스의 URI 생성; return ResponseEntity.status(HttpStatus.SEE_OTHER).location(location).body("Resource updated successfully"); } 안녕하세요 JPA주제는 아니지만 아무리 찾아봐도 안떠서 여기에라도 질문을 올립니다..일단 제가 하고있는 프로젝트는 서버사이드 렌더링으로 타임리프를 사용하고있습니다.영한님의 MVC 강의 중 PRG(Post Redirect and Get) 기법을 사용하는 것을 보고 항상 Post method로 데이터를 수정하고 redirect 하는 컨트롤러를 만들었습니다.어느날 Patch 나 Put 이 데이터를 수정하는데 쓰이는 HTTP method라는 말을 듣고 Patch나 Put을 사용한 후 리다이렉트를 해줬는데 리다이렉트가 안되는 문제가 발생하였습니다.구글링을 해봐도 Patch 후에 redirect 하는 방법은 거의 나오질 않고 gpt한테 물어보니 저런 방법을 쓰라고 해서 썼지만 화면이 전환되지 않는 문제가 있었습니다.Patch method 는 redirect를 할 수 없는지 그렇다면 redirect 를 사용한다면 Post method 를 사용하는 것이 좋은지 궁금합니다.
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
안녕하세요. 고민이있습니다.
자바 언어 공부 문법 전체적인 공부를 한번 마친 학생입니다. 스프링을 해야겠다 싶어 스프링 입문을 듣는데 듣는 도중 뭐지? 문법도 그렇고 잘 이해가 안가는 부분이 많습니다. 코드가 이해가 안가는 부분이 많기도 합니다. 이럴 경우 자바를 다시 한번 듣고 스프링으로 넘어 와서 들어야할까요?
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
이클립스와 메이븐..
국비교육으로 현재 학원에서 수강중입니다.이제 곧 스프링을 배우게 되는데 학원에서는 이클립스 사용중이고빌드툴은 메이븐으로 사용한다고 하네요 미리 강의 듣고 공부를 좀 하려고 했는데학원 환경에 맞춰서 이클립스 메이븐으로 설정 맞추고 강의를 들으려고 보니까 패키지 구조도 약간 다르고처음에 환경 설정하면서 오류잡는데만 이틀을 보냈습니다. 그리고 스프링부트 없이 하다보니계속 조금씩 차이가 생기기도 하구요 그래서 그냥 혼자 공부할때만 인텔리제이+그래들로강의랑 똑같이 맞추려고 하는데 괜찮을지 모르겠네요. 가능하면 학원환경에 우선적으로 맞추고강의를 듣고싶었는데 생각보다 다른부분이 많아 고민입니다..타임리프 대신 jsp사용중이기도 하고이렇게 해도 이클립스+메이븐사용하는 학원수업에 지장 없을까요?아니면 어떻게든 이클립스+메이븐으로 가능한한 강의를 따라가는게 맞는지..
-
인프라공방 - 그럴듯한 서비스 만들기
학습방향 질문입니다
인프라에 대해 처음 공부하는 터라 막막함이 있어 강의를 수강하기 시작했는데요. 강의를 듣기 전 미션을 수행하려고 보니 네트워크와 리눅스 지식은 조금 있지만 도커나 was에 대한 학습 내용을 보니 저에게는 어려움이 다가왔습니다. 먼저 미션을 수행하기 전에 아래 도커공부를 먼저 하고 인프라 미션을 수행해야할까요?https://www.brainbackdoor.com/infra-workshop/docker-container
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
자바 스프링 공부 방향과 로드맵
안녕하세요. 자바를 공부하고 있고 스프링 공부를 준비중인 대학 휴학생입니다.제 수준은 대학에 들어와 처음으로 컴퓨터공학이란 학문과 코딩에 입문하였으며 C언어와 자바를 배워 별찍기와 정말 간단한 예제를 풀었던 수준입니다. 아는 것도 별로 없고 궁금증도 많지만 조언을 구하거나 상담을 하며 도움을 받을 방법이 안 보여 인터넷에서 찾아보기를 반복했습니다. 계속해서 많은 정보만 쌓이다보니 길을 잃게 되었습니다.최근에 자바를 다시 공부하기 시작했습니다. 자바를 다시 공부를 하면 김영한님의 스프링 강의를 통해 공부를 해야지 하고 있었는데, 다시금 막힌 부분이 생겼습니다. 자바 ORM 표준 JPA 프로그래밍 - 기본편스프링 부트와 JPA 활용 1,2스프링 데이터 JPAQuery DSL위 5개의 강의들을 스프링 완전 정복 로드맵에서 어느 강의들 사이에 듣는게 좋은지 궁금합니다. 가장 궁금한 부분은 스프링 완전 정복 로드맵을 시작하기 전 JPA를 먼저 공부해야하는지입니다.추가적으로 지금 목표하는 부분은 스스로 JAVA와 스프링으로 무언가를 할 수 있으면 좋겠습니다. 후에 대학생 수준으로 교내외에서 IT협업활동을 진행하고 싶은데 이때 자바와 스프링으로 백엔드, 서버, 웹 부분을 맡을 수 있는지 아니라면 어떤 부분을 할 수 있는지 또 이런 활동이나 동아리, 단체에서 위와 같은 부분을 담당할 수 있다면 김영한님의 로드맵 기준으로 어느 강의까지 들으면 가능할지 궁금합니다.수준 낮은 질문에 부끄럽고 죄송합니다.
-
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
저번질문에 글올렸는데코드가더꼬인것같아요..
https://drive.google.com/file/d/19EdcpxnIZQKKAeCSlucWIrX8HVv4bCtf/view?usp=drive_link 머리아프네요..17강까지 잘되었습니다..
주간 인기글
순위 정보를
불러오고 있어요