findByFirstnameOrLastname(@Param("name") String name);
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.jpa/src/test/resources/META-INF/spring/context-common.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.jpa/src/test/resources/META-INF/spring/context-datasource.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.jpa/src/test/resources/META-INF/spring/jdbc.properties:
--------------------------------------------------------------------------------
1 | jpa.generateDdl=true
2 | jpa.database=H2
3 | jpa.showSql=true
4 | jpa.persistenceUnit=jpa.sample
5 |
6 | jdbc.driver=org.hsqldb.jdbcDriver
7 | jdbc.url=jdbc:hsqldb:mem:testdb
8 | jdbc.username=sa
9 | jdbc.password=
10 | usingDBMS=hsql
11 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.mongodb/src/test/java/org/egovframe/rte/psl/data/mongodb/domain/Address.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.data.mongodb.domain;
2 |
3 | public class Address {
4 |
5 | private String zipCode;
6 |
7 | private String address;
8 |
9 | public String getZipCode() {
10 | return zipCode;
11 | }
12 |
13 | public void setZipCode(String zipCode) {
14 | this.zipCode = zipCode;
15 | }
16 |
17 | public String getAddress() {
18 | return address;
19 | }
20 |
21 | public void setAddress(String address) {
22 | this.address = address;
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.mongodb/src/test/resources/META-INF/spring/context-common.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.mongodb/src/test/resources/META-INF/spring/mongo.properties:
--------------------------------------------------------------------------------
1 | mongodb.host=localhost
2 | mongodb.port=27017
3 | mongodb.database=com
4 | mongodb.username=com
5 | mongodb.password=com01
6 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.data.mongodb/src/test/resources/log4j2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/dataaccess/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 다양한 데이터베이스 솔루션 및 데이터베이스 접근 기술에 대한 추상화된 접근 방식을 제공하여 업무 로직과 데이터베이스 솔루션 및 접근 기술 간의 종속성을 배제하기 위한 기능을 제공하는 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/dataaccess/typehandler/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | iBATIS 의 TypeHandler 확장 구현 클래스를 포함하는 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/dataaccess/util/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Data Access Service 를 위한 Util 클래스를 포함하는 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/orm/ibatis/package-info.java:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | *
4 | * Package providing integration of
5 | * iBATIS Database Layer
6 | * with Spring concepts.
7 | *
8 | * Contains resource helper classes and template classes for
9 | * data access with the iBATIS SqlMapClient API.
10 | *
11 | */
12 | package org.egovframe.rte.psl.orm.ibatis;
13 |
14 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/orm/ibatis/support/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Classes supporting the {@code org.springframework.orm.ibatis} package.
4 | * Contains a DAO base class for SqlMapClientTemplate usage.
5 | *
6 | */
7 | package org.egovframe.rte.psl.orm.ibatis.support;
8 |
9 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/main/java/org/egovframe/rte/psl/orm/package-info.java:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | *
4 | * Root package for Spring's O/R Mapping integration classes.
5 | * Contains generic DataAccessExceptions related to O/R Mapping.
6 | *
7 | */
8 | package org.egovframe.rte.psl.orm;
9 |
10 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/DataTypeTestMapper.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractMapper;
4 | import org.egovframe.rte.psl.dataaccess.vo.TypeTestVO;
5 | import org.springframework.stereotype.Repository;
6 |
7 | @Repository("dataTypeTestMapper")
8 | public class DataTypeTestMapper extends EgovAbstractMapper {
9 |
10 | public void insertTypeTest(String queryId, TypeTestVO vo) {
11 | insert(queryId, vo);
12 | }
13 |
14 | public TypeTestVO selectTypeTest(String queryId, TypeTestVO vo) {
15 | return (TypeTestVO) selectOne(queryId, vo);
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/DeptMapper.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractMapper;
4 | import org.egovframe.rte.psl.dataaccess.vo.DeptVO;
5 | import org.springframework.stereotype.Repository;
6 |
7 | import java.util.List;
8 |
9 | @Repository("deptMapper")
10 | public class DeptMapper extends EgovAbstractMapper {
11 |
12 | public void insertDept(String queryId, DeptVO vo) {
13 | insert(queryId, vo);
14 | }
15 |
16 | public int updateDept(String queryId, DeptVO vo) {
17 | return update(queryId, vo);
18 | }
19 |
20 | public int deleteDept(String queryId, DeptVO vo) {
21 | return delete(queryId, vo);
22 | }
23 |
24 | public DeptVO selectDept(String queryId, DeptVO vo) {
25 | return (DeptVO) selectOne(queryId, vo);
26 | }
27 |
28 | public List selectDeptList(String queryId, DeptVO searchVO) {
29 | return selectList(queryId, searchVO);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/JobHistDAO.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractDAO;
4 | import org.egovframe.rte.psl.dataaccess.vo.JobHistVO;
5 | import org.springframework.stereotype.Repository;
6 |
7 | import java.util.List;
8 |
9 | @Repository("jobHistDAO")
10 | public class JobHistDAO extends EgovAbstractDAO {
11 |
12 | @SuppressWarnings("deprecation")
13 | public JobHistVO selectJobHist(String queryId, JobHistVO vo) {
14 | return (JobHistVO) getSqlMapClientTemplate().queryForObject(queryId, vo);
15 | }
16 |
17 | @SuppressWarnings({ "unchecked", "deprecation" })
18 | public List selectJobHistList(String queryId, JobHistVO vo) {
19 | return getSqlMapClientTemplate().queryForList(queryId, vo);
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/JobHistMapper.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractMapper;
4 | import org.egovframe.rte.psl.dataaccess.vo.JobHistVO;
5 | import org.mybatis.spring.SqlSessionTemplate;
6 | import org.springframework.stereotype.Repository;
7 |
8 | import javax.annotation.Resource;
9 | import java.util.List;
10 |
11 | @Repository("jobHistMapper")
12 | public class JobHistMapper extends EgovAbstractMapper {
13 |
14 | @Resource(name = "batchSqlSessionTemplate")
15 | public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
16 | super.setSqlSessionTemplate(sqlSessionTemplate);
17 | }
18 |
19 | public JobHistVO selectJobHist(String queryId, JobHistVO vo) {
20 | return (JobHistVO) selectList(queryId, vo);
21 | }
22 |
23 | public List selectJobHistList(String queryId, JobHistVO vo) {
24 | return selectList(queryId, vo);
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/TypeTestDAO.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractDAO;
4 | import org.egovframe.rte.psl.dataaccess.vo.TypeTestVO;
5 | import org.springframework.stereotype.Repository;
6 |
7 | @Repository("typeTestDAO")
8 | @SuppressWarnings("deprecation")
9 | public class TypeTestDAO extends EgovAbstractDAO {
10 |
11 | public void insertTypeTest(String queryId, TypeTestVO vo) {
12 | getSqlMapClientTemplate().insert(queryId, vo);
13 | }
14 |
15 | public TypeTestVO selectTypeTest(String queryId, TypeTestVO vo) {
16 | return (TypeTestVO) getSqlMapClientTemplate().queryForObject(queryId, vo);
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/dao/TypeTestMapper.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.dao;
2 |
3 | import org.egovframe.rte.psl.dataaccess.EgovAbstractMapper;
4 | import org.egovframe.rte.psl.dataaccess.vo.TypeTestVO;
5 | import org.springframework.stereotype.Repository;
6 |
7 | @Repository("typeTestMapper")
8 | public class TypeTestMapper extends EgovAbstractMapper {
9 |
10 | public void insertTypeTest(String queryId, TypeTestVO vo) {
11 | insert(queryId, vo);
12 | }
13 |
14 | public TypeTestVO selectTypeTest(String queryId, TypeTestVO vo) {
15 | return (TypeTestVO) selectList(queryId, vo);
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/mapper/EmployerMapper.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.mapper;
2 |
3 | import org.apache.ibatis.session.ResultHandler;
4 | import org.egovframe.rte.psl.dataaccess.vo.EmpVO;
5 |
6 | import java.math.BigDecimal;
7 | import java.util.List;
8 |
9 | /**
10 | * == 개정이력(Modification Information) ==
11 | *
12 | * 수정일 수정자 수정내용
13 | * ------- -------- ---------------------------
14 | * 2014.01.22 권윤정 FileUsingResultHandler테스트를 위한 selectEmpListToOutFileUsingResultHandler() 메서드 추가
15 | *
16 | */
17 | @Mapper("employerMapper")
18 | public interface EmployerMapper {
19 |
20 | public List selectEmployerList(EmpVO vo);
21 |
22 | public EmpVO selectEmployer(BigDecimal empNo);
23 |
24 | public void insertEmployer(EmpVO vo);
25 |
26 | public int updateEmployer(EmpVO vo);
27 |
28 | public int deleteEmployer(BigDecimal empNo);
29 |
30 | public void selectEmpListToOutFileUsingResultHandler(ResultHandler handler);
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/utils/CamelUtilTest.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.utils;
2 |
3 | import org.egovframe.rte.psl.dataaccess.util.CamelUtil;
4 | import org.junit.Test;
5 |
6 | import static org.junit.Assert.assertEquals;
7 |
8 | public class CamelUtilTest {
9 |
10 | @Test
11 | public void testConvert2CamelCase() {
12 | String camelString = "camelString";
13 | String notCamelString = "not_camelString";
14 | String upperCaseString = "Uppercase";
15 |
16 | assertEquals(camelString, CamelUtil.convert2CamelCase(camelString));
17 | assertEquals("notCamelstring", CamelUtil.convert2CamelCase(notCamelString));
18 | assertEquals("uppercase", CamelUtil.convert2CamelCase(upperCaseString));
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/vo/DeptVO.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.vo;
2 |
3 | import java.io.Serializable;
4 | import java.math.BigDecimal;
5 |
6 | public class DeptVO implements Serializable {
7 |
8 | private static final long serialVersionUID = -5658611204548724246L;
9 |
10 | private BigDecimal deptNo;
11 |
12 | private String deptName;
13 |
14 | private String loc;
15 |
16 | public BigDecimal getDeptNo() {
17 | return deptNo;
18 | }
19 |
20 | public void setDeptNo(BigDecimal deptNo) {
21 | this.deptNo = deptNo;
22 | }
23 |
24 | public String getDeptName() {
25 | return deptName;
26 | }
27 |
28 | public void setDeptName(String deptName) {
29 | this.deptName = deptName;
30 | }
31 |
32 | public String getLoc() {
33 | return loc;
34 | }
35 |
36 | public void setLoc(String loc) {
37 | this.loc = loc;
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/vo/EmpIncludesEmpListVO.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.vo;
2 |
3 | import java.util.List;
4 |
5 | public class EmpIncludesEmpListVO extends EmpVO {
6 |
7 | private static final long serialVersionUID = -8707454527851497944L;
8 |
9 | private List empList;
10 |
11 | public List getEmpList() {
12 | return empList;
13 | }
14 |
15 | public void setEmpList(List empList) {
16 | this.empList = empList;
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/java/org/egovframe/rte/psl/dataaccess/vo/LobTestVO.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.dataaccess.vo;
2 |
3 | import java.io.Serializable;
4 |
5 | public class LobTestVO implements Serializable {
6 |
7 | private static final long serialVersionUID = -5563510918316251092L;
8 |
9 | private int id;
10 |
11 | private byte[] blobType;
12 |
13 | private String clobType;
14 |
15 | public int getId() {
16 | return id;
17 | }
18 |
19 | public void setId(int id) {
20 | this.id = id;
21 | }
22 |
23 | public byte[] getBlobType() {
24 | return blobType;
25 | }
26 |
27 | public void setBlobType(byte[] blobType) {
28 | this.blobType = blobType;
29 | }
30 |
31 | public String getClobType() {
32 | return clobType;
33 | }
34 |
35 | public void setClobType(String clobType) {
36 | this.clobType = clobType;
37 | }
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/spring/context-datasource.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/spring/context-sqlMap.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/spring/context-transaction.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/spring/jdbc.properties:
--------------------------------------------------------------------------------
1 | jdbc.driver=org.hsqldb.jdbcDriver
2 | jdbc.url=jdbc:hsqldb:mem:testdb
3 | jdbc.username=sa
4 | jdbc.password=
5 | usingDBMS=hsql
6 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/sqlmap/mappers/testcase-batch.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/sqlmap/mappings/testcase-batch.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/iBATIS-SqlMaps-2_en.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eGovFramework/egovframe-runtime/7db5b2f81e19424710e7ae3a08a19a729c0bbf04/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/iBATIS-SqlMaps-2_en.pdf
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/sample_schema_ddl_typetest_hsql.sql:
--------------------------------------------------------------------------------
1 | -- drop table LOBTEST;
2 | -- drop table TYPETEST;
3 |
4 | create table LOBTEST (
5 | id numeric(10,0) not null,
6 | blob_type LONGVARBINARY,
7 | clob_type LONGVARCHAR,
8 | primary key (id)
9 | );
10 |
11 | create table TYPETEST (
12 | id numeric(10,0) not null,
13 | bigdecimal_type numeric(19,2),
14 | boolean_type boolean,
15 | byte_type tinyint,
16 | char_type char(1),
17 | double_type real,
18 | float_type float,
19 | int_type integer,
20 | long_type bigint,
21 | short_type smallint,
22 | string_type varchar(255),
23 | date_type date,
24 | sql_date_type datetime,
25 | sql_time_type time,
26 | sql_timestamp_type timestamp,
27 | calendar_type datetime,
28 | primary key (id)
29 | );
30 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/sample_schema_ddl_typetest_mysql.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS LOBTEST;
2 |
3 | DROP TABLE IF EXISTS TYPETEST;
4 |
5 | create table LOBTEST (
6 | id numeric(10,0) not null,
7 | blob_type longblob,
8 | clob_type longtext,
9 | primary key (id)
10 | );
11 |
12 | create table TYPETEST (
13 | id numeric(10,0) not null,
14 | bigdecimal_type numeric(19,2),
15 | boolean_type boolean,
16 | byte_type tinyint,
17 | char_type char(1),
18 | double_type double,
19 | float_type float,
20 | int_type integer,
21 | long_type bigint,
22 | short_type smallint,
23 | string_type varchar(255),
24 | date_type date,
25 | sql_date_type datetime,
26 | sql_time_type time,
27 | sql_timestamp_type timestamp,
28 | calendar_type timestamp,
29 | primary key (id)
30 | );
31 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/sample_schema_ddl_typetest_oracle.sql:
--------------------------------------------------------------------------------
1 | drop table LOBTEST;
2 |
3 | drop table TYPETEST;
4 |
5 | create table LOBTEST (
6 | id number(10,0) not null,
7 | blob_type blob,
8 | clob_type clob,
9 | primary key (id)
10 | );
11 |
12 | create table TYPETEST (
13 | id number(10,0) not null,
14 | bigdecimal_type number(19,2),
15 | boolean_type number(1,0),
16 | byte_type number(3,0),
17 | char_type char(1),
18 | double_type double precision,
19 | float_type float,
20 | int_type number(10,0),
21 | long_type number(19,0),
22 | short_type number(5,0),
23 | string_type varchar2(255),
24 | date_type date,
25 | sql_date_type date,
26 | sql_time_type timestamp,
27 | sql_timestamp_type timestamp,
28 | calendar_type timestamp,
29 | primary key (id)
30 | );
31 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/sample_schema_ddl_typetest_tibero.sql:
--------------------------------------------------------------------------------
1 | drop table LOBTEST;
2 |
3 | drop table TYPETEST;
4 |
5 | create table LOBTEST (
6 | id numeric(10,0) not null,
7 | blob_type BLOB,
8 | clob_type CLOB,
9 | primary key (id)
10 | );
11 |
12 | create table TYPETEST (
13 | id numeric(10,0) not null,
14 | bigdecimal_type number(19,2),
15 | boolean_type number(1),
16 | byte_type number(3),
17 | char_type char(1),
18 | double_type double precision,
19 | float_type float,
20 | int_type integer,
21 | long_type integer, /* integer 가 bigint 의 범위까지 포함함 */
22 | short_type smallint,
23 | string_type varchar(255),
24 | date_type date,
25 | sql_date_type date,
26 | sql_time_type date, /* time, timestamp 으로 설정 시 문제발생 */
27 | sql_timestamp_type timestamp,
28 | calendar_type timestamp,
29 | primary key (id)
30 | );
31 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/sample_schema_hsql_dual.sql:
--------------------------------------------------------------------------------
1 | drop table dual IF EXISTS;
2 |
3 | CREATE TABLE dual (
4 | dummy VARCHAR(1)
5 | );
6 |
7 | INSERT INTO dual VALUES ('X');
8 |
9 | commit;
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.dataaccess/src/test/resources/META-INF/testdata/schema.properties:
--------------------------------------------------------------------------------
1 | outResultFile=outResultFile.txt
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.cassandra/src/main/java/org/egovframe/rte/psl/reactive/cassandra/connect/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Cassandra 데이터베이스 연동 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.cassandra/src/main/java/org/egovframe/rte/psl/reactive/cassandra/repository/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Cassandra Repository 구현 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.mongodb/src/main/java/org/egovframe/rte/psl/reactive/mongodb/connect/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | MongoDB 데이터베이스 연동 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.mongodb/src/main/java/org/egovframe/rte/psl/reactive/mongodb/repository/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | MongoDB Repository 구현 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.mongodb/src/test/java/org/egovframe/rte/psl/reactive/mongodb/repository/Sample.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.reactive.mongodb.repository;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import org.springframework.data.annotation.Id;
7 | import org.springframework.data.mongodb.core.mapping.Document;
8 | import org.springframework.data.mongodb.core.mapping.Field;
9 |
10 | @Data
11 | @AllArgsConstructor
12 | @NoArgsConstructor
13 | @Document(collection="sample")
14 | public class Sample {
15 |
16 | @Id
17 | private Integer id;
18 | @Field("sample_id")
19 | private String sampleId;
20 | @Field("name")
21 | private String name;
22 | @Field("description")
23 | private String description;
24 | @Field("use_yn")
25 | private String useYn;
26 | @Field("reg_user")
27 | private String regUser;
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.r2dbc/src/main/java/org/egovframe/rte/psl/reactive/r2dbc/connect/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | R2DBC 데이터베이스 연동 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.r2dbc/src/main/java/org/egovframe/rte/psl/reactive/r2dbc/repository/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | R2DBC Repository 구현 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.r2dbc/src/test/java/org/egovframe/rte/psl/reactive/r2dbc/repository/Sample.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.reactive.r2dbc.repository;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import org.springframework.data.annotation.Id;
7 | import org.springframework.data.relational.core.mapping.Column;
8 | import org.springframework.data.relational.core.mapping.Table;
9 |
10 | @Data
11 | @NoArgsConstructor
12 | @AllArgsConstructor
13 | @Table(name="sample")
14 | public class Sample {
15 |
16 | @Id
17 | private Integer id;
18 | @Column(value="sample_id")
19 | private String sampleId;
20 | @Column(value="name")
21 | private String name;
22 | @Column(value="description")
23 | private String description;
24 | @Column(value="use_yn")
25 | private String useYn;
26 | @Column(value="reg_user")
27 | private String regUser;
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.r2dbc/src/test/resources/script/r2dbc-h2.sql:
--------------------------------------------------------------------------------
1 | DROP ALL OBJECTS DELETE FILES
2 | CREATE MEMORY TABLE IF NOT EXISTS sample(id int PRIMARY KEY auto_increment, sample_id VARCHAR(16) NOT NULL, name VARCHAR(50), description VARCHAR(100), use_yn CHAR(1), reg_user VARCHAR(10))
3 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.redis/src/main/java/org/egovframe/rte/psl/reactive/redis/connect/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Redis 데이터베이스 연동 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.redis/src/main/java/org/egovframe/rte/psl/reactive/redis/repository/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Redis Repository 구현 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Persistence/org.egovframe.rte.psl.reactive.redis/src/test/java/org/egovframe/rte/psl/reactive/redis/repository/Sample.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.psl.reactive.redis.repository;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import org.springframework.data.annotation.Id;
7 | import org.springframework.data.redis.core.RedisHash;
8 | import org.springframework.data.redis.core.index.Indexed;
9 |
10 | @Data
11 | @AllArgsConstructor
12 | @NoArgsConstructor
13 | @RedisHash("sample")
14 | public class Sample {
15 |
16 | @Id
17 | private String id;
18 | @Indexed
19 | private String sampleId;
20 | @Indexed
21 | private String name;
22 | private String description;
23 | private String useYn;
24 | private String regUser;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/bind/annotation/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Controller 의 메소드 파라미터에 데이타 바인딩을 위한 목적으로 맵핑하기위한 HandlerAdapter클래스를 포함하는 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/bind/exception/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Controller에서 발생하는 Exception처리를 위한 ExceptionHandler클래스를 포함하는 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/bind/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Controller 의 메소드 파라미터에 데이타 바인딩을 위한 목적을 ArgumentResolver 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/filter/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Tag Filter 패키지
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/handler/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | DefaultAnnotationHandlerMapping 클래스에 기능성을 일부 추가한 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/tags/ui/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Spring MVC 의 tag 확장 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/tags/ui/pagination/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Spring MVC 의 tag 클래스중 pagination 클래스 들을 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/main/java/org/egovframe/rte/ptl/mvc/validation/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Spring MVC 의 Validation중 주민등록번호, 한글체크를 위한 validation 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/java/org/egovframe/rte/ptl/mvc/async/AsyncReqTestController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.mvc.async;
2 |
3 | import org.slf4j.Logger;
4 | import org.slf4j.LoggerFactory;
5 | import org.springframework.stereotype.Controller;
6 | import org.springframework.ui.Model;
7 | import org.springframework.web.bind.annotation.RequestMapping;
8 |
9 | import javax.servlet.http.HttpServletRequest;
10 | import java.util.concurrent.Callable;
11 |
12 | @Controller
13 | public class AsyncReqTestController {
14 |
15 | private static final Logger LOGGER = LoggerFactory.getLogger(AsyncReqTestController.class);
16 |
17 | @RequestMapping("/callable.do")
18 | public Callable callableWithView(HttpServletRequest request, final Model model) {
19 | LOGGER.info("Before async processing");
20 | return new Callable() {
21 |
22 | public String call() throws Exception {
23 | Thread.sleep(2000);
24 | LOGGER.info("Inside async processing");
25 | return "result";
26 | }
27 | };
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/java/org/egovframe/rte/ptl/mvc/bind/CommandMapTestController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.mvc.bind;
2 |
3 | import org.egovframe.rte.ptl.mvc.bind.annotation.CommandMap;
4 | import org.springframework.stereotype.Controller;
5 | import org.springframework.web.bind.annotation.RequestMapping;
6 |
7 | import javax.servlet.http.HttpServletRequest;
8 | import java.util.Iterator;
9 | import java.util.Map;
10 |
11 | @SuppressWarnings("deprecation")
12 | @Controller
13 | public class CommandMapTestController {
14 |
15 | @RequestMapping("/test.do")
16 | public void test(HttpServletRequest request, @CommandMap Map commandMap){
17 |
18 | for(Iterator it=commandMap.keySet().iterator();it.hasNext();){
19 | String key = it.next();
20 | String value = commandMap.get(key);
21 | request.setAttribute(key, value);
22 | }
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/java/org/egovframe/rte/ptl/mvc/bind/exception/HelloController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.mvc.bind.exception;
2 |
3 | import org.springframework.stereotype.Controller;
4 | import org.springframework.web.bind.annotation.RequestMapping;
5 | import org.springframework.web.bind.annotation.ResponseBody;
6 |
7 | @Controller
8 | public class HelloController {
9 | @RequestMapping("/form")
10 | public @ResponseBody String form() {
11 | throw new RuntimeException("It occurs RuntimeException!");
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/java/org/egovframe/rte/ptl/mvc/handler/InterceptorTestController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.mvc.handler;
2 |
3 | import org.springframework.stereotype.Controller;
4 | import org.springframework.web.bind.annotation.RequestMapping;
5 |
6 | import javax.servlet.http.HttpServletRequest;
7 | import javax.servlet.http.HttpServletResponse;
8 | import java.util.ArrayList;
9 |
10 | @Controller
11 | public class InterceptorTestController {
12 |
13 | @RequestMapping("/test.do")
14 | public void test(HttpServletRequest request, HttpServletResponse response) {
15 |
16 | @SuppressWarnings("unchecked")
17 | ArrayList array = (ArrayList) request.getAttribute("interceptor");
18 | array.add("InterceptorTestController");
19 | request.setAttribute("interceptor", array);
20 | }
21 | }
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/resources/META-INF/spring/async/test_servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/resources/META-INF/spring/bind/exception/test_servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/resources/META-INF/spring/mvcTest/test-servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/resources/META-INF/spring/pagination/test-servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.mvc/src/test/resources/log4j2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/annotation/EgovController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.annotation;
2 |
3 | import org.springframework.core.annotation.AliasFor;
4 | import org.springframework.stereotype.Controller;
5 |
6 | import java.lang.annotation.*;
7 |
8 | /**
9 | * Indicates that an annotated class is a Controller
10 | *
11 | * Desc.: Indicates that an annotated class is a Controller
12 | *
13 | * @author ESFC
14 | * @since 2023.08.31
15 | * @version 1.0
16 | *
17 | * 개정이력(Modification Information)
18 | *
19 | * 수정일 수정자 수정내용
20 | * ----------------------------------------------
21 | * 2023.08.31 ESFC 최초 생성
22 | *
23 | */
24 | @Target(ElementType.TYPE)
25 | @Retention(RetentionPolicy.RUNTIME)
26 | @Documented
27 | @Controller
28 | public @interface EgovController {
29 |
30 | @AliasFor(annotation = Controller.class)
31 | String value() default "";
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/annotation/EgovRepository.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.annotation;
2 |
3 | import org.springframework.core.annotation.AliasFor;
4 | import org.springframework.stereotype.Repository;
5 |
6 | import java.lang.annotation.*;
7 |
8 | /**
9 | * Indicates that an annotated class is a Repository
10 | *
11 | * Desc.: Indicates that an annotated class is a Repository
12 | *
13 | * @author ESFC
14 | * @since 2023.08.31
15 | * @version 1.0
16 | *
17 | * 개정이력(Modification Information)
18 | *
19 | * 수정일 수정자 수정내용
20 | * ----------------------------------------------
21 | * 2023.08.31 ESFC 최초 생성
22 | *
23 | */
24 | @Target(ElementType.TYPE)
25 | @Retention(RetentionPolicy.RUNTIME)
26 | @Documented
27 | @Repository
28 | public @interface EgovRepository {
29 |
30 | @AliasFor(annotation = Repository.class)
31 | String value() default "";
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/annotation/EgovService.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.annotation;
2 |
3 | import org.springframework.core.annotation.AliasFor;
4 | import org.springframework.stereotype.Service;
5 |
6 | import java.lang.annotation.*;
7 |
8 | /**
9 | * Indicates that an annotated class is a Service
10 | *
11 | * Desc.: Indicates that an annotated class is a Service
12 | *
13 | * @author ESFC
14 | * @since 2023.08.31
15 | * @version 1.0
16 | *
17 | * 개정이력(Modification Information)
18 | *
19 | * 수정일 수정자 수정내용
20 | * ----------------------------------------------
21 | * 2023.08.31 ESFC 최초 생성
22 | *
23 | */
24 | @Target(ElementType.TYPE)
25 | @Retention(RetentionPolicy.RUNTIME)
26 | @Documented
27 | @Service
28 | public @interface EgovService {
29 |
30 | @AliasFor(annotation = Service.class)
31 | String value() default "";
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/annotation/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 커스텀 어노테이션 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/exception/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 커스텀 예외처리 클래스를 포함한 패키지이다.
7 |
8 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovCnCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovCnCheckValidation.class)
10 | @Documented
11 | public @interface EgovCnCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovCrnCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovCrnCheckValidation.class)
10 | @Documented
11 | public @interface EgovCrnCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovEmailCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovEmailCheckValidation.class)
10 | @Documented
11 | public @interface EgovEmailCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovEnglishCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovEnglishCheckValidation.class)
10 | @Documented
11 | public @interface EgovEnglishCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovIPCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovIPCheckValidation.class)
10 | @Documented
11 | public @interface EgovIPCheck {
12 |
13 | String message() default "Invalid IP Address"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovKoreanCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovKoreanCheckValidation.class)
10 | @Documented
11 | public @interface EgovKoreanCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovMobilePhoneCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovMobilePhoneCheckValidation.class)
10 | @Documented
11 | public @interface EgovMobilePhoneCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovNullCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovNullCheckValidation.class)
10 | @Documented
11 | public @interface EgovNullCheck {
12 |
13 | String message() default "Please enter required values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovPhoneCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovPhoneCheckValidation.class)
10 | @Documented
11 | public @interface EgovPhoneCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovPwdCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovPwdCheckValidation.class)
10 | @Documented
11 | public @interface EgovPwdCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/EgovRrnCheck.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.validation;
2 |
3 | import javax.validation.Constraint;
4 | import javax.validation.Payload;
5 | import java.lang.annotation.*;
6 |
7 | @Target(ElementType.FIELD)
8 | @Retention(RetentionPolicy.RUNTIME)
9 | @Constraint(validatedBy = EgovRrnCheckValidation.class)
10 | @Documented
11 | public @interface EgovRrnCheck {
12 |
13 | String message() default "Invalid input values"; // 유효성 검사 false시 반환할 기본 메시지
14 | Class>[] groups() default { }; // 어노테이션을 적용할 특정 상황(예를 들어 특정 Class 시 어노테이션 동작)
15 | Class extends Payload>[] payload() default { }; // 심각한 정도 등 메타 데이터를 정의해 넣을 수 있음
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/main/java/org/egovframe/rte/ptl/reactive/validation/package.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 데이터 유효성 검증을 위해 Validation 클래스를 포함한 패키지이다.
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/test/java/org/egovframe/rte/ptl/reactive/exception/EgovExceptionHandlerTest.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.exception;
2 |
3 | import org.junit.Before;
4 | import org.junit.Test;
5 | import org.springframework.http.MediaType;
6 | import org.springframework.test.web.reactive.server.WebTestClient;
7 |
8 | public class EgovExceptionHandlerTest {
9 |
10 | private WebTestClient webTestClient;
11 |
12 | @Before
13 | public void setUp() {
14 | this.webTestClient = WebTestClient.bindToController(new SampleController())
15 | .controllerAdvice(new EgovExceptionHandler())
16 | .build();
17 | }
18 |
19 | @Test
20 | public void exceptionHandlerTest() {
21 | this.webTestClient.get()
22 | .uri("/test")
23 | .accept(MediaType.APPLICATION_JSON)
24 | .exchange()
25 | .expectStatus().isNotFound();
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Presentation/org.egovframe.rte.ptl.reactive/src/test/java/org/egovframe/rte/ptl/reactive/exception/SampleController.java:
--------------------------------------------------------------------------------
1 | package org.egovframe.rte.ptl.reactive.exception;
2 |
3 | import org.egovframe.rte.ptl.reactive.annotation.EgovController;
4 | import org.springframework.web.bind.annotation.GetMapping;
5 | import reactor.core.publisher.Mono;
6 |
7 | @EgovController
8 | public class SampleController {
9 |
10 | @GetMapping("/test")
11 | public Mono test() {
12 | return Mono.error(new EgovException(EgovErrorCode.NOT_FOUND));
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Presentation/spring-modules-validation/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 | org.egovframe.rte
5 | spring-modules-validation
6 | 0.9
7 | Fixed JBoss tld loading problem
8 |
9 |
--------------------------------------------------------------------------------
/Presentation/spring-modules-validation/src/main/resources/META-INF/spring.handlers:
--------------------------------------------------------------------------------
1 | http\://www.springmodules.org/validation/bean/validator=org.springmodules.validation.bean.conf.namespace.ValidatorNamespaceHandler
--------------------------------------------------------------------------------
/Presentation/spring-modules-validation/src/main/resources/META-INF/spring.schemas:
--------------------------------------------------------------------------------
1 | http\://www.springmodules.org/validation/bean/validation.xsd=org/springmodules/validation/bean/conf/xml/validation.xsd
2 | http\://www.springmodules.org/validation/bean/validator-2.0.xsd=org/springmodules/validation/bean/conf/namespace/validator-2.0.xsd
3 |
4 | http\://www.springmodules.org/validation/bean/validator.xsd=org/springmodules/validation/bean/conf/namespace/validator-2.0.xsd
--------------------------------------------------------------------------------
/Presentation/spring-modules-validation/src/main/resources/placeholder.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eGovFramework/egovframe-runtime/7db5b2f81e19424710e7ae3a08a19a729c0bbf04/Presentation/spring-modules-validation/src/main/resources/placeholder.txt
--------------------------------------------------------------------------------