반응형

부트캠프/코트스테이츠 백엔드 코스 36

32~34

오늘은 JPA Spring boot의 핵심기능에 대해서 정리해 보고자 한다.기존 JDBC Spring JDBC등 Spring의 Repository역활을 하는 데이터베이스 기술들이 있지만, 요즘의 대세는 JPA기술이라고 한다.즉 JPA는 ORM기술로 데이터베이스로 연동할때 객체를 중심으로 연동하는 기술이다. 즉 클래스를 테이블로 인식하고 연동하는 기술이다. JPA의 P는 영속성을 뜻하는데 이것은 entitymanger을 통해서 확인할 수 있다. ORM은 객체(Object)와 데이터베이스 테이블의 매핑을 통해 엔티티 클래스 객체 안에 포함된 정보를 테이블에 저장하는 기술입니다.JPA에서는 테이블과 매핑되는 엔티티 객체 정보를 영속성 컨텍스트(Persistence Context)라는 곳에 보관해서 애플리케이션..

30~31

이게 뭐람.. 계속 티스토리 400 Not found가 떠서 다른 Tistory 블로그도 다 그렇게 뜨길래 서버가 터진줄 알고 계속 기다렸더니 혹시나 bing으로 들어가봤더니 되는..? 이게 무슨일이지.. 쨌든 다시 bing으로 시작한다.. 얼마나 밀린거야  오늘 알아 봐볼 범위는 Spring MVC부분에서 Excpetion 즉 예외에 대한 처리 부분이다. 기본적으로 Spring boot에서는 한 클래스 안에서 @ExceptionHandler을 명시하고 받을 Exception을 명시하면 그에 대한 예외를 처리할 수 있다. 예를 들면 @ExceptionHandler public ResponseEntity handleException(Exception e) { final List fiel..

28~30회고

이전 회고에서 DTO의 필요성과 Service와의 연관성 에대해서 정리를 했고, 이제 DTO에 대해서 좀 더 정확하게 정리를 해보려 한다.Spring Controller를 통해서 값이 들어올때 DTO로 값을 매핑할때 유효성을 검증 하는 코드를 넣을 수 있는데, 풀어서 작성하려면 코드의 가독성이 떨어지고, 코드가 길어지게 된다. 그렇기에 DTO를 정의할 때 annotaion을 통해 유효성을 맞춰서 넣을 수 있는데 몇가지만 예시로 보여주자면 @NotBlacnk @Email @pattern 같은 annotion을 통해 검증을 할 수 있고,  정규식을 여기서 설명하지는 않겠다.다음으로는 유효성검사를 통해 annotaion을 만들 수 있는 데 만들 수 있는 것은@Target(ElementType.FIELD)@Re..

24~27차 회고

이제 알바가 끝났고, 알고리즘, web , spring , java에 온 전력을 다 할 것이다.월요일부터 화이팅. Spring boot의 핵심 기능과 구조에 대해서 간략하게 정리를 해보았다,HTTP메서드, REST API에 대해서는 이 다음 회고에서 정리하도록 하고 이번 회고에서는  서비스 계층과 DTO에 대해서 설명을 해보려고 한다.앞의 내용을 나중에 설명하는 이유는 앞의 내용이 더 중요한 내용들이 많아서 그렇기 때문이고 간략하게 설명하자면,  컨트롤러, 서비스, 리파지토리 이런 구조로 크게 3가지로 나뉠 수 있고, 컨트롤러에서 handler method를 통해 여러 기능들을 다양한 계층에게 처리하도록 요청 할 수있는데 현재 Service클래스가 없다면? 그것을 Controller의 hadler met..

24일차 스프링 프레임워크

바쁜 일정이 끝나고 다시 돌아온 회고타임.Spring DI , IOC, AOP에 대하여 배웠는데 이 이론을 정리하려다가, 실제 프로젝트를 해보면서 그 사이에 이 기능들이 사용될때 같이 정리하는 게 더 기억에 남을 까 해서, SPRING MVC부터 정리를 하게 되었다, Spring mvc ---> 즉 서블릿의 개념이 들어가고,서블릿이란? 클라이언트 요청을 처리하도록 특정 규약에 맞춰서 JAVA코드를 작성하는 클래스 파일이다.아파치 톰캣은? 이러한 서블릿 들이 웹 애플리케이션으로 실행 되도록 해주는 서블릿 컨테이너라고 간략하게 말할 수 있습니다. Spring MVC란??M === ModelV === ViewC === Controller Model이란? 클라이언트의 요청을 전달 받으면 요청 사항을 처리하기 위..

회고 20~23일차

이제 곧 새벽에 하는 아르바이트를 그만 두고 학업에 몰입하기로 했다. 현재 하고 있는 것은 Spring으로 이것 저것,,,?해야 할 일1. 객체지향 공부(자료가 너무 부족)..2. 데이터베이스 sql말고 설계 연습하기 3. Spring 구글링x 다루기4. 알고리즘 연습 사실 이 4가지만 해도 실력이 금방 늘 것 같긴 한데 항상 미루느라 .. 4.14일부터는 이 모든 것이 몰두하자, 화이팅!!! 데이터베이스 SQL에 대해서 요약을 해드리겠습니다.SQL이란 structured query Language이다. 즉 구조화 된  query 언어이다.즉 질의문을 통해 원하는 데이터를 받아오는 언어라고도 할 수 있다.  In-memory 구조---> 실행시 메모리에 저장해 두었다가 실행종료시 데이터가 사라지는 구조로..

회고 19일

알고리즘 교육을 마치고 이제 새롭게 네트워크 교육에 대해서 배웠고, pair와 postman이라는 어플리케이션을 통해 데이터를 주고 받는 실습을 해보았던 경험을 했습니다. 기본적이으로 좁은 범위에서 연결된 네트워크는 LAN이라고 부른다고 하고,  LAN을 확장 시킨 것을 WAN이라고 합니다. LAN에서 WAN으로 확장 시키기 위해서는 라우터에서 외부로 연결하는 회선이 필요한데 그것은 3대 통신사에서 외부로 나가는 선을 돈을 지불하고 서비스를 구매하게 되면 되는 것이다. LAN             VS        WAN좁은 범위                 넓은 범위 프로토콜: 멀리 떨어진 컴퓨터간 동신을 할때의 규약으로 일정한 약속같은 것을 의미한다. 먼 곳에있는 사람과 통신을 하기위해서는 IP가 필..

회고 18일

stackFirst in Last Out 구조로 맨 처음 들어간는 형식이다.Stack stack = new Stack();stack.add(1);stack.add(2);stack.add(3);//1 , 2 , 3stack.pop();stack.pop();stack.pop();//3, 2, 1stack으로는 주로 페이지를 뒤로가기 페이지 앞으로가기를 할 때 주로 사용하고, 코드를 구현 해 보았다.Queue queue = new LinkedList(); queue.add(1);queue.add(2);queue.add(3);///1,2,3queue.poll();queue.poll();queue.poo();//1,2,3 이 코드는 큐를 이용해 프린터 버퍼 입출력을  나타낸 코드이다.import java.util..

회고 18일차

이제는 알고리즘 중 재귀에 대해 알아보려고 한다. 재귀(再歸) : 원래의 자리로 되돌아가거나 되돌아옴. 라는 뜻으로 쭉 안으로 들어갔다가 다시 원래 자리로 돌아온다는 느낌을 받으면 된다.public void recursion() { System.out.println("recursion!"); recursion();}계속 적 으로 자신을 호출하여 재귀를 하는 것을 재귀라고 합니다. 재귀라는 것은 문제를 가장 작은 단위로 쪼개서 해결하는 문제입니다.만약 1+2+3+4+5라면답은 : 5+f(4+3+2+1)이 될 것이고, 5+4+f(3+2+1) 이렇게 점점 내려갔다가 답을 끌고 올라와 정답이 될 것입니다.사실 재귀는 for문으로 모두 구현이 가능합니다.  재귀는 어떤 경우 사용하냐면1. 문제를 비슷한 구조의..

대 회고 1

기존 스케줄오늘은 목표를 정하고 수행한지 약 한달차가 되어가는 날입니다. 간략하게 저의 일주일 일정을 말하자면월화수목금 :6시10분기상---> 6:30 ~ 8:30 알바 ---> 9:00~6:00 교육 ---> 6:00~7:00 저녁 ---> 7:30~8:30 헬스--> 그뒤 자율주말:자율이렇게 되어있어서, 처음 교육을 시작했을 때는 할만했지만, 정보처리기사 필기를 신청해놓은 상태여서 교육을 따라가고, 필기 준비를 하느라 애를 먹었다.. 결국 정보처리기사 필기를   합격했다 하하하 본론으로 돌아가서 한달 동안의 회고를 해보려고한다. 목표설정나의 가장 큰 목표는 백엔드 분야에서 최고로 명성을 떨치는 백엔드 개발자가 되는 것이다. 난 할 수 있다고 믿는다 . 이제 목표를 단기적으로 나누어 보자면 , 첫 번째..

반응형