코드프레소(17)
-
자바 선택정렬(Selection Sort)
기준이 되는 수를 정하고 그 수와 나머지를 비교하여 가장 낮은 수를 제일 앞으로 보내는 정렬입니다. 코드프레소 DevOps Roasting Course 2기 진행중입니다.
2020.05.09 -
vue-cookie 라이브러리를 사용하여 회원 토큰 사용하기
현재 Vue를 사용하여 간단한 회원, 상품 관련 서비스 쇼핑몰 사이트를 만들고 있다. 회원가입을 하고 로그인을 하면 토큰이 생성되도록 백엔드쪽에 API를 만들어 놓았다. 그 토큰을 쿠키로 사용하여 로그인 시 Sign Out 버튼과 My Basket 버튼이 보이고, 로그아웃 시 Sign Up 버튼과 Sign In 버튼이 생기도록 화면을 구현해보고자 한다. 목차 1. 라이브러리 설치 2. 쿠키 생성 - main.js 3. 쿠키 생성 - SignIn.vue 4. 쿠키 삭제 1. 라이브러리 설치 https://www.npmjs.com/package/vue-cookie vue-cookie A Vue.js plugin for manipulating cookies www.npmjs.com 위 사이트에 가면 vue-c..
2020.04.28 -
스프링부트에서 JPA-MySQL 연동하기 3: 1:N 연관관계 설정
지난 번까지는 각 테이블 간의 연관관계를 하나도 지정해주지 않고 기본적인 작동 방식만 알아보았다. 이번에는 PK-FK로 연관된 테이블의 관계를 엔티티에서 역시 맺어보고자 한다. 이 프로젝트의 테이블들의 상관관계는 다음과 같다. 상품과 관련된 prod 테이블이 있고, 상품을 조회하면 글/이미지 쌍으로 디테일이 있는 prod_detail 테이블이 있다. 두 테이블은 1(prod) : N(prod_detail) 관계이다. prod 테이블의 no 컬럼이 PK이며, prod_detail의 prod_no 컬럼이 prod 테이블을 참조하는 컬럼이다. 상품이 삭제되면 디테일도 삭제되어야 하기 때문에 양방향 관계를 가진다. 이 방향이라는 것은, 양방향/ 단방향이 있다. 테이블 개념에서 볼 때 PK-FK로 연관관계를 맺고..
2020.03.26 -
스프링부트에서 JPA-MySQL 연동하기 2: 레포지토리 설정
목차 1. DAO, Service, Controller 작성 2. REST API를 사용하여 회원가입 기능 구현 이번에는 간단히 CRUD 기능을 사용하기 위해 DAO, Service, Controller를 작성하는 것에 대해 알아보고자 한다. 1. DAO, Service, Controller 작성 MyBatis 환경에서 DAO와 동일한 개념이 레포지토리 인터페이스이다. 여기서 JPA의 특징적인 점은 별도의 구현 클래스를 만들지 않고 인터페이스만 정의함으로써 기능을 사용할 수 있다는 것이다. 여기서 보통 Spring Data 모듈에서 제공하는 CrudRepository를 상속한다. 추가적으로 페이징 처리를 할 경우에는 PagingAndSortingRepository를 사용한다. package com.cod..
2020.03.24 -
스프링부트에서 JPA-MySQL 연동하기 1: 엔티티 설정
목차 1. perspective 설정 2. 새 프로젝트 생성 3. application.properties 작성 4. 엔티티 클래스 매핑 * Git Repository에 업로드 기존에 MyBatis로 DB를 사용했던 것을 JPA로 전환하려고 한다. 작업한 코드는 여기에 업로드하였다. 1. perspective 설정 Spring 선택 2. 새 프로젝트 생성 Spring Starter Project 선택 정보 입력 5가지 의존성 추가 3. application.properties 작성 # DataSource Setting spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1..
2020.03.23 -
MySQL 전체 텍스트 검색
전체 텍스트 검색은 긴 문자의 텍스트 데이터를 빠르게 검색하기 위한 MySQL의 부가적인 기능이다. 전체 텍스트 검색을 사용하면 기사의 내용에 포함된 여러 단어들에 인덱스가 설정되어서 검색 시에 인덱스를 사용하여 검색 속도가 월등히 빨라진다. 전체 텍스트 인덱스는 신문기사와 같이 텍스트로 이루어진 문자열 데이터의 내용을 가지고 생성한 인덱스를 말한다. SELECT * FROM 신문기사_테이블 WHERE 신문기사내용 '교통 사고의 증가로 인해 오늘 ----'; SELECT * FROM 신문기사_테이블 WHERE 신문기사내용 LIKE '교통%'; 인덱스가 정렬되어 있으므로, 해당되는 내용이 인덱스를 통해서 빠르게 검색함. SELECT * FROM 신문기사_테이블 WHERE 신문기사내용 LIKE '%교통%';..
2020.03.19