Merge branch 'jenkins_with_weblogic' into master

This commit is contained in:
curry772
2026-03-11 10:34:29 +09:00
16 changed files with 338 additions and 113 deletions
-6
View File
@@ -145,12 +145,6 @@ eclipse {
genTestSrcDir = file(generatedTestJavaDir)
}
}
wtp {
facet {
//you can add some extra wtp facets or update existing ones; mandatory keys: 'name', 'version':
facet name: 'jpt.jpa', version: '2.2'
}
}
project {
natures = ['org.eclipse.buildship.core.gradleprojectnature',
'org.eclipse.jdt.core.javanature',
@@ -1,11 +1,13 @@
package com.eactive.eai.apim.apigroup.loader;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi;
import com.eactive.eai.data.jpa.AbstractDataLoader;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApiId;
import com.eactive.eai.data.jpa.AbstractDataLoader;
@Service
@Transactional
public class ApiGroupApiLoader extends AbstractDataLoader<ApiGroupApi, String, ApiGroupApiLoaderRepository> {
public class ApiGroupApiLoader extends AbstractDataLoader<ApiGroupApi, ApiGroupApiId, ApiGroupApiLoaderRepository> {
}
@@ -1,10 +1,12 @@
package com.eactive.eai.apim.apigroup.loader;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi;
import com.eactive.eai.data.DataLoaderRepository;
import com.eactive.eai.data.jpa.BaseRepository;
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
public interface ApiGroupApiLoaderRepository extends BaseRepository<ApiGroupApi, String>,
import com.eactive.eai.data.DataLoaderRepository;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi;
import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApiId;
import com.eactive.eai.data.jpa.BaseRepository;
public interface ApiGroupApiLoaderRepository extends BaseRepository<ApiGroupApi, ApiGroupApiId>,
QuerydslPredicateExecutor<ApiGroupApi>, DataLoaderRepository<ApiGroupApi> {
}
@@ -0,0 +1,39 @@
package com.eactive.eai.common.inflow.loader;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.eactive.eai.data.entity.onl.inflow.InflowControlGroup;
import com.eactive.eai.data.entity.onl.inflow.QInflowControlGroup;
import com.eactive.eai.data.jpa.AbstractDataLoader;
import com.querydsl.core.types.dsl.BooleanExpression;
@Service
@Transactional
public class InflowControlGroupLoader extends AbstractDataLoader<InflowControlGroup, String, InflowControlGroupLoaderRepository> {
/**
* 조건으로 그룹 조회
*/
public Iterable<InflowControlGroup> findByConditions(String groupId) {
QInflowControlGroup q = QInflowControlGroup.inflowControlGroup;
BooleanExpression expression = q.groupId.isNotNull();
if (StringUtils.isNotBlank(groupId)) {
expression = expression.and(q.groupId.eq(groupId));
}
return repository.findAll(expression, Sort.by("groupId"));
}
/**
* 활성화된 그룹만 조회
*/
public Iterable<InflowControlGroup> findActiveGroups() {
QInflowControlGroup q = QInflowControlGroup.inflowControlGroup;
BooleanExpression expression = q.useYn.eq("1");
return repository.findAll(expression, Sort.by("groupId"));
}
}
@@ -0,0 +1,12 @@
package com.eactive.eai.common.inflow.loader;
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
import com.eactive.eai.data.DataLoaderRepository;
import com.eactive.eai.data.entity.onl.inflow.InflowControlGroup;
import com.eactive.eai.data.jpa.BaseRepository;
interface InflowControlGroupLoaderRepository extends DataLoaderRepository<InflowControlGroup>,
BaseRepository<InflowControlGroup, String>, QuerydslPredicateExecutor<InflowControlGroup> {
}
@@ -0,0 +1,52 @@
package com.eactive.eai.common.inflow.loader;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.eactive.eai.data.entity.onl.inflow.InflowControlGroupMapping;
import com.eactive.eai.data.entity.onl.inflow.QInflowControlGroupMapping;
import com.eactive.eai.data.jpa.AbstractDataLoader;
import com.querydsl.core.types.dsl.BooleanExpression;
@Service
@Transactional
public class InflowControlGroupMappingLoader extends AbstractDataLoader<InflowControlGroupMapping, String, InflowControlGroupMappingLoaderRepository> {
/**
* 그룹 ID로 매핑 조회
*/
public Iterable<InflowControlGroupMapping> findByGroupId(String groupId) {
QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping;
BooleanExpression expression = q.groupId.eq(groupId);
return repository.findAll(expression, Sort.by("interfaceId"));
}
/**
* 인터페이스 ID로 매핑 조회
*/
public Iterable<InflowControlGroupMapping> findByInterfaceId(String interfaceId) {
QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping;
BooleanExpression expression = q.interfaceId.eq(interfaceId);
return repository.findAll(expression);
}
/**
* 활성화된 매핑만 조회
*/
public Iterable<InflowControlGroupMapping> findActiveMappings() {
QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping;
BooleanExpression expression = q.useYn.eq("1");
return repository.findAll(expression, Sort.by("groupId", "interfaceId"));
}
/**
* 그룹 ID와 활성화 상태로 매핑 조회
*/
public Iterable<InflowControlGroupMapping> findActiveByGroupId(String groupId) {
QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping;
BooleanExpression expression = q.groupId.eq(groupId).and(q.useYn.eq("1"));
return repository.findAll(expression, Sort.by("interfaceId"));
}
}
@@ -0,0 +1,12 @@
package com.eactive.eai.common.inflow.loader;
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
import com.eactive.eai.data.DataLoaderRepository;
import com.eactive.eai.data.entity.onl.inflow.InflowControlGroupMapping;
import com.eactive.eai.data.jpa.BaseRepository;
interface InflowControlGroupMappingLoaderRepository extends DataLoaderRepository<InflowControlGroupMapping>,
BaseRepository<InflowControlGroupMapping, String>, QuerydslPredicateExecutor<InflowControlGroupMapping> {
}
@@ -6,9 +6,17 @@ import org.springframework.transaction.annotation.Transactional;
import com.eactive.eai.data.entity.onl.stdmessage.StandardMessageInfo;
import com.eactive.eai.data.jpa.AbstractDataLoader;
import java.util.Optional;
@Service
@Transactional
public class StandardMessageInfoLoader
extends AbstractDataLoader<StandardMessageInfo, String, StandardMessageInfoLoaderRepository> {
// jwhong 추가
//Optional<StandardMessageInfo> findByApiFullPath(String apiFullPath);
public Optional<StandardMessageInfo> findByApiFullPath(String apiFullPath) {
return repository.findByApifullpath(apiFullPath);
}
}
@@ -4,6 +4,10 @@ import com.eactive.eai.data.DataLoaderRepository;
import com.eactive.eai.data.entity.onl.stdmessage.StandardMessageInfo;
import com.eactive.eai.data.jpa.BaseRepository;
import java.util.Optional;
interface StandardMessageInfoLoaderRepository
extends DataLoaderRepository<StandardMessageInfo>, BaseRepository<StandardMessageInfo, String> {
// jwhong 추가
Optional<StandardMessageInfo> findByApifullpath(String apiFullPath);
}
@@ -0,0 +1,58 @@
package com.eactive.eai.data.entity.onl.inflow;
import java.io.Serializable;
import java.time.LocalDateTime;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import org.hibernate.annotations.Comment;
import org.hibernate.annotations.GenericGenerator;
import lombok.Data;
@Data
@Entity
@Table(name = "inflow_control_group")
@org.hibernate.annotations.Table(appliesTo = "inflow_control_group", comment = "유량제어 그룹")
public class InflowControlGroup implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(generator = "UUID")
@GenericGenerator(name = "UUID", strategy = "org.hibernate.id.UUIDGenerator")
@Column(name = "group_id", updatable = false, nullable = false, length = 36)
@Comment("그룹 ID")
private String groupId;
@Column(name = "group_name", length = 100)
@Comment("그룹명")
private String groupName;
@Column(name = "threshold")
@Comment("임계치")
private Integer threshold;
@Column(name = "threshold_per_second")
@Comment("초당 임계치")
private Integer thresholdPerSecond;
@Column(name = "threshold_time_unit", length = 12)
@Comment("임계치 TimeUnit")
private String thresholdTimeUnit;
@Column(name = "use_yn", length = 1)
@Comment("사용여부")
private String useYn;
@Column(name = "modified_by", length = 50)
@Comment("수정자")
private String modifiedBy;
@Column(name = "modified_at")
@Comment("수정일시")
private LocalDateTime modifiedAt;
}
@@ -0,0 +1,42 @@
package com.eactive.eai.data.entity.onl.inflow;
import java.io.Serializable;
import java.time.LocalDateTime;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import org.hibernate.annotations.Comment;
import lombok.Data;
@Data
@Entity
@Table(name = "inflow_control_group_mapping")
@org.hibernate.annotations.Table(appliesTo = "inflow_control_group_mapping", comment = "유량제어 그룹 매핑")
public class InflowControlGroupMapping implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "interface_id", nullable = false, length = 100)
@Comment("인터페이스 ID")
private String interfaceId;
@Column(name = "group_id", nullable = false, length = 50)
@Comment("그룹 ID")
private String groupId;
@Column(name = "use_yn", length = 1)
@Comment("사용여부")
private String useYn;
@Column(name = "modified_by", length = 50)
@Comment("수정자")
private String modifiedBy;
@Column(name = "modified_at")
@Comment("수정일시")
private LocalDateTime modifiedAt;
}
@@ -1,46 +1,46 @@
package com.eactive.eai.data.entity.onl.logger;
import javax.persistence.Column;
import javax.persistence.ConstraintMode;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.ForeignKey;
import javax.persistence.Index;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import org.hibernate.annotations.Comment;
import com.eactive.eai.data.entity.AbstractEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
@Data
@EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true)
@Entity
@Table(name = "http_adapter_extra_header", indexes = {
@Index(name = "idx_guid_service_number", columnList = "weekday, guid, service_process_number") })
public class HttpAdapterExtraHeader extends AbstractEntity<HttpAdapterExtraHeaderId> {
private static final long serialVersionUID = 1L;
@EmbeddedId
private HttpAdapterExtraHeaderId id;
@Column(name = "value", nullable = false, length = 500)
@Comment("헤더 값")
private String value;
@ManyToOne
@JoinColumns({
@JoinColumn(name = "weekday", referencedColumnName = "weekday", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)),
@JoinColumn(name = "guid", referencedColumnName = "guid", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)),
@JoinColumn(name = "service_process_number", referencedColumnName = "service_process_number", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) })
@ToString.Exclude
private HttpAdapterExtraLog log;
}
//package com.eactive.eai.data.entity.onl.logger;
//
//import javax.persistence.Column;
//import javax.persistence.ConstraintMode;
//import javax.persistence.EmbeddedId;
//import javax.persistence.Entity;
//import javax.persistence.ForeignKey;
//import javax.persistence.Index;
//import javax.persistence.JoinColumn;
//import javax.persistence.JoinColumns;
//import javax.persistence.ManyToOne;
//import javax.persistence.Table;
//
//import org.hibernate.annotations.Comment;
//
//import com.eactive.eai.data.entity.AbstractEntity;
//
//import lombok.Data;
//import lombok.EqualsAndHashCode;
//import lombok.ToString;
//
//@Data
//@EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true)
//
//@Entity
//@Table(name = "http_adapter_extra_header", indexes = {
// @Index(name = "idx_guid_service_number", columnList = "weekday, guid, service_process_number") })
//public class HttpAdapterExtraHeader extends AbstractEntity<HttpAdapterExtraHeaderId> {
//
// private static final long serialVersionUID = 1L;
//
// @EmbeddedId
// private HttpAdapterExtraHeaderId id;
//
// @Column(name = "value", nullable = false, length = 500)
// @Comment("헤더 값")
// private String value;
//
// @ManyToOne
// @JoinColumns({
// @JoinColumn(name = "weekday", referencedColumnName = "weekday", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)),
// @JoinColumn(name = "guid", referencedColumnName = "guid", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)),
// @JoinColumn(name = "service_process_number", referencedColumnName = "service_process_number", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) })
// @ToString.Exclude
// private HttpAdapterExtraLog log;
//}
@@ -1,32 +1,32 @@
package com.eactive.eai.data.entity.onl.logger;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import org.hibernate.annotations.Comment;
import lombok.Data;
@Data
@Embeddable
public class HttpAdapterExtraHeaderId implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "weekday")
@Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)")
private Integer weekday;
@Column(name = "guid", nullable = false, length = 500)
@Comment("트랜잭션 별 Unique ID")
private String guid;
@Column(name = "service_process_number", nullable = false)
@Comment("서비스 처리 번호 (100/200/300/400...)")
private int serviceProcessNumber;
@Column(name = "name", nullable = false, length = 500)
@Comment("헤더 이름")
private String name;
}
//package com.eactive.eai.data.entity.onl.logger;
//
//import java.io.Serializable;
//
//import javax.persistence.Column;
//import javax.persistence.Embeddable;
//
//import org.hibernate.annotations.Comment;
//
//import lombok.Data;
//
//@Data
//@Embeddable
//public class HttpAdapterExtraHeaderId implements Serializable {
// private static final long serialVersionUID = 1L;
//
// @Column(name = "weekday")
// @Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)")
// private Integer weekday;
//
// @Column(name = "guid", nullable = false, length = 500)
// @Comment("트랜잭션 별 Unique ID")
// private String guid;
//
// @Column(name = "service_process_number", nullable = false)
// @Comment("서비스 처리 번호 (100/200/300/400...)")
// private int serviceProcessNumber;
//
// @Column(name = "name", nullable = false, length = 500)
// @Comment("헤더 이름")
// private String name;
//}
@@ -1,23 +1,17 @@
package com.eactive.eai.data.entity.onl.logger;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import com.eactive.eai.data.entity.AbstractEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.Comment;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import com.eactive.eai.data.entity.AbstractEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.Table;
@Data
@EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true)
@@ -26,7 +20,10 @@ import lombok.ToString;
@DynamicInsert
@DynamicUpdate
@Table(name = "http_adapter_extra_log")
@org.hibernate.annotations.Table(appliesTo = "http_adapter_extra_log", comment = "http 헤더 로그")
public class HttpAdapterExtraLog extends AbstractEntity<HttpAdapterExtraLogId> {
private static final long serialVersionUID = 1L;
@EmbeddedId
@@ -52,10 +49,8 @@ public class HttpAdapterExtraLog extends AbstractEntity<HttpAdapterExtraLogId> {
@Comment("HTTP 응답 상태 코드(200,404,500...)")
private Integer httpStatus;
@OneToMany(mappedBy = "log", cascade = CascadeType.ALL, orphanRemoval = true)
@ToString.Exclude
List<HttpAdapterExtraHeader> headerList;
@Lob
@Column(name = "header_content") //,columnDefinition = "TEXT") // oracle 적용시 주석 처리
private String headerContent;
}
@@ -18,9 +18,9 @@ import lombok.NoArgsConstructor;
public class HttpAdapterExtraLogId implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "weekday")
@Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)")
private Integer weekday;
@Column(name = "prcs_date")
@Comment("파티션을 위한 처리일자")
private String prcsDate;
@Column(name = "guid", nullable = false, length = 500)
@Comment("트랜잭션 별 Unique ID")
@@ -59,6 +59,11 @@ public class StandardMessageInfo extends AbstractEntity<String> implements Seria
@Column(length = 1)
@Comment("수정상태구분코드")
private String modfimgtstusdstcd;
// jwhong 추가
@Column(length = 100,unique = true)
@Comment("인터페이스URL Full Path")
private String apifullpath;
@Column(length = 17)
@Comment("최종수정시간")