스프링17 스파르타 코딩클럽 [ Spring 심화반 ] - 3주차 배운 것 테스트의 필요성 스프링 테스트 프레임워크 (JUnit) 통합테스트 내용 정리 테스트의 필요성 테스트를 하는 이유는 '버그'를 예방하기 위해서이다. ※ 버그 - 소프트웨어가 예상하지 못한 결과를 내는 것 - '소스 코드'나 '설계과정에서의 오류'때문에 발생 현업에서 '버그'란? 사용자들에게 불편을 준다 일부 기능이 동작하지 않음( 결제, 로그인 등등 ) 일부 기능이 의도와 다르게 동작 ( 10만원 결제 -> 100만원 결제 ) 전체 기능 동작하지 않음 ( 서비스 접속 불가 ) 회사에 악영향을 끼친다 매출 감소 신뢰도 감소 '저녁 없는 삶, 주말 없는 삶, 휴가 없는 삶..'의 원인이 된다 버그는 시간을 가려서 발생하지 않음 ( 근무 시간에만 발생 x ) 소프트웨어는 스스로 오류를 해결하지 않음 어.. 2022. 2. 13. 스파르타 코딩클럽 [ Spring 심화반 ] - 2주차 배운 것 인증, 인가 쿠키, 세션 스프링 시큐리티 프레임워크 소셜 로그인 내용 정리 인증, 인가 인증(Authentication) - 사용자 신원을 확인하는 행위 인가(Authorization) - 사용자 권한을 확인하는 행위 웹에서의 인증, 인가 - 인증 : 로그인을 통해 본인임을 확인 (주로, 아이디와 패스워드 이용) - 인가 : 주로 역할에 따른 사용 권한 관리 쿠키와 세션 HTTP는 상태 정보를 저장하지 않아 사용자를 구별하지 못하는 특성(Stateless)을 가진다 같은 클라이언트에서 서버에 여러번 요청해도, 같은 클라이언트에서 보내는 요청임을 알 수 없다 쿠키와 세션은 HTTP에 상태 정보를 유지(Stateful)하기 위해 사용된다 쿠키와 세션을 통해 서버에서는 클라이언트를 식별하고, 클라이언.. 2022. 2. 5. 스파르타 코딩클럽 [ Spring 심화반 ] - 1주차 배운 것 스프링 학습 전략! 스프링 3계층 (Controller, Service, Repository) 설계의 이유 파악 스프링 MVC 에 대한 이해 스프링의 핵심인 IoC / DI 이해 내용 정리 스프링 학습 전략 - 스프링은 약 20년 간 진화된 프레임워크로, 방대한 양의 관련 기능과 옵션 존재 - 쉽게 사용 가능하지만, 원리 파악은 어렵다 우선 원리보단, 사용법 위주로 경험하기! 간단한 프로젝트들을 만들고, 기능을 추가하며 살을 붙인다. (스프링은 모듈화가 잘 되어있어 필요한 부분 추가가능) 이후에, 원리를 학습한다! Servlet - 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램! 웹 개발의 봄, Spring 수업에서 Controller를 사용해 구현을 했는데, 이를 Servlet으.. 2022. 1. 26. 스파르타 코딩클럽 [ 웹 개발의 봄, 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. 이전 1 2 3 다음