본문 바로가기

전체 글

(30)
application.yml(postgresql)설정 저장 spring: datasource: url: jdbc:postgresql://localhost:5432/schema_name username: name password: pass driver-class-name: org.postgresql.Driver jpa: show-sql: true hibernate: ddl-auto: create database-platform: org.hibernate.dialect.PostgreSQLDialect logging.level: org.hibernate.SQL: debug 할때마다 찾기 귀찮아서 저장. 세부 설명이나 추가사항 생기면 수정하자
자바 ORM표준 JPA 프로그래밍 정리 www.inflearn.com/course/ORM-JPA-Basic/dashboard 자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다. 초급 웹 개발 프로그 www.inflearn.com 실무에서 어떤식으로 사용하는지와 가이드를 말해줘서 좋았다. 강사님이 잘 가르쳐 주시고 질문 했을 때 피드백도 빠르셔서 좋음 www.evernote.com/shard/s381/sh/7690cbe1-c9c8-6229-481b-68a271036f00/0d7a7c37125b5473133456c0773c29f3 강의 노트 SQL을 쓸 때 자바 컬..
insert on Conflict www.postgresqltutorial.com/postgresql-upsert/ PostgreSQL Upsert Using INSERT ON CONFLICT statement www.postgresqltutorial.com postgreSql 에서는 on Conflict라고 insert한 데이터가 키충돌이라든지 해서 문제가 발생했을 때 후속작업을 할 수 있는 쿼리 문이 있다. insert 시 키가 중복인 경우 에러가 나는 대신 update 같은 작업을 하게 할 수 있다. 주의점은 일단 insert 자체는 실행되는거라 sequence 같은 게 생각 보다 많이 추가 될 수 있다. 중복 값 검증할 때 써봤는데 500개를 insert 하고 그 중 실제 insert는 3개만 되었어도 시퀀스는 500개가 늘어난다.
svn 로컬 파일들이 없다고 나올 때 지금 다니는 회사는 형상관리 툴로 svn을 쓴다. 뭐 그렇다고 형상관리를 한다기 보다는 협업 툴 정도로 쓰기는 하지만... 여튼 다른 사람 컴퓨터에서 소스 파일들이 지워진거로 나왔었다. 디렉토리에는 남아있는데 이클립스에서 보기에는 없다고 나왔고, 단순하게 revert나 override and update 도 안먹혀서 구글링 해보니까 svn connector를 java hl 에서 svn Kit로 변경하라고 해서 바꿨더니 해결됐다. 집에와서 구글링 해봤는데 속시원한 것은 못찾았고, ingbeeni.tistory.com/entry/SVN-Subclipse-Subversion-%EC%B0%A8%EC%9D%B4%EC%A0%90 SVN Connector Client 차이점 SVN Connector Client 들의..
Builder 패턴 제품을 여러 단계로 나눠서 만들 수 있도록 각 단계들을 캡슐화하는 패턴 복합 객체가 생성되는 과정을 캡슐화 여러 단계와 다양한 절차를 통해서 객체를 생성할 수 있다. 객체 생성 과정을 여러 단계로 나누어서 다양한 요구에 대응하면서 객체를 생성하기 위한 패턴 같다. 패턴 흘러가는 건 알겠는데 어디에 쓸지 감은 잘 안온다. 롬복 보면 @Builder 쓰던데 좀 참고 해야할 듯. P.S 지금 공부하는 책 예제 따라가면 터미널에서 실행 시키게 되어있는데 명령어가 안먹혀서 찾아보니까 패키지 만들어서 그런 거였다. 패키지 만들었으면 class파일 있는 곳 상위 경로(이클립스는 bin 폴더) 에서 패키지.class 식으로 경로 따라가야함. ex) bin/builder/Main.class 라고 하면 bin폴더로 경로 ..
canvas에 이미지 넣을 때 사이즈 맞추기 developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage CanvasRenderingContext2D.drawImage() - Web APIs | MDN The CanvasRenderingContext2D.drawImage() method of the Canvas 2D API provides different ways to draw an image onto the canvas.void ctx.drawImage(image, dx, dy); void ctx.drawImage(image, dx, dy, dWidth, dHeight); void ctx.drawImage(image, sx, sy, sWidth, s developer.m..
프로토타입 패턴 인스턴스를 복사하는 패턴(JAVA clone메소드 사용) 자바에서는 SomeClass instance = new SomClass() 형태로 인스턴스를 생성, 경우에 따라 클래스 이름을 지정하지 않고 인스턴스를 생성할 때가 있다. 종류가 너무 많아 클래스로 정리 되지 않는 경우 클래스로부터 인스턴스 생성이 어려운 경우 framework와 생성할 인스턴스를 분리하고 싶은 경우(frameword가 특정 클래스에 의존하지 않게하는 경우) Prototype : 인스턴스를 복사하여 새로운 인스턴스를 만들기위한 메소드를 결정 ConcretePrototype : Prototype 실제 구현 Client : 새로운 인스턴스를 만드는 역할 소스 코드 내부에 클래스 이름으로 직접 인스턴스를 생성하는 경우 그 클래스가 아닌 ..
Factory Method 인스턴스를 생성하는 패턴 상위클래스에서 골격을 정하고 하위클래스에서 구체적인 처리를 하는 템플릿 메소드 패턴을 인스턴스 생성에 적용한 패턴 Creator에서는 Product의 인스턴스를 생성하고 관련 메소드(factoryMethod)를 정의 Product에서는 인스턴스 생성 후 사용할 메소드를 정의 Concrete들에서는 상위클래스에서 정의한 메소드를 구현하고 전체적인 실행흐름은 상위클래스를 따라감