diff --git a/pom.xml b/pom.xml index 4189ef9..1bc182b 100644 --- a/pom.xml +++ b/pom.xml @@ -20,15 +20,17 @@ org.springframework.boot spring-boot-starter-hateoas + 3.0.4 org.springframework.boot spring-boot-starter-web + 3.0.4 org.mybatis.spring.boot mybatis-spring-boot-starter - 2.3.0 + 3.0.1 @@ -41,24 +43,26 @@ org.modelmapper modelmapper - 3.1.0 + 3.1.1 mysql mysql-connector-java - 8.0.30 + 8.0.32 org.projectlombok lombok + 1.18.26 true org.springframework.boot spring-boot-starter-test + 3.0.4 test @@ -71,7 +75,8 @@ org.springframework.boot spring-boot-devtools - + 3.0.4 + diff --git a/src/main/java/com/itn/mjonApi/cmn/context/ContextIdgen.java b/src/main/java/com/itn/mjonApi/cmn/context/ContextIdgen.java index 1e5ed6b..79bd12f 100644 --- a/src/main/java/com/itn/mjonApi/cmn/context/ContextIdgen.java +++ b/src/main/java/com/itn/mjonApi/cmn/context/ContextIdgen.java @@ -24,9 +24,9 @@ import org.springframework.context.annotation.Configuration; */ @Configuration public class ContextIdgen { - /* - * 예시 testApi - * */ + /** + * @예시 testApi + * */ @Bean(name="testApi") public IdgenServiceImpl testApi(){ IdgenServiceImpl idgenServiceImpl = new IdgenServiceImpl(); @@ -37,5 +37,18 @@ public class ContextIdgen { return idgenServiceImpl; } + /** + * @discription apiLog Ids + * @return + */ + @Bean(name="apiLog") + public IdgenServiceImpl apiLog(){ + IdgenServiceImpl idgenServiceImpl = new IdgenServiceImpl(); + idgenServiceImpl.setCipers(13); // cipers: prefix를 제외한 아이디의 길이 지정 + idgenServiceImpl.setFillChar('0'); // fillChar: 0을 대신하여 표현되는 문자 + idgenServiceImpl.setPrefix("APILOG_"); // prefix: 아이디의 앞에 고정적으로 붙이고자 하는 설정값 지정 + idgenServiceImpl.setTableName("API_LOG_ID"); // tableName - dataSoure 에 설정된 DB에 SEQ 테이블에 tableName 컬럼에 참조할 값 + return idgenServiceImpl; + } } diff --git a/src/main/java/com/itn/mjonApi/cmn/interceptor/CertificationInterceptor.java b/src/main/java/com/itn/mjonApi/cmn/interceptor/CertificationInterceptor.java index 5a56221..74763ca 100644 --- a/src/main/java/com/itn/mjonApi/cmn/interceptor/CertificationInterceptor.java +++ b/src/main/java/com/itn/mjonApi/cmn/interceptor/CertificationInterceptor.java @@ -5,9 +5,11 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.itn.mjonApi.cmn.idgen.service.IdgenService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -38,7 +40,11 @@ public class CertificationInterceptor implements HandlerInterceptor{ @Autowired private LettnLoginLogService lettnLoginLogService; - + + @Resource(name = "apiLog") + private IdgenService idgenApiLogId; + + @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { @@ -94,7 +100,7 @@ public class CertificationInterceptor implements HandlerInterceptor{ if (lettnLoginLogVO.getUrl().length()>200){ //길이문제로 오류가 발생하는 경우도 처리하도록 수정 lettnLoginLogVO.setUrl(lettnLoginLogVO.getUrl().substring(0,199)); } - + lettnLoginLogVO.setLogId(idgenApiLogId.getNextStringId()); lettnLoginLogService.insert(lettnLoginLogVO); @@ -156,15 +162,16 @@ public class CertificationInterceptor implements HandlerInterceptor{ System.out.println("=====postHandle=4=apikey=="); } - + @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { // TODO Auto-generated method stub System.out.println("=====afterCompletion=4=apikey=="); - + } - + + /*모바일접속 유무*/ private boolean isMobile(HttpServletRequest request) { String userAgent = request.getHeader("user-agent"); diff --git a/src/main/java/com/itn/mjonApi/mjon/member/mapper/MyMsgMapper.java b/src/main/java/com/itn/mjonApi/mjon/member/mapper/MyMsgMapper.java index 93c07f3..0d2f21f 100644 --- a/src/main/java/com/itn/mjonApi/mjon/member/mapper/MyMsgMapper.java +++ b/src/main/java/com/itn/mjonApi/mjon/member/mapper/MyMsgMapper.java @@ -1,6 +1,7 @@ package com.itn.mjonApi.mjon.member.mapper; import com.itn.mjonApi.cmn.idgen.mapper.domain.IdgenVO; +import com.itn.mjonApi.mjon.member.mapper.domain.MyMsgVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; @@ -10,8 +11,8 @@ import java.util.List; public interface MyMsgMapper { /**/ - List findAll(); + List findAll(); @Select("select * from MJ_MYMSG") - List findAll_2(); + List findAll_2(); } diff --git a/src/main/java/com/itn/mjonApi/mjon/member/mapper/domain/MyMsgVO.java b/src/main/java/com/itn/mjonApi/mjon/member/mapper/domain/MyMsgVO.java new file mode 100644 index 0000000..1b21568 --- /dev/null +++ b/src/main/java/com/itn/mjonApi/mjon/member/mapper/domain/MyMsgVO.java @@ -0,0 +1,33 @@ +package com.itn.mjonApi.mjon.member.mapper.domain; +/* + table : mj_mymsg + comment : '내문자 보관함'; +*/ + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +import java.io.Serializable; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +public class MyMsgVO implements Serializable { + + + private Integer msgId; /*auto_increment comment '문자 고유아이디' primary key*/ + private String mberId; /*comment '회원 아이디'*/ + private String esntlId; /*null comment '회원고유 아이디'*/ + private String subject; /*null comment '문자 제목'*/ + private String smsTxt; /*null comment '문자 내용'*/ + private String smsLen; /*null comment '문자 길이'*/ + private String atchFileId1; /*null comment '첨부파일번호'*/ + private String atchFileId2; /*null comment '첨부파일번호'*/ + private String atchFileId3; /*null comment '첨부파일번호'*/ + private String regdate; /*null comment '등록일자'*/ + private String msgType; /*default 'S' null comment '문자종류'*/ + +} diff --git a/src/main/java/com/itn/mjonApi/mjon/member/service/impl/MemberServiceImpl.java b/src/main/java/com/itn/mjonApi/mjon/member/service/impl/MemberServiceImpl.java index c68ef2d..0f179ac 100644 --- a/src/main/java/com/itn/mjonApi/mjon/member/service/impl/MemberServiceImpl.java +++ b/src/main/java/com/itn/mjonApi/mjon/member/service/impl/MemberServiceImpl.java @@ -4,6 +4,7 @@ import com.itn.mjonApi.cmn.idgen.service.IdgenService; import com.itn.mjonApi.cmn.msg.RestResponse; import com.itn.mjonApi.mjon.member.mapper.MyMsgMapper; import com.itn.mjonApi.cmn.idgen.mapper.domain.IdgenVO; +import com.itn.mjonApi.mjon.member.mapper.domain.MyMsgVO; import com.itn.mjonApi.mjon.member.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -21,13 +22,13 @@ public class MemberServiceImpl implements MemberService { @Override public RestResponse findAll() { - List MyMsgListVO = myMsgMapper.findAll(); + List MyMsgListVO = myMsgMapper.findAll(); return new RestResponse(HttpStatus.OK, "성공", LocalDateTime.now(), MyMsgListVO); } @Override public RestResponse findAll2() { - List MyMsgListVO = myMsgMapper.findAll_2(); + List MyMsgListVO = myMsgMapper.findAll_2(); return new RestResponse(HttpStatus.OK, "성공", LocalDateTime.now(), MyMsgListVO); } diff --git a/src/main/resources/mapper/log/LettnLoginLog.xml b/src/main/resources/mapper/log/LettnLoginLog.xml index 4f7c0e4..05d5a2f 100644 --- a/src/main/resources/mapper/log/LettnLoginLog.xml +++ b/src/main/resources/mapper/log/LettnLoginLog.xml @@ -47,7 +47,8 @@ INSERT INTO ( ) - SELECT concat('API_',lpad(ifnull(replace(MAX(log_id),'API_',''),0)+1,16,'0')) + VALUE ( + #{logId} , #{conectId} , #{conectIp} , #{userAt} /**A:관리자, U:홈페이지 */ @@ -57,9 +58,7 @@ , #{menuNm} , #{url} , now() - - FROM LETTNLOGINLOG - WHERE log_id LIKE 'API_%' + ) diff --git a/src/main/resources/mapper/member/MyMsgMapper.xml b/src/main/resources/mapper/member/MyMsgMapper.xml index d8515af..202ce55 100644 --- a/src/main/resources/mapper/member/MyMsgMapper.xml +++ b/src/main/resources/mapper/member/MyMsgMapper.xml @@ -5,7 +5,7 @@ - SELECT * FROM MJ_MYMSG