no message

main
이범준 10 months ago
parent f9bcbf1c8f
commit f9f03e3716

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.18</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>cokr.xit.interfaces</groupId>
<artifactId>xit-mms-war</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>xit-mms-war</name>
<description>모바일 메시지 발송 요청 처리 웹서버</description>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>17</java.version>
</properties>
<repositories>
<repository>
<id>maven-public</id>
<url>https://nas.xit.co.kr:8888/repository/maven-public/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>maven-public</id>
<url>https://nas.xit.co.kr:8888/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>cokr.xit.interfaces</groupId>
<artifactId>xit-mms</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>cokr.xit.boot</groupId>
<artifactId>xit-foundation-starter</artifactId>
<version>23.04.01-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</project>

@ -0,0 +1,24 @@
package cokr.xit.main;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.FilterType;
import cokr.xit.foundation.boot.DatasourceConfig;
import cokr.xit.foundation.boot.FoundationApplication;
@ImportAutoConfiguration({
MmsDatabaseConfig.class
})
@ComponentScan(
excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,classes = {DatasourceConfig.class})
)
public class MainApplication extends FoundationApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}

@ -0,0 +1,15 @@
package cokr.xit.main;
import cokr.xit.foundation.boot.DatasourceConfig;
public class MmsDatabaseConfig extends DatasourceConfig {
@Override
protected String[] mapperLocationPatterns() {
return new String[] {
"classpath*:sql/mapper-jar-applib/base/utility.xml",
"classpath*:sql/mapper/interfaces/message-mapper.xml"
};
}
}

@ -0,0 +1,40 @@
package cokr.xit.main.web;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.interfaces.message.MessageQuery;
import cokr.xit.interfaces.message.web.MessageController;
@Controller
@RequestMapping(name="문자전송 관리", value="/messageapi")
public class MainController extends MessageController {
@Override
@RequestMapping(name="문자전송 목록", value="/list.do")
public ModelAndView list(MessageQuery messageQuery) {
if(isEmpty(messageQuery.getSchInputYmdTo())) {
if(isEmpty(messageQuery.getSchInputYmdFrom())) {
SimpleDateFormat yyyyMMddFormat = new SimpleDateFormat("yyyyMMdd");
Date curDate = new Date();
String strCurrentDate = yyyyMMddFormat.format(curDate);
messageQuery.setSchInputYmdFrom(strCurrentDate);
messageQuery.setSchInputYmdTo(strCurrentDate);
} else {
messageQuery.setSchInputYmdTo(messageQuery.getSchInputYmdFrom());
}
} else if(isEmpty(messageQuery.getSchInputYmdFrom())) {
messageQuery.setSchInputYmdFrom(messageQuery.getSchInputYmdTo());
}
return super.list(messageQuery);
}
}

@ -0,0 +1,43 @@
server:
shutdown: graceful
port: 9073
servlet:
context-path: /
spring:
application:
name: xitmmswar
main:
allow-bean-definition-overriding: true
sql:
init:
platform: mariadb
datasource:
hikari:
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
jdbc-url: jdbc:log4jdbc:mariadb://211.119.124.9:4407/efccsscs?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Seoul&useSSL=false&autocommit=false
username: rentcar
password: xit1!
auto-commit: false
maximumPoolSize: 3
mvc:
static-path-pattern: /resources/**,/webjars/**,/files/**
web:
resources:
static-locations: /resources/,classpath*:/META-INF/resources/webjars/,file:files/
messageSource:
basenames:
- classpath:message/message-common
- classpath:message/authentication-message
- classpath:org/egovframe/rte/fdl/property/messages/properties
propertyService:
properties:
- tempDir: C:\temp
- pageUnit: 10
- pageSize: 10
- permitAccess: /intf/**/*
extFileName:
- encoding: UTF-8
filename: classpath*:intf-conf/xit-lvis.properties

@ -0,0 +1,4 @@
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0
log4jdbc.drivers=org.mariadb.jdbc.Driver

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 60초마다 설정 파일의 변경을 확인 하여 변경시 갱신 -->
<configuration scan="true" scanPeriod="60 seconds">
<springProperty scope="context" name="applicationName" source="spring.application.name"/>
<property name="LOG_PATH" value="logs"/>
<property name="LOG_FILE_NAME" value="${applicationName}"/>
<property name="ERR_LOG_FILE_NAME" value="${LOG_FILE_NAME}-error"/>
<property name="LOG_PATTERN" value="%d{HH:mm:ss.SSS} %-5level [%logger{0}:%line] - %msg%n"/>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/${LOG_FILE_NAME}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- .gz,.zip 등을 넣으면 자동 일자별 로그파일 압축 -->
<fileNamePattern>${LOG_PATH}/${LOG_FILE_NAME}.%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>30</maxHistory><!-- 로그파일 보관주기(일)-->
<!--<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>-->
</rollingPolicy>
</appender>
<appender name="Error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>error</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<file>${LOG_PATH}/${ERR_LOG_FILE_NAME}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- .gz,.zip 등을 넣으면 자동 일자별 로그파일 압축 -->
<fileNamePattern>${LOG_PATH}/${ERR_LOG_FILE_NAME}.%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 파일당 최고 용량 kb, mb, gb -->
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- 일자별 로그파일 최대 보관주기(~일), 해당 설정일 이상된 파일은 자동으로 제거-->
<maxHistory>60</maxHistory>
</rollingPolicy>
</appender>
<root level="DEBUG" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
<appender-ref ref="Error"/>
</root>
<logger name="jdbc" level="OFF"/>
<logger name="org.apache.commons" level="OFF" additivity="false"/>
<logger name="org.mariadb" level="OFF" additivity="false"/>
<logger name="jdbc.connection" level="OFF" additivity="false"/>
<logger name="jdbc.sqlonly" level="OFF" additivity="false"/>
<logger name="jdbc.resultset" level="OFF" additivity="false"/>
<logger name="jdbc.resultsettable" level="OFF" additivity="false"/>
<logger name="jdbc.audit" level="OFF" additivity="false"/>
<logger name="com.zaxxer" level="OFF" additivity="false"/>
<logger name="jdbc.sqltiming" level="DEBUG" />
<logger name="org.quartz" level="Error" additivity="false"/>
<!-- 특정패키지 로깅레벨 설정 -->
<logger name="cokr.xit" level="DEBUG" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
<appender-ref ref="Error"/>
</logger>
</configuration>

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="mapUnderscoreToCamelCase" value="false"/>
<setting name="cacheEnabled" value="false" />
<setting name="jdbcTypeForNull" value="NULL" />
<setting name="callSettersOnNulls" value="true"/>
</settings>
<typeAliases>
<typeAlias alias="egovMap" type="org.egovframe.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="dataobject" type="cokr.xit.foundation.data.DataObject"/>
</typeAliases>
<typeHandlers>
<typeHandler handler="cokr.xit.foundation.data.RowValueHandler" javaType="java.lang.Object"/>
</typeHandlers>
</configuration>
Loading…
Cancel
Save