본문 바로가기

아카이브/스프링21

스파르타 코딩클럽 [ 웹 개발의 봄, Spring ] - 회고 수강 목적 대학 졸업을 앞두고, 실무에 대한 능력이 전무하다 싶을 정도로 무지하기 때문에 수강하게 되었다. 다른 온라인 강의 사이트에서 스프링 강의를 듣고 있었는데, 진도가 더디다고 해야할까, 개념 하나하나를 설명하며 원리를 파헤쳐보는 수업을 듣다가, 마음이 급해져서 빨리 큰 그림을 보고 싶은 마음에 수강하게 되었다. 배운 점 / 잘한 점 API를 설계해보고, 스프링 3계층에 맞게 코드를 구현하고, 이를 클라이언트와 연결해 통신하는 전체적인 프로세스? 를 배웠다. 수행한 프로젝트를 AWS환경에 배포해 보았따. 웹개발 종합반과 유사하게 흘러갔다고 생각되는데, 전체적인 프로세스를 경험해 볼 수 있었고, 좋은 기초 공부가 되었다고 생각한다. 수강을 한 게 잘한 점이라ㅣ 생각한다. 스파르타 코딩클럽의 강의는 비.. 2022. 1. 24.
스파르타 코딩클럽 [ 웹 개발의 봄, Spring ] - 5주차 배운 것 MySQL을 AWS RDS에 설치 후, 컴퓨터에 연결해보기 ( 데이터를 클라우드에 저장 ) AWS에서 EC2(컴퓨터)를 사고, 프로젝트 배포해보기 도메인을 붙여보기 내용 정리 MySQL을 AWS RDS에 설치 후, 컴퓨터에 연결해보기 AWS RDS에서 MySQL로 서비스를 생성했다. 그리고 누구나 접근할 수 있도록 포트를 열어줬고 ( 기본 생성 시 포트가 막혀있음, 실무에선 접근할 수 있는 IP를 특정함 ) 인텔리제이와 연결! application.properties에서 다음과 같이 설정 spring.datasource.url=jdbc:mysql://나의엔드포인트:3306/myselectshop spring.datasource.username=나의USERNAME spring.datasource... 2022. 1. 22.
스파르타 코딩클럽 [ 웹 개발의 봄, Spring ] - 4주차 배운 것 API 이용해보기 프로젝트를 수행하면서 스프링 3계층(Controller, Service, Repo) 숙달 서버 - 클라이언트 통신 프로세스 익히기 내용 정리 API 이용해보기 네이버 쇼핑 API를 이용 신청해보고, 이용해보았다. ARC로 테스트 해보고, 자바코드로 변환해서 자바로도 API를 테스트해보았다. public class NaverShopSearch { public String search() { RestTemplate rest = new RestTemplate(); HttpHeaders headers = new HttpHeaders(); headers.add("X-Naver-Client-Id", "발급받은 Client ID"); headers.add("X-Naver-Client-Sec.. 2022. 1. 22.
스파르타 코딩클럽 [ 웹 개발의 봄, Spring ] - 3주차 배운 것 REST API 전체 프로세스 복습 JQuery, Ajax를 사용해 서버와 통신 내용 정리 JPA 쿼리 메소드 예시 public interface MemoRepository extends JpaRepository { List findAllByOrderByModifiedAtDesc(); } jQuery - 미리 작성된 자바스크립트 함수 모음집 - 많이 쓰는 HTML, CSS 조작 함수를 미리 만들어서 제공해주는 것 ㅇ 임포트 ㅇ 사용법 - $ 로 시작하고, 괄호 안에 선택자로 대상을 적으면 된다 $('#contents').hide(); Ajax - 클라이언트에서 서버로 데이터를 요청하고 그에 대한 결과를 돌려받음 - 자바스크립트를 통해서 서버에 데이터를 비동기 방식으로 요청하는 것 $.ajax({.. 2022. 1. 5.
스파르타 코딩클럽 [ 웹개발의 봄, Spring ] - 2주차 배운 것 JPA 스프링의 구조 (Controller, Service, Repository) CRUD REST API 내용 정리 JPA - 자바 코드를 SQL로 번역하기 위해 사용 데이터베이스에서 "테이블"은 자바에서 "Domain"으로 표현되고 데이터베이스에서 "SQL"은 자바에서 "Repository"로 표현된다. 테이블을 자바에서 Domain으로 만들기 위해선 어떻게 해야할까? @Entity public class Person { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @Column(nullable = false) private String name; ... } @Entity라는 애노테이션을 붙여 '테이블'임을 나타낸.. 2022. 1. 2.
스프링의 정석 (세션) 배운 것 세션 개념 내용 정리 세션 - 서로 관련된 요청/응답들을 하나로 묶은 것 (원래 요청은 독립적) - 요청을 하나로 묶기위해 쿠키를 이용 - 브라우저마다 개별저장소(session)가 만들어짐 - 쿠키는 브라우저에, 세션객체(저장소)는 서버에 저장 브라우저가 요청을 보내면 서버가 세션아이디를 쿠키에 저장해서 브라우저에 전송 브라우저의 다음 요청부터 쿠키가 같이 전송되어지므로 2번째 요청부터 같은 세션 같은 세션아이디라는 공통점이 생김(그룹화) 같은 세션에 포함되어 있는 동안 세션저장소(객체)이용 가능 세션이 끝나면 새로운 세션아이디 발급 (새로운 세션저장소 이용) 세션객체의 생성 - 브라우저가 요청하면 서버가 무조건 세션객체(저장소)를 만듦 - 세션객체마다 세션아이디를 가지고 있음 - 저장소를 쓸 .. 2021. 12. 28.