vo in foreach foreach 안에 vo list 를 사용하려면 vo.compare 와 같이 .으로 연결해주면 된다. foreach 안에 if test 사용시 자바 함수는 사용이 안되는 것으로 확인 위와 같이 CommUtil@isNotEmpty 함수는 foreach 안에서 사용 불가 하다. ORM/MYBATIS_IBATIS 2021. 9. 10. 00:04
if 비교 시 java.lang.NumberFormatException mybatis 비교 시 'Y' 와 같은 한글자 비교인 경우 해당 타입을 Char 로 보고 숫자형으로 바꾸려고 한다. 해결법은 총 3가지 1. 싱클쿼터(')를 더블쿼터(")로 변경 2. 싱클쿼터(')를 HTML방식으로 변경 3. 함수를 사용 mybatis 에선 자바의 함수를 사용 가능하기 때문에 비교문의 경우 개별적은 자바 함수를 사용해서 만드는 것도 추천한다. ORM/MYBATIS_IBATIS 2020. 3. 26. 11:10
ibatis to mybatis [query] 수정내역 ibatis to mybatis 툴을 사용할때 수정해줘야하는 내용. 1. ibatis URL - ibatis.com -> ibatis.apache.org 예전 ibatis.com 이 사라진거 같으니 ibatis.apache.org 로 변경 앞에 www 삭제 해줘야한다. iBATIS Home iBATIS Project Team Moving to Google Code ANNOUNCEMENT Eight years ago in 2002, I created the iBATIS Data Mapper and introduced SQL Mapping as an approach to persistence layer development. Shortly thereafter, I donated the iBATIS name .. ORM/MYBATIS_IBATIS 2020. 3. 10. 14:29
ibatis to mybatis [query] error ibatis to mybatis 툴을 사용하며 에러 났던 점 java 및 ant 설치 시스템 변수 설정 java 를 못찾거나 ant 명령어를 찾지 못하면 시스템 변수를 설정해준다. 사용자 변수 말고 시스템 변수 추가 JAVA_HOME ANT_HOME 이 2가지 변수를 추가 해준다. ORM/MYBATIS_IBATIS 2020. 3. 10. 14:18
ibatis to mybatis [query] ibatis 를 mybatis 로 변경 할때 쿼리 변경하는 툴 https://github.com/mybatis/ibatis2mybatis mybatis/ibatis2mybatis Tool to convert iBATIS 2 xml files to MyBatis3. Contribute to mybatis/ibatis2mybatis development by creating an account on GitHub. github.com 0. 준비물 - Java 설치, ant 설치, 쓸만한 editor툴 1. 해당 github 로 이동해서 release 로 이동해서 소스를 받는다. (윈도우는 .zip을 다운받는다) 2. 해당 파일 압축해제 3. 압축해제된 폴더로 이동하면 source(ibatis query 파일폴.. ORM/MYBATIS_IBATIS 2020. 3. 10. 14:15
JPA orphanRemoval 용도 @OneToMany(cascade = {CascadeType.ALL}, fetch = FetchType.EAGER, orphanRemoval = true) 보통 1:N 관계 테이블 설정할때 저렇게 옵션을 추가해준다. 자식 엔티티의 변경이 있다면 JPA 에서 자식엔티티의 수정은 insert update update delete 순으로 이어지는데 변경된 자식을 먼저 insert 하고 기존의 자식을 NULL로 update 한다. 그리고 orphanRemoval 옵션을 true 로 하면 기존 NULL처리된 자식을 DELETE 한다. PK(JoinColumn)값이 NULL로 변한 자식은 고아객체라고 하여 연결된 점이 없는 객체이다. orphanRemoval옵션은 바로 이 고아객체를 삭제해주는 역활을 한다. ORM/JPA 2019. 11. 26. 16:27
Spring Boot JPA 로그 설정 application.properties 설정 #jpa 로그 보기 spring.jpa.show-sql=true #jpa 로그 보기 좋게 보기 spring.jpa.properties.hibernate.format_sql=true #jpa ? 부분 보이기 logging.level.org.hibernate.type.descriptor.sql=TRACE ORM/JPA 2019. 11. 21. 17:24
JPA No identifier specified for entity 해당 에러는 Entity 객체에 @id 가 하나도 없어서 발생하는 에러. PK에 해당하는 객체에 어노테이션을 하나 추가해준다. ORM/JPA 2019. 11. 21. 15:39
JPA @IdClass 란? JPA 어노테이션 @IdClass 는 복합키 사용을 위해 쓴다. 칼럼을 여러개 묶어서 사용하는 복합키는 사용하기 전에 클래스를 별도로 하나 만들고 (=VO 클래스 하나 생성) 사용하는 테이블 상단에 해당 어노테이션을 적어놓고 사용. ORM/JPA 2019. 11. 21. 15:35
JPA Entity CURRENT_TIMESTAMP 생성법 @Column(name = "timestamp", nullable = false, updatable = false, insertable = false, columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP") public Timestamp timestamp; 위와 같이 만들면 CURRENT_TIMESTAMP 형식으로 만들어진다. ORM/JPA 2019. 11. 20. 18:10
JPA Date 타입 포맷 변경 JPA @Entity 선언한 객체에서 Date 타입 포맷을 변경하고 싶을때, @DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") 이렇게 어노테이션 했으나 동작이 안해서 아래와 같이 변경 @JsonFormat(shape= JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone="Asia/Seoul") 이렇게 하니 잘 동작한다. ORM/JPA 2019. 11. 18. 14:31
spring.jpa.hibernate.naming.physical-strategy 전략 변경 JPA를 적용하고 나서 Entity(=VO) 생성 시 변수 명을 그대로 매핑 안하고 카멜을(UserName = user_name) 언더바 형식으로 자동 매핑해준다. 가끔 이 부분이 불편해서 변수 명과 DB칼럼명을 그대로 매핑 하게 하려면 application.properties 에 추가해준다. spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 변수명 그대로 매핑해준다. ORM/JPA 2019. 11. 12. 14:45