JAVA
-
[Spring] Bean이 도대체 뭘까?JAVA/Spring Boot 2021. 8. 31. 15:23
방학 동안 JAVA 공부를 조금씩 하면서 스프링 강의를 들으며 좀 깊게 공부하려고 해봤다. 돌아보면 방학 때 뭐했지 싶긴 한데,, 또 막상 이것저것 건드린게 많긴 했다. 최근들어 하반기 공고도 많이 올라오면서 다시 열심히 공부를 해야할 것 같았다. 가고 싶은 곳은 많은데 한 번 들어가기가 쉽지많은 않구나 싶다. 기업마다 또 원하는 인재상이 조금씩 틀린것 같다. 8월이 가기 전에 방학동안 한 것들을 토대로 정리를 해볼까 하다가 다음주에 또 면접이 있는 바람에 준비를 하는데, 더 늦어지면 쭉 안 할 것같아서 조금씩 작성하기로 했다. 7,8월 간 갓영한님의 Spring 핵심원리, Spring MVC ... Query Dsl 강의까지 한 번 쭉 들었다. 앞으로 개발을 하면서 모르는 내용은 다시 한 번 pdf 파..
-
[Spring Boot] 이미지 로딩 방식 고찰JAVA/Spring Boot 2021. 5. 26. 10:34
토이프로젝트를 하면서 백앤드 로직에서는 문제를 못 느꼈지만, 프론트를 직접 구현하면서 느꼈던 문제를 리뷰해보겠다. 아직 머리 속으로 프론트에서 어떤 것들이 필요한지 완벽하게는 그려지지 않았기 때문에 생겼던 문제 같다. 아래의 그림과 같이 OrderList 테이블이 있다. 여기서 보았을 때 OrderList 테이블에는 Picture의 사진이 저장되어 있지만 프론트에서 사진을 받을 때 img 태그의 src를 받기 위해선 해당 Picture의 정보만 반환해 줄 수 있는 URL이 따로 필요 했다. img 태그의 src에 Picture의 정보를 넣어 봤을 때, 404 에러가 나면서 이미지가 로딩되지 않았다. ( 에서 해당 src 부분을 이야기 하는 것) 이유는 해당 src에 Blob의 정보 즉 바이트 덩어리들이 ..
-
[JPA] 영속성 컨텍스트란? (개념, 장점)JAVA/JPA 2021. 4. 23. 11:30
김영한님의 JPA 책 중 앞부분 내용인 영속성에 관련한 부분을 글로 설렁설렁 읽고 맵핑 관련된 부분만 읽은 뒤 바로 실천에 옮겨봤다. 이미 ERD를 다 완성시키고 양방향 맵핑을 한 뒤 책을 다시 읽어보니, [단방향 맵핑위주로 하고 그 뒤로 필요한부분만 양방향 맵핑을 하는게 좋다]고 되어 있었다... 데이터베이스 테이블의 관계를 통해 테스트코드나 조회, 수정 등 과정을 하고싶다면 먼저 영속성 컨택스트가 뭔지 혹은 어떻게 동작하는 지 미리 숙지하면 좋을 것 같다. 꼼꼼하게 책을 읽지 않은 덕분일 수 있겠지만, 양방향 맵핑을 하면서 생기게 된 문제점들과 영속성 컨택스트에 관한 내용을 덕분에 다시 한 번 읽고 블로그에 포스팅 하는 계기가 될 수 있었던 것 같다.. 도서관에서 빌렸던 책이라 밑줄과 메모를 하지 못..
-
[Spring Boot] DTO 관련 에러 해결 (Post 요청 시)JAVA/Spring Boot 2021. 4. 17. 20:18
요즘은 PS보다는 개발하는 것이 더욱 재밌다. Spring boot 와 JPA에 대해서 하나씩 알아가면서 이것저것 알아가는데 할 수록 일이더 많아지는 느낌이 든다. 처음 강의를 들을 때 그저 강사님의 내용을 따라치는 과정이라 '그렇구나' 하고 이해하는 정도였지만, 직접 ERD를 그려가며 내가 원하는 정보를 DB에서 JPA를 활용해 가져오면서 여러 에러들을 봤고, 처리 했던 에러를 포스팅 해보고자 한다. JPA로 간단한 ERD를 만들고 Controller ~ Service 과정을 이해하기 위해 연습하면서 나타났던 에러였다. 포스팅하기 위해 메모로 남겨눴다가 직접 에러나는 상황을 만들어 보며 글을 작성 했다. 이번 에러는 Controller에서 Post 했던 JSON을 DTO로 받아오는 과정에서 발생했던 에..
-
[JPA] 테이블 1:N 관계 만들기 (ERD 연습 1)JAVA/JPA 2021. 4. 14. 00:13
'스프링 부트와 AWS로 혼자 구현하는 웹서비스'라는 책을 보면서 한 테이블의 CRUD를 구현해 보았다. 최대한 책 내용을 안 보고 짜고 싶었고, 틀린 부분과 잘 안되는 부분들을 생각 해보고 또 다른 책인 김영한님의 JPA 책을 읽어가며 해결 하려고 했다. 궁금증을 해결하지 못한 것들은 메모로 남겨두고, 좀 더 깊이 공부하면서 알아갈 것이다. 책에서는 한 테이블에서의 CRUD만 구현했다. 기초적인 것을 여러번 안 보고짜는 연습을 한 뒤, 테이블의 관계는 어떻게 설정을 할 지 궁금증이 생겼고, 김영한님의 JPA 책도 보고, 구글링을 하면서 테이블의 연관 관계를 나타 내어 보았다. 여러번 테이블들의 조회나 테스트 코드 작성을 통해 어떤식으로 동작하고, data.sql에 데이터를 미리 넣어둠으로써 데이터가 잘..
-
[Spring] Controller와 GET, POST 사용 방법JAVA/Spring Boot 2021. 3. 28. 13:33
맨 처음 강의를 들었던 것은 김영한 님의 스프링부트 기초 과정을 들었던 적이 있다. 그 뒤로는 패스트 캠퍼스를 통해 자바의 문법을 다지고 슬슬 본격적으로 Spring을 공부하는 중이다. 첫 글로는 어떤 것을 정리하면 좋을까 생각했고, Controller를 다루는 포스팅을 해보자고 생각했다. Controller란 무엇일까? 먼저, Controller는 MVC 패턴에서 C를 담당하는 부분이다. MVC는 Model, View, Controller의 약자이다. 개발할 때 보통 MVC패턴을 활용하여 개발한다. 만약 이러한 구분없이 코드를 짜게 된다면 코드가 주구장창 길어질 수 있고 이렇게 된다면유지 보수가 어려워지고 개발하기 또한 어려워 지게 된다. Controller는 MVC 중의 Model 과 View 간의 ..
-
[Spring] 왜 백앤드 개발자가 되고 싶은지JAVA/Spring Boot 2021. 3. 4. 20:27
웹 개발을 많이 해본 것은 아니지만 클라이언트, 서버를 다 개발을 해 본 경험은 있다. 디자이너와 협업으로 프론트 개발을 했을 때는 디자인 적으로 수정할 것들이 많았고, 리액트를 활용했기 때문에 상태관리 부분에서 힘들었던 것 같다. 물론 개발은 native로 해서 이것저것 많이 찾아보면서 완성 시켰다. 서버 개발은 많이 해본 적은 없지만 배포까지 Node js(express)를 활용해서 사이트를 만들어 본 적이 있다. 원하는 데이터를 던져주고 배포하는 단계까지 공부량이 좀 많았지만, 배포까지 완성 했을 때의 희열은 잊지 못했다. 둘 다 깊게 해본 것은 아니지만, 프론트에서 상태관리를 어떻게 효율적으로 할 지 고민을 했던 적도 있고, 디자인을 할 때 어떤 식으로 해야 유지 보수가 쉽게 될 지, API 문서..