메일 솔루션과의 연동을 위한 표준 인터페이스 기능을 수행한다. 전자우편을 자체적으로 발송하는 기능은 구성하지 않으며, 메일발송시스템에 XML형태로 전자우편 내용을 전송하고, 수신결과를 받아 내역관리를 할 수 있는 인터페이스를 지원하는 기능과 발송할 메일 내역을 관리하는 기능을 제공한다.
메일연동 인터페이스 패키지는 요소기술의 공통(cmm) 패키지와 포맷/날짜/계산, 시스템 패키지에 대해서 직접적인 함수적 참조 관계를 가진다.
유형 | 대상소스명 | 비고 |
---|---|---|
Controller | egovframework.com.cop.ems.web.EgovSndngMailDtlsController.java | 발송메일 내역조회 관리 Controller Class |
Service | egovframework.com.cop.ems.service.EgovSndngMailDtlsService.java | 발송메일 내역조회 Service Class |
ServiceImpl | egovframework.com.cop.ems.service.impl.EgovSndngMailDtlsServiceImpl.java | 발송메일 내역조회ServiceImpl Class |
Model | egovframework.com.cop.ems.service.SndngMail.java | 발송메일 모델 Class |
VO | egovframework.com.cop.ems.service.SndngMailVO.java | 발송메일 VO Class |
DAO | egovframework.com.cop.ems.service.impl.SndngMailDtlsDAO.java | 발송메일 내역조회 Dao Class |
JSP | /WEB-INF/jsp/egovframework/com/cop/ems/EgovMailDtls.jsp | 발송메일 내역조회 페이지 |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_mysql.xml | 발송메일 내역조회 MySQL용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_cubrid.xml | 발송메일 내역조회 Cubrid용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_oracle.xml | 발송메일 내역조회 Oracle용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_tibero.xml | 발송메일 내역조회 Tibero용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_altibase.xml | 발송메일 내역조회 Altibase용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_maria.xml | 발송메일 내역조회 MariaDB용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDtls_SQL_postgres.xml | 발송메일 내역조회 PostgreSQL용 QUERY XML |
Validator Rule XML | resources/egovframework/validator/validator-rules.xml | Validator Rule을 정의한 XML |
Validator XML | resources/egovframework/validator/com/cop/ems/EgovMailRegist.xml | 메일솔루션 연동 인터페이스 Validator XML |
Message properties | resources/egovframework/message/com/cop/ems/message_ko.properties | 발송메일 내역조회를 위한 Message properties(한글) |
Message properties | resources/egovframework/message/com/cop/ems/message_en.properties | 발송메일 내역조회를 위한 Message properties(영문) |
Message properties | resources/egovframework/message/com/message-common_ko.properties | 공통 Message properties(한글) |
Message properties | resources/egovframework/message/com/message-common_en.properties | 공통 Message properties(영문) |
유형 | 대상소스명 | 비고 |
---|---|---|
Controller | egovframework.com.cop.ems.web.EgovSndngMailRegistController.java | 발송메일 등록 관리 Controller Class |
Service | egovframework.com.cop.ems.service.EgovSndngMailRegistService.java | 발송메일 등록 관리 Service Class |
ServiceImpl | egovframework.com.cop.ems.service.impl.EgovSndngMailRegistServiceImpl.java | 발송메일 등록 관리 ServiceImpl Class |
Model | egovframework.com.cop.ems.service.SndngMail.java | 발송메일 모델 Class |
VO | egovframework.com.cop.ems.service.SndngMailVO.java | 발송메일 VO Class |
VO | egovframework.com.cop.ems.service.AtchmnFileVO.java | 발송메일에 첨부되는 파일 VO Class |
DAO | egovframework.com.cop.ems.service.impl.SndngMailRegistDAO.java | 발송메일 등록 Dao Class |
JSP | /WEB-INF/jsp/egovframework/com/cop/ems/EgovMailRegist.jsp | 발송메일 등록 페이지 |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_mysql.xml | 발송메일 등록 MySQL용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_cubrid.xml | 발송메일 등록 Cubrid용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_oracle.xml | 발송메일 등록 Oracle용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_tibero.xml | 발송메일 등록 Tibero용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_altibase.xml | 발송메일 등록 Altibase용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_maria.xml | 발송메일 등록 MariaDB용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailRegist_SQL_postgres.xml | 발송메일 등록 PostgreSQL용 QUERY XML |
Validator Rule XML | resources/egovframework/validator/validator-rules.xml | Validator Rule을 정의한 XML |
Validator XML | resources/egovframework/validator/com/cop/ems/EgovMailRegist.xml | 메일솔루션 연동 인터페이스 Validator XML |
Message properties | resources/egovframework/message/com/cop/ems/message_ko.properties | 발송메일 내역조회를 위한 Message properties(한글) |
Message properties | resources/egovframework/message/com/cop/ems/message_en.properties | 발송메일 내역조회를 위한 Message properties(영문) |
Idgen XML | resources/egovframework/spring/context-idgen.xml | 발송메일 Id생성 Idgen XML |
유형 | 대상소스명 | 비고 |
---|---|---|
Controller | egovframework.com.cop.ems.web.EgovSndngMailDetailController.java | 발송메일 상세조회 관리 Controller Class |
Service | egovframework.com.cop.ems.service.EgovSndngMailDetailService.java | 발송메일 상세조회 Service Class |
Service | egovframework.com.cop.ems.service.EgovSndngMailService.java | 메일 솔루션과 연동해서 이용해서 메일을 보내는 Service Class |
ServiceImpl | egovframework.com.cop.ems.service.impl.EgovSndngMailDetailServiceImpl.java | 발송메일 상세조회 ServiceImpl Class |
ServiceImpl | egovframework.com.cop.ems.service.impl.EgovSndngMailServiceImpl.java | 메일 솔루션과 연동해서 이용해서 메일을 보내는 ServiceImpl Class |
Model | egovframework.com.cop.ems.service.SndngMail.java | 발송메일 모델 Class |
VO | egovframework.com.cop.ems.service.SndngMailVO.java | 발송메일 VO Class |
DAO | egovframework.com.cop.ems.service.impl.SndngMailDetailDAO.java | 발송메일 상세조회 Dao Class |
JSP | /WEB-INF/jsp/egovframework/com/cop/ems/EgovMailDetail.jsp | 발송메일 상세조회 페이지 |
JSP | /WEB-INF/jsp/egovframework/com/cop/ems/EgovMailXml.jsp | 발송요청메일 XML파일 페이지 |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_mysql.xml | 발송메일 상세조회 MySQL용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_cubrid.xml | 발송메일 상세조회 Cubrid용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_oracle.xml | 발송메일 상세조회 Oracle용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_tibero.xml | 발송메일 상세조회 Tibero용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_altibase.xml | 발송메일 상세조회 Altibase용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_maria.xml | 발송메일 상세조회 MariaDB용 QUERY XML |
QUERY XML | /egovframework/mapper/com/cop/ems/EgovSndngMailDetail_SQL_postgres.xml | 발송메일 상세조회 PostgreSQL용 QUERY XML |
Validator Rule XML | resources/egovframework/validator/validator-rules.xml | Validator Rule을 정의한 XML |
Validator XML | resources/egovframework/validator/com/cop/ems/EgovMailRegist.xml | 메일솔루션 연동 인터페이스 Validator XML |
Message properties | resources/egovframework/message/com/cop/ems/message_ko.properties | 발송메일 내역조회를 위한 Message properties(한글) |
Message properties | resources/egovframework/message/com/cop/ems/message_en.properties | 발송메일 내역조회를 위한 Message properties(영문) |
CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL, next_id DECIMAL(30) NOT NULL, PRIMARY KEY (table_name)); INSERT INTO COMTECOPSEQ VALUES('MAILMSG_ID','0');
<bean name="egovMailMsgIdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrService" destroy-method="destroy"> <property name="dataSource" ref="egov.dataSource" /> <property name="strategy" ref="mailMsgtrategy" /> <property name="blockSize" value="10"/> <property name="table" value="COMTECOPSEQ"/> <property name="tableName" value="MAILMSG_ID"/> </bean> <bean name="mailMsgtrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl"> <property name="prefix" value="MAILMSG_" /> <property name="cipers" value="12" /> <property name="fillChar" value="0" /> </bean>
테이블명 | 테이블명(영문) | 비고 |
---|---|---|
메일발신관리 | COMTHEMAILDSPTCHMANAGE | 메일발신을 관리한다. |
메일솔루션 연동 인터페이스는 발송메일 내역조회, 발송메일 등록, 발송메일 상세조회 기능으로 구분되어 있다.
메일 솔루션을 통해 발송하기 위해 등록된 메일 목록을 조회하고, 삭제 처리할 수 있다.
메일 목록에서 발송결과로 사용되는 코드 및 그에 따른 설정 값의 반영사항은 다음과 같다.
코드분류 | 코드분류명 | 코드ID | 코드명 |
---|---|---|---|
COM024 | 발송결과구분 | R | 요청 |
COM024 | 발송결과구분 | F | 실패 |
COM024 | 발송결과구분 | C | 완료 |
Action | URL | Controller method | QueryID |
---|---|---|---|
메일목록조회 | /ems/selectSndngMailList.do | selectSndngMailList | “SndngMailDtlsDAO.selectSndngMailList_D” |
“SndngMailDtlsDAO.selectSndngMailListTotCnt_S” |
제목/내용/보낸이 검색조건으로 발송메일 목록을 조회한다.
삭제할 메일들을 체크한 뒤 삭제한다.
검색조건 선택: 제목, 내용, 보낸이 검색조건을 선택한다.
검색어 입력: 선택한 검색조건에 맞게 검색어를 입력한다.
조회: 검색조건, 검색어에 부합되는 메일목록을 조회한다.
등록: 메일 등록 화면으로 들어간다.
삭제: 체크한 메일들을 삭제한다.
메일 솔루션을 통해 발송하기 위해 수신자, 제목, 첨부파일, 발신내용 정보를 입력하여 메일을 등록할 수 있다.
메일 등록에서 발송결과로 사용되는 코드 및 그에 따른 설정 값의 반영사항은 다음과 같다.
코드분류 | 코드분류명 | 코드ID | 코드명 |
---|---|---|---|
COM024 | 발송결과구분 | R | 요청 |
COM024 | 발송결과구분 | F | 실패 |
COM024 | 발송결과구분 | C | 완료 |
Action | URL | Controller method | QueryID |
---|---|---|---|
메일등록화면 | /cop/ems/insertSndngMailView.do | insertSndngMailView | |
메일등록 | /cop/ems/insertSndngMail.do | insertSndngMail | “sndngMailRegistDAO.insertSndngMail” |
발신자, 수신자, 제목, 첨부파일, 발신내용 정보를 담은 메일을 등록한다.
받는 사람: 수신자의 E-Mail 주소를 입력한다.
제목: 메일 제목을 입력한다.
파일첨부: 메일에 첨부할 파일을 하나씩 추가한다.
발신내용: 메일의 내용을 HTML 또는 텍스트 형태로 입력한다.
뒤로: 메일 내역조회 화면으로 돌아간다.
등록: 메일을 등록하고 발송요청 한다.
메일 솔루션을 통해 발송하기 위해 등록된 메일 정보를 상세 조회하고, 삭제 처리할 수 있다.
N/A
Action | URL | Controller method | QueryID |
---|---|---|---|
메일상세조회 | /cop/ems/selectSndngMailDetail.do | selectSndngMail | “sndngMailDetailDAO.selectSndngMail” |
발송메일삭제 | /cop/ems/deleteSndngMail.do | deleteSndngMail | “sndngMailDetailDAO.deleteSndngMail” |
첨부파일삭제 | /cop/ems/deleteSndngMail.do | deleteSndngMail | “sndngMailDetailDAO.deleteAtchmnFileList” |
발신자, 수신자, 제목, 내용, 발송결과, XML파일내용보기, 첨부파일 정보를 조회한다.
조회한 메일을 삭제한다.
XML메일보기: 발송요청을 위해 생성된 XML형태의 파일 내용을 조회한다.
첨부파일: 메일에 첨부된 파일을 열거나 저장한다.
뒤로: 발송메일 목록 조회 화면으로 돌아간다.
삭제: 조회된 메일 정보 및 관련 XML파일, 첨부파일을 모두 삭제한다.
<!-- 일반용 --> <bean id="EMSMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl" p:host="STMP서버주소" p:username="아이디" p:password="비밀번호" /> <!-- 메일 연동 인터페이스에서 첨부파일 미사용(SSL 사용시) --> <bean id="EMSMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl" p:host="smtp.gmail.com" p:port="465" p:protocol="smtps" p:username="아이디" p:password="비밀번호"> <property name="javaMailProperties"> <props> <prop key="mail.smtps.auth">true</prop> <prop key="mail.smtps.startls.enable">true</prop> <prop key="mail.smtps.debug">true</prop> </props> </property> </bean>
package egovframework.com.cop.ems.service.impl; @Service("egovSndngMailService") public class EgovSndngMailServiceImpl extends AbstractServiceImpl implements EgovSndngMailService { // 첨부파일 미사용시 @Resource(name="EMSMailSender") private MailSender emsMailSender; public boolean sndngMail(SndngMailVO sndngMailVO) throws Exception { String recptnPerson = (sndngMailVO.getRecptnPerson() == null) ? "" : sndngMailVO.getRecptnPerson(); // 수신자 String subject = (sndngMailVO.getSj() == null) ? "" : sndngMailVO.getSj(); // 메일제목 String emailCn = (sndngMailVO.getEmailCn() == null) ? "" : sndngMailVO.getEmailCn(); // 메일내용 SimpleMailMessage msg = new SimpleMailMessage(); msg.setTo(recptnPerson); msg.setSubject(subject); msg.setText(emailCn); emsMailSender.send(msg); }