전체 글

전체 글

    [Git/Github] fail to push to ~~ 해결하기

    1. 오류 설명 - 깃으로 원격저장소에 push를 할 때 아래와 같은 오류가 자주 발생한다. - 오류 메세지 내용은 main 에서 main으로 보낼 때 non-fast-forward 가 발생해서 거절한다는데, ! [rejected] main -> origin/main (non-fast-forward) error: failed to push some refs to 'github.com:simDev1234/spring.git' hint: Updates were rejected because a pushed branch tip is behind its remote hint: counterpart. Check out this branch and integrate the remote changes hint: (e..

    알고리즘 속도 구하기

    | 알고리즘 속도 구하는 방법 - 아래와 같은 방법으로 알고리즘 속도를 구할 수 있다. - 예전에 알고 있던 방법이었는데, 금방 잊어버렸기에 생각날 때 노트해두었다. Long start = System.currentTimeMillis(); // 알고리즘 돌리고 Long end = System.currentTimeMillis(); System.out.prinln(end - start + " ms");

    [이펙티브 자바] 객체의 생성

    보호되어 있는 글입니다.

    [LSM 만들기] 스프링부트 프로젝트 생성하기

    [LSM 만들기] 스프링부트 프로젝트 생성하기

    | 개요 - 수업에서 스프링부트로 LMS 프로젝트를 만들려고 한다. - 프로젝트 환경 설정을 하는 과정이 복잡해 보여서 정리를 하면서 따라가려고 한다. - 지금 정리하는 부분 이전에서는 LMS를 사용하는 사이트를 벤치마킹 해서 엑셀로 사용할 데이터를 정리한 후, ERD로 모델링을 했었다. - 오늘 하는 내용에서는 먼저 깃헙을 로컬 저장소에 연동하고, jdk/was/db를 설치한 후, 스프링부트를 통해 각 에디터에서 프로젝트를 생성하는 걸 해보려고 한다. Github 연동부터 DB 설치까지 - 지금 정리하는 부분은 JDBC 프로그래밍을 할 때- JDBC를 넣은 걸 빼고- 환경설정 방법과 거의 유사하다. - 실제 회사에서는 DB가 이미 있을 것이므로, SQL툴 또는 cmd를 통해 DB 계정으로 접근하면 될 ..

    Git, Github 정리

    | 버전관리 시스템 이란? - VCS (version control system) 또는 SCM (Source Code Management) 이라고 한다. - 과거에는 프로젝트를 압축파일을 통해 관리했으나, 현재는 소스 버전관리 시스템을 사용해 관리한다. - 다양한 버전 관리 시스템 : CVS, SVN(Subversion), git, SourceSafe(MS), TFS - 다양한 버전 관리 툴 : github, bitbucket, gitlab | Git 설치 및 GitHub 가입하기 1. git 설치 : https://git-scm.com/ 에서 Git 설치를 한다. (Mac이나 리눅스는 홈브루 등을 사용) // 설치 확인하기 git --version 2. github 가입 : https://github...

    JPA란 무엇인가?

    | JPA - JPA란, 자바에서 사용하는 ORM 기술 표준을 말한다. * ORM : 객체와 RDBMS를 매핑해주는 기술 - JPA는 인터페이스의 모음으로, Hinernate / EclipseLink / DataNucleus가 이 명세를 구현했다. | JPA를 왜 쓸까? 1. SQL 중심 개발 -> Object 중심 개발 2. 생산성 : 데이터의 CRUD가 훨씬 쉬워진다. 저장 : jpa.persist(entity) 조회 : jpa.find(pk) 수정 : entity.setName(" ") 삭제 : jpa.remove(entity) 3. 유지보수 : 필드 변경 시 모든 SQL 수정 --> 필드를 하나만 더 추가 4. 패러다임 불일치 해결 rf. 객체와 관계형 DB의 차이 객체 SQL 상속 객체 상속 관..

    ORM 기술이란 무엇인가?

    ORM 기술이란 무엇인가?

    | 개요 - 영속성이란, 프로그램이 종료된 이후에도 한 번 처리한 데이터는 DB에 영구적으로 반영된 상태여야 함을 뜻한다. - 자바를 통해서 DB와 소통하는 방식은 다양한데, 그 중에서 Persistence Framework를 사용하면 Object를 통해 SQL문을 만들 수 있다. - Persistence Framework는 크게 1) SQL Mapper 2) ORM 으로 나뉠 수 있으며, 두번째 방식이 현재 가장 많이 사용되는 방식이다. [ 영속성이란? ] 영속성이란, 데이터를 생성한 프로그램이 종료된 후에도 사라지지 않는 데이터 특성 [ 출처 ] 위키백과 [ 자바에서 데이터를 저장하는 방법 ] - JDBC 프로그래밍 (순수 Java) - Spring JDBC - Persistence Framework..

    DBMS - 정규화 vs 비정규화

    | 정규화와 비정규화에 대한 개념이 정리된 포스팅이 있어 가져와 보았다. https://owlyr.tistory.com/20 [데이터베이스] 정규화 vs. 비정규화(반정규화) 💡 정규화 vs. 비정규화(반정규화) 데이터베이스 정규화 데이터베이스 비정규화 데이터베이스 비정규화(Denormalization, 반정규화)란 무엇인가? 장점, 단점 비정규화 대상 주의점 정규화(Normalized)란 owlyr.tistory.com | 간단 요약 정규화란, RDBMS에서의 데이터의 중복을 최소화하는 작업을 말한다. > 정규화를 많이 하게 되면 조인을 많이 해야하는 단점이 있다. 비정규화란, 반면 의도적으로 데이터를 중복시키거나, 데이터를 그룹핑함으로써, 성능을 최적화하는 작업이다.

    DBMS 내부 처리 순서 - select / from / where / group by / having / order by

    SQL 문법 실제 처리 순서 1 SELECT count(*) as c FROM member 테이블에서 직업이 개발자인 사람들을 추출 2 FROM member SELECT 3 WHERE job = '개발자' WHERE 4 GROUP BY nationality GROUP BY 국적에 따라 그룹핑 5 HAVING avg(salary) >= 3000 HAVING 평균 연봉이 3000 이상인 경우로 한정 6 ORDER BY c ORDER BY 순서 지정 ** WHERE와 HAVING의 차이점 WHERE HAVING 위치 FROM 뒤에 GROUP BY 뒤에 언제 SELECT한 레코드의 조건 정의 그룹화되어 만들어진 레코드 집합의 조건 정의 [ 참조 및 출처 ] 부트캠프 수업 참조 https://m.blog.nave..