728x90 반응형 jpa20 jboss-deployment-structure.xml jboss에서 배포시 jboss-deployment-structure.xml 파일을 WEB-INF 폴더에 jboss-web.xml 파일이 있는 경로에 만들어서 설정을 해야 에러 없이 jboss가 기동이 됩니다. 그냥 기동시 jboss자체에 lib버전과 충돌이 생겨서 로그파일도 안 찍히고 에러가 발생합니다. 2021. 8. 7. jboss-web.xml jbos서버를 사용시 셋팅 파일입니다. / SET SESSION false 2021. 7. 2. web.xml web.xml 환경설정 PortalWeb export-path /export import-path /import monitor-enabled true monitor-cycle-time 30 file-storage-time 10 cors egovframework.com.cmm.filter.SimpleCorsFilter cors /* index.jsp BASIC java.lang.Throwable /common/error.jsp 404 /common/error.jsp 500 /common/error.jsp http://www.egovframe.go.kr/tags/double-submit/jsp /META-INF/double-submit.tld 70 COOKIE 2021. 7. 2. logback.xml 로그 설정 파일입니다. %d{HH:mm:ss.SSS} [%thread] %-5level [%logger] - %msg%n 2021. 7. 2. postgre ddl 테스트용 ddl select * from TEST_TEAM; /* 1. 팀정보 시퀀스 생성 */ DROP SEQUENCE SQ_N_TEST_TEAM_01; CREATE SEQUENCE SQ_N_TEST_TEAM_01 START 1; /* 1.테스트 테이블 팀정보 */ CREATE TABLE TEST_TEAM ( TEAM_SN NUMERIC(12) NOT NULL, TEAM_NM VARCHAR(60) NOT NULL, TEAM_DC VARCHAR(200), SORT NUMERIC(4), DEL_YN CHAR(1) NOT NULL, REGISTER_ID VARCHAR(20) NOT NULL, REG_DT TIMESTAMP NOT NULL, UPDUSR_ID VARCHAR(20) NOT NULL, MDFCN_.. 2021. 7. 2. 마이바티스 쿼리 샘플 /* selectAuthManageList */ /* 권한관리 조회 */ SELECT AUTHOR_CODE, /* 권한코드 */ AUTHOR_NM, /* 권한명 */ AUTHOR_DC, /* 권한설명 */ AUTHOR_CREAT_DE, /* 권한생성일 */ DECODE(USE_AT,'Y',1,0) AS USE_AT, /* 사용여부 */ 'N' AS DEL_STATUS, /* 삭제여부 */ '롤등록' AS BTN_ROLE /* 버튼 */ FROM COMTNAUTHORINFO WHERE 1 = 1 AND AUTHOR_NM LIKE '%'||#{searchKeyword}||'%' /* insertAuthManage */ /* 권한등록 */ /* updateAuthManage */ /* 권한수정 */ 2021. 7. 2. mapper-config.xml 마이바티스 mapper-config.xml 2021. 7. 2. context-transaction.xml 마이바티스와 jpa를 같이 쓰기 위해서는 트랜잭션 설정이 중요합니다. 에러가 발생하였을 경우 rollback이 제대로 일어 나야 합니다. 주석으로 설명 달아 놓았습니다. 마이바티스는 트랜잭션 설정할때 귀찮으니까.. 이렇게 한줄로 select,insert,update,delete 몽땅 다 트랜잭션 설정 되게 * 로 하고 사용하는데 jpa 사용할때는 세부적으로 옵션을 설정 하여야 시스템을 좀더 효율적으로 사용할수 있습니다. jpa는 dirty check를 하여서 읽어온 Entity에 변경이 발생하였을경우 자동으로 db에 저장을 합니다. 똑같은 데이터를 snap 해서 메모리에 올려 놓고 원본과 비교해서 변경 사항이 있으면 그냥 트랜잭션이 종료 될때 의도치 않는 업데이트가 발생합니다. 그래서 select는 읽기.. 2021. 7. 2. context-nexacro.xml 전자정부 하면 front단이 넥사크로 입니다. 넥사크로 환경 파일입니다. 2021. 7. 2. context-mapper.xml 마이바티스에서 멀티 db 설정하기 위해서 2개의 db 설정 파일입니다. 데이터베이스트 티베로와 postgresq입니다. 티베로 db를 사용하기 위해서 tibero mapper 클래스를 만들어서 설정을 하였습니다. classpath:/egovframework/sqlmap/mapper/postgre/invako/**/*.xml classpath:/egovframework/sqlmap/mapper/tibero/invako/**/*.xml 2021. 7. 2. context-jpa-repository.xml jpaRepository package 경로 스캔설정 파일입니다. 2021. 7. 2. context-hibernate.xml 주석으로 설명 달아 놓았습니다. 이해가 안가시는분은 댓글 달아 주세요. was 에 따라서 멀티 db가 조금 꼬여서 톰캣서버에서는 잘되는데 jboss에서는 되긴 되는데 조금 db연결이 꼬여서 제외 했습니다. 멀티 db 마이바티스는 잘됩니다. jpa도 톰캣서버에서는 멀티 db 잘됩니다. org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl none egovframework.invako.querydsl.config.CustomPostgreSQLDialect true true true 5 2021. 7. 2. context-datasource.xml 설정 파일 /* context-datasource.xml */ 멀티 DB 환경 설정 파일입니다. classpath*:/egovframework/egovProps/globals.properties 2021. 7. 2. 전자정부 소스 자동 생성 툴 전자정부 소스 자동생성 툴 메인화면입니다. jpa관련 엔티티,DTO,MAPPER, 서비스 단 만들기 귀찮아서 기본적으로 조회,등록,수정,삭제 기능까지 자동생성 툴입니다. 2021. 6. 30. 모델4 공통 상속 package com.example.model.entity.item; import com.example.model.entity.Category; import lombok.Getter; import lombok.Setter; import lombok.ToString; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter @ToString(exclude = {"categories"}) @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(name = "DTYPE") public abstract cla.. 2021. 6. 22. 모델3 연관관계 package com.example.model.entity; import lombok.Getter; import lombok.Setter; import lombok.ToString; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Getter @Setter @ToString(exclude = {"items","parent","child"}) @Entity public class Category { @Id @GeneratedValue @Column(name ="CATEGORY_ID") private Long id; private String name; @ManyToMany @JoinTable(name= "CATE.. 2021. 6. 22. 엔티티 생성 및 기본 테스트 package com.example.chat04; public enum RoleType { ADMIN,USER } package com.example.chat04; import javax.persistence.*; import java.util.Date; @Entity @Table(name="MEMBER", uniqueConstraints = {@UniqueConstraint(name = "NAME_AGE_UNIQUE",columnNames = {"NAME","AGE"})}) public class Member { @Id @Column(name = "ID") private String id; @Column(name = "NAME", nullable = false, length = 10) private S.. 2021. 6. 22. pom.xml 4.0.0 org.springframework.boot spring-boot-starter-parent 2.5.1 com.example ch02 0.0.1-SNAPSHOT ch02 Demo project for Spring Boot UTF-8 UTF-8 1.8 5.5.2.Final 4.4.0 1.4.2.Final org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-devtools runtime true org.postgresql postgresql runtime org.projectlombok lombok t.. 2021. 6. 22. persistence.xml 2021. 6. 22. 1. JPA 실습환경 셋팅 1.1 스프링 부트 사이트에서 스프링부트를 다운 받아서 설치한다. 1.2 프로젝트 생성 File > New > Spring Starter Project 프로젝트명 입력 디펜던시 선택 : PostgresSQL Driver,Spring Web,Lombok,Spring Boot DevTools,MySQL Driver,Spring Data JPA Finish 버튼 클릭 1.3 데이터베이스 및 테이블 생성 MySql기준으로 테이블을 생성합니다. PostgreSQL DB는 서로 다른 2개의 데이터 베이스 테스트용으로 추가 하였습니다. 작업은 MySql기준 입니다. 1.4 MySql db를 다운받아서 로컬 pc에 설치합니다. MySql 접속후 사용자 계정을 생성합니다. /* mysql 접속 */ mysql -u ro.. 2021. 5. 26. 이전 1 다음 728x90 반응형