목록분류 전체보기 (229)
DevKim
일단 학습을 위해, In-memory DB인 H2 DB를 사용하여 웹콘솔로 CRUD 되는 것을 확인해보았다. (+) DB의 기본인 생성일자와 수정일자도 추가해줌 먼저 웹콘솔로 보이게하기 위해 다음과 같은 코드를 추가해준다. spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:mem:testdb CRUD를 위해 먼저 생성해야하는 것 1. repository -> extends JpaRepository 하면 됨 2. update을 위한 service package 학습 기록용 이기에.. 이런 부분들에 대해선 자세히 서술하진 않겠다. [1] Create repository.save(new Course("스프링 연습하기","홍길동")); +) 생성일자,수..
1. CommandLineRunner - 스프링부트 어플리케이션 구동 시점에 특정 코드를 실행시키기 위해서 제공되는 interface - 구동 시점에 실행되는 코드가 자바 문자열 아규먼트 배열에 접근해야할 필요가 있는 경우에 사용 2. @Bean - 개발자가 컨트롤이 불가능한 외부 라이브러리들을 Bean으로 등록하고 싶은 경우에 사용 3. @Component - 개발자가 직접 컨트롤이 가능한 class들의 경우에 사용 jojoldu.tistory.com/27 @Bean vs @Component Spring으로 개발을 하다보면 @Bean과 @Component를 언제 써야할지 헷갈릴때가 있다. 둘다 목적이 명확하지 않은 Bean을 생성할때 사용하는 어노테이션인데 왜 2개로 나누어져있나 궁금했었는데, 박재성 ..
* H2 = In-memory DB로, 서버가 작동할 때만 돌아가는 DB임 -> 서버가 작동을 멈추면 데이터가 모두 삭제됨 -> 연습용으로 좋아서 선택 0. spring DB로 H2를 사용할것이고, 웹콘솔 보이게 하기 spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:mem:testdb spring.jpa.show-sql=true //jpa 실습시 사용 "http://localhost:8080/h2-console" 1. Person table 생성 CREATE TABLE IF NOT EXISTS person ( id bigint(5) NOT NULL AUTO_INCREMENT, name varchar(255) NOT NULL, age bigint..
RDBMS (Relation DataBase Management System) - 관계형 정보 관리 시스템 1. MySQL - 나중에 프로젝트 배포시 AWS RDS라는 서비스를 사용해 붙여볼 예정 2. H2 : In-memory DB = 서버가 작동할 때만 돌아가는 데이터베이스 서버가 작동을 멈추면 데이터가 모두 삭제됨 -> 연습용에 좋음! //application.properties spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:mem:testdb // 스프링에 H2라는 데이터베이스에 웹콘솔 보이게 해줘 // 스프링의 데이터 소스 데이터베이스로 H2를 사용할거야. jdbc = java에서 DB에 접속할 수 있도록 하는 java API loc..
- API : 클라이언트와 서버가 소통하는 창구 - RDBMS = RDB :정보 저장소 - H2는 RDBMS의 한 종류로, 서버가 켜져있는 동안에만 작동하는 RDB - JPA :번역기 ( 자바 명령어를 SQL로 번역해주는 역할 ) - Repository :클래스의 한 역할 - 데이터에 접근할때 사용하는 도구(JPA를 작동 시키는 매개체) - 스프링은 데이터를 주고받는 방법을 강제함 ( 다 정해져있음 ) - 현업에서는 데이터를 주고 받을 때, DTO를 반드시 이용함 - 코드를 절약할 수 있는 Lombok 사용법 초기설정 dependencies - spring web,spring data,JPA,H2,MySQL,Lombok
chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc?hl=en JSONView Validate and view JSON documents chrome.google.com 데이터를 서버에서 전달 받을 땐 JSON 형식으로 전달을 받는데, 이를 띄워보려고한다. JSON 데이터를 정갈한 형태로 보기 위해 JSONView를 크롬에 추가해줬다. data로 응답하는 것, html/css/js 데이터를 한번에 돌려주는 것 중에, 지금은 데이터만 받아오는걸 할 것임 = 클래스 정보만 띄워주고 싶음 이때, 데이터로 응답하려면 RestController를 사용해야하는데, Rest - 서버의 응답이 JSON 형식임을 나타냄 (데이터) - H..
programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr [ 알고리즘 ] 단순구현 [문제 접근] 이 문제의 관건은 나 자신을 제외한 모든 사람과의 이기고,짐의 결과를 알고 있어야된다는 것이다. 이김 =1, 짐 =-1, 알 수 없음 =0으로 나타낸 리스트를 생성시켜주고 한 명의 정보에 대해서, 만약 a가 b,c,d 에게 지고 , e에겐 이겼다면, 1 ) e는 b,c,d에게 무조건 질 것이고, 2 ) b,c,d는 무조건 e를 이길 것이라는걸 알 수 있다. 이렇게 한명씩 모두 정보를 업데이트 시켜준 후, 각 행에서 0이 하나만 포함된 행을 co..
www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net [ 알고리즘 ] 시뮬레이션 [문제 접근] 문제에 제시된대로 미세먼지 확산과, 공기청정기 작동을 구현하는 문제이다. 문제대로 구현하는건 어렵지 않았는데.. 시간초과 문제가 발생하여 애를 먹었던 문제이다. 1) 5이상인 경우에만 미세먼지가 퍼지는 조건도 추가해보았고 2) deepcopy로 기존의 graph를 저장하는 방식대신 빈 리스트에 확산되는 미세먼지의 양을 저장하여 마지막에 이중 for문으로 더해주는 방식 ..