본문 바로가기
728x90
반응형

전체 글421

JPA 복합키 대부분의 엔티티에는 @Id 애노테이션을 한 개 사용한다. 하지만 테이블의 키가 복합키로 이뤄져 있다면 엔티티를 설계할 때에 이를 고려해야 한다. 복합키 설정 방법은 두 가지가 있다. 1 2 @Embeddable 이용하는 방법 @IdClass 이용하는 방법 cs 첫 번째 방법이 객체지향 방식에 가깝다고 한다. 두 번째 방법은 DB 방식에 가깝다고 하는데 잘 와닿지는 않는다. @Embeddable 이용 방법 다음과 같이 emp 테이블이 존재한다. emp 테이블의 키는 emp_name, emp_no 두 개의 복합키로 이뤄져 있다. 1 2 3 4 5 6 create table emp ( emp_name varchar(255) not null, emp_no integer not null, name varchar(.. 2021. 8. 5.
[ 조은글 5204호 - 제갈량과 홍타시 ] 인간은 모두 한가지 이상 특기를 타고 나왔습니다. 우리가 세상에 나온 순간 이미 출세를 거죠. 왜냐하면 이미 수억분의 1의 확률을 뚫고 이 세상에 나온 것이니까요. 그런 마음 가짐이라면 하지 못할 일이 없습이다. 만약 로또보다 어려운 확률 도전에 포기했다면 이미 우리는 이 세상 사람이 아닌 것입니다. 그러기에 마음 먹기 따라 아니 똑같은 상황이라도 긍정이냐 부정이냐 바라보는 시각에 따라 결과가 달라집니다. 예를 들어 물컵에 물이 반잔이 있을 때 "이제 반잔밖에 없네" 라는 부정적 시각과 "아직 반잔이나 남아 있네" 라는 긍정적 시각이 교차합니다. 그래서 여기 긍정적 시각의 위대한 결과에 따른 사례를 소개합니다. 소개할 내용은 제갈량과 홍타시입니다. 제갈량(諸葛亮)이 위나라 군대를 맞아 오장원두에서 최후의.. 2021. 8. 5.
기본 Java 타입과 DB 필드 매핑 A.1. 개요 이 기본 매핑은 CMP Bean의 이 jeus-ejb-dd.xml에 지정되어 있지 않을 때 사용한다. 이런 경우에는 EJB 시스템은 Bean의 CMP 필드 중 Java 필드를 검색하여 Java 타입을 얻어 오고 은 다음의 각 절에 나오는 기본 매핑에 지정된 것과 같다고 여긴다. 다음의 테이블에서는 3가지의 컬럼들을 보여주고 있다. Java 필드 타입 검색을 통해 발견된 EJB CMP 필드의 종류 SQL 타입 java.sql.Types 클래스에서 정의된 일반적인 SQL 종류 DB 컬럼 타입 발견된 Java 필드 종류에 기반하여 새로운 테이블을 생성할 때 JEUS가 사용할 DB 컬럼 종류의 이름A.2. Tibero 필드 - 컬럼 타입 매핑A.7. Cloudscape 필드 - 컬럼 타입 매핑 [.. 2021. 8. 4.
[ 조은글 5203호 - 시간 ] 불평등한 사회 속에서 그나마 공정하게 주어지는 것이 있다면 시간입니다. 시간은 누구나에게 똑같이 흘러가며 멈출 수도 없는 불가항력적인 것이죠. 우리는 시간 속에 살고 있지만 정작 시간에 대해서는 꽤나 무감각한 편입니다. 익숙한 것에 대해 소중함을 모른다고 해야할까요..? 인생은 1초가 모여 1분이 되고, 1분이 모여 1시간이 되고, 1시간이 모여 하루가, 이런 하루가 모여 전체 인생을 이룹니다. 이런 시간을 어떻게 쓰느냐에 따라 어떤 삶을 살았는지 결정하게 됩니다. 가장 먼저 시간을 잘 활용하려면 시간에 대해 소중함을 느끼는 것이 먼저입니다. 당신은 지체할 수도 있지만 시간은 그러하지 않을 것입니다. 낭비한 시간에 대한 후회는 더 큰 시간 낭비입니다. 시간은 인간이 쓸 수 있는 가장 값진 것입니다. 시간.. 2021. 8. 4.
윈도우에서 포트 죽이기 윈도우 cmd 창에서 netstat -a -o 먼저 명령프롬포트창인 CMD를 열어 netstat -a -o 명령어를 입력합니다. 위 사진과 같이 프로토콜 / 로컬 주소 / 외부 주소 / 상태 / PID가 주르륵 나오는데요. 저희가 필요한건 로컬주소에 0.0.0.0: ← 이거 다음 숫자인 port번호와 PID입니다. 다시 한번 위에 사진을 가져와서 제가 필요한 8080포트를 확인해보면??? 저기 빨간색 상자로 표시해둔 부분이 8080 포트가 LISTENING으로 종료되지 않고 실행되고 있었네요. 이제 PID 번호를 확인한 다음 8080 포트의 프로세스를 종료시키겠습니다. 명령어 taskkill /f /pid PID번호 를 입력했더니 프로세스 종료가 성공적으로 이루어졌습니다. 그 후 톰캣을 실행했더니 동작도.. 2021. 8. 3.
[Querydsl] Case When 사용하기 CaseBuilder를 통해 CaseWhen 문법 시작 when: 조건문 then: when절이 true일 경우 실행 otherwise: when절이 false일 경우 실행 otherwise가 끝나면 결과 물에 대한 alias(as) 적용 일반적으로는 Entity의 필드명이 자동으로 as 적용됨 하지만 CaseBuilder를 통해 계산한 결과물은 필드명이 없음 alias 하지 않으면 결과물 필드가 어떤 필드로 가야할지 명시되지 않아 오류가 발생 public List selectAuthManageList(Map searchInfo) { String searchKeyword = searchInfo.get("searchKeyword"); List tnAuthorList = queryFactory .select.. 2021. 8. 3.
[PWA] 자바로 pwa push 알림 기능 개발하기(12) 이제 service 인터페이스를 상속받은 구현체를 작성하자 PwaPushServiceImpl.java 파일을 열자 package pwapush.service.impl; import java.io.IOException; import java.net.URLEncoder; import java.security.GeneralSecurityException; import java.util.List; import java.util.Map; import java.util.concurrent.ExecutionException; import org.jose4j.base64url.Base64; import org.jose4j.json.internal.json_simple.JSONObject; import org.jose4.. 2021. 8. 3.
[PWA] 자바로 pwa push 알림 기능 개발하기(11) 3.2.5 Service interface 코딩하기 package pwapush.service; import java.io.IOException; import java.security.GeneralSecurityException; import java.util.List; import java.util.Map; import java.util.concurrent.ExecutionException; import org.jose4j.lang.JoseException; import pwapush.model.UserSubscriInfo; public interface PwaPushService { /* push 알림 메세지 전송 부분을 선언한다. */ void sendMessage(Map messageMap, Li.. 2021. 8. 3.
[PWA] 자바로 pwa push 알림 기능 개발하기(10) 3.2.4 Controller 코딩하기 Controller파일 부터 작성하자. PwaPushController.java 열어서 아래와 같이 코딩한다. 주석으로 설명을 대신하겠다. @Controller //controller 파일이라고 정의해 주는 애노테이션이다. public class PwaPushController { //로깅을 찍기 위해서 선언해 준다. private Logger logger = LoggerFactory.getLogger(PwaPushController.class); //서비스가 기동시 생성된 객체를 주입하여 사용할수 있게 해준다. @Resource(name = "pwaPushService") private PwaPushService pwaPushService; //jpa 생성자를 주.. 2021. 8. 3.
[PWA] 자바로 pwa push 알림 기능 개발하기(9) 3.2.3 MVC 패턴 클래스 파일 만들기 Mvc 패턴에 맞게 Controller를 만들자. 만드는 순서는 Controller를 만들고, 서비스 인터페이스를 만들고, 서비스 인터페이스를 상속받은 구현체를 만들고, 데이터베이스와 통신을 할수 있게 JpaRepository 상속받은 인터페이스를 만들어서 데이터베이스에 push알림 구독정보를 저장하여 관리 할수 있게 만들것이다. 이번에는 패키지와 클래스 파일을 동시에 같이 만들어 보자. 위에서는 패키지 따로 파일 따로 만들어 보았는데 같이 만들어도 된다. pwapush 패키지명에 마우스 오른쪽 버튼을 클릭하여 New->Class를 선택 Package 입력부분에 pwapush만 입력이 되어 있을텐데 여기 뒤에다가 pwapush.controller을 입력하자. N.. 2021. 8. 3.
728x90
반응형


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

loading