-
Spring(다국어 지원)Spring(전자정부 프레임 워크) 2020. 7. 16. 09:42
Spring(다국어 지원)
[message.properties]
##################################################### # 메세지 표준 # << 개정이력(Modification Information) >> # 수정일 수정자 수정내용 # ======= ======= ===================== # 2016.04.. 최초생성 # Copyright (c) 2016 by DDIT All right reserved ##################################################### fail.common.msg=에러가 발생했습니다! fail.common.sql=sql 에러가 발생했습니다! error code: {0}, error msg: {1} info.nodata.msg=해당 데이터가 없습니다. #UI Common resource# button.search=검색 button.use=사용 button.notUsed=사용중지 button.inquire=조회 button.update=수정 button.create=등록 button.delete=삭제 button.deleteDatabase=완전삭제 button.close=닫기 button.save=저장 button.list=목록 button.reset=취소 button.passwordUpdate=암호변경 button.subscribe=가입신청 button.realname=실명확인 button.moveToGpin=GPIN실명확인으로 이동 button.moveToIhidnum=주민등록번호 실명확인으로 이동 button.agree=동의 button.disagree=비동의 button.possible=가능 button.impossible=불가능 button.qnaregist=Q&A등록 button.cnsltregist=상담등록 button.preview=미리보기 button.next=다음 button.add=바로추가 button.confirm=확인 button.back = 뒤로 button.yes = 예 button.no = 아니오 button.home = 홈 button.user = 사용자지원 button.cop = 협업 button.wrkstart = 출근 button.wrkend = 퇴근 #UI Common Message# common.save.msg=저장하시겠습니까? common.regist.msg=등록하시겠습니까? common.delete.msg=삭제하시겠습니까? common.update.msg=수정하시겠습니까? common.nodata.msg=자료가 없습니다. 다른 검색조건을 선택해주세요 common.required.msg=(은)는 필수입력항목입니다. common.acknowledgement.msg=승인하시겠습니까? common.acknowledgementcancel.msg=승인취소하시겠습니까? success.request.msg = 요청처리가 성공적으로 수행되었습니다. success.common.select=정상적으로 조회되었습니다. success.common.insert=정상적으로 등록되었습니다. success.common.update=정상적으로 수정되었습니다. success.common.delete=정상적으로 삭제되었습니다. common.imposbl.fileupload = 더 이상 파일을 첨부할 수 없습니다. common.isConfmDe.msg=승인일자를 확인 바랍니다. common.isExist.msg = 이미 존재하거나 과거에 등록이 되었던 상태입니다. fail.common.insert = 생성이 실패하였습니다. fail.common.update = 수정이 실패하였습니다. fail.common.delete = 삭제가 실패하였습니다. fail.common.delete.upperMenuExist = 참조되는 메뉴가 있어 삭제가 실패하였습니다. fail.common.select = 조회에 실패하였습니다. fail.common.login = 로그인 정보가 올바르지 않습니다. fail.common.login.password = 패스워드 자리 수가 일치 하지 않습니다.(8자리 이상 20자리 이하) fail.common.idsearch = 아이디를 찾을수 없습니다. fail.common.pwsearch = 비밀번호를 찾을수 없습니다. fail.request.msg = 요청처리를 실패하였습니다. #UI User Message# fail.user.passwordUpdate1=현재 비밀번호가 맞지 않습니다. fail.user.passwordUpdate2=비밀번호와 비밀번호 확인이 일치하지 않습니다. info.user.rlnmCnfirm=주민등록번호를 사용하여 실명확인을 하십시오. success.user.rlnmCnfirm=행정안전부의 주민등록자료와 일치합니다. fail.user.rlnmCnfirm=행정안전부의 주민등록자료와 일치하지 않습니다. fail.user.connectFail=시스템 장애가 발생했습니다.(인증서버 연결 실패) info.user.rlnmPinCnfirm=공공 아이핀 아이디를 사용하여 실명확인을 하십시오. success.user.rlnmPinCnfirm=공공아이핀의 등록자료와 일치합니다. fail.user.rlnmPinCnfirm=공공아이핀의 등록자료와 일치하지 않습니다. #UI Cop Message# cop.extrlUser = 외부사용자 cop.intrlUser = 내부사용자 cop.private = 비공개 cop.public = 공개 cop.adbkNm = 주소록명 cop.othbcScope = 공개범위 cop.company = 회사 cop.part = 부서 cop.man = 개인 cop.adbkUser = 구성원 cop.bbsNm = 게시판명 cop.bbsIntrcn = 게시판소개 cop.bbsTyCode = 게시판 유형 cop.bbsAttrbCode = 게시판 속성 cop.replyPosblAt = 답장가능여부 cop.fileAtchPosblAt = 파일첨부가능여부 cop.posblAtchFileNumber = 첨부가능파일 숫자 cop.tmplatId = 템플릿 정보 cop.guestList.subject = 방명록 게시글입니다. cop.nttSj = 제목 cop.nttCn = 글내용 cop.ntceBgnde = 게시시작일 cop.ntceEndde = 게시종료일 cop.ntcrNm = 작성자 cop.password = 패스워드 cop.atchFile = 파일첨부 cop.guestList = 방명록 cop.guestListCn = 방명록 내용 cop.noticeTerm = 게시기간 cop.atchFileList = 첨부파일목록 cop.cmmntyNm = 커뮤니티명 cop.cmmntyIntrcn = 커뮤니티 소개 cop.cmmntyMngr = 커뮤니티 관리자 cop.memberMagr.login = 회원 관리자 로그인 cop.clbOprtr = 동호회 운영자 cop.clbIntrcn = 동호회 소개 cop.clbNm = 동호회 명 cop.tmplatNm = 템플릿명 cop.tmplatSeCode = 템플릿 구분 cop.tmplatCours = 템플릿경로 cop.useAt = 사용여부 cop.ncrdNm = 이름 cop.cmpnyNm = 회사명 cop.deptNm = 부서명 cop.ofcpsNm = 직위 cop.clsfNm = 직급 cop.emailAdres = 이메일주소 cop.telNo = 전화번호 cop.mbtlNum = 휴대폰번호 cop.adres = 주소 cop.extrlUserAt = 외부사용자여부 cop.publicAt = 공개여부 cop.remark = 비고 cop.trgetNm = 커뮤니티/동호회 정보 cop.preview = 미리보기 cop.id = 아이디 cop.password = 비밀번호 cop.join = 회원가입 cop.id.save = 아이디 저장 cop.withdraw.msg=탈퇴처리 하시겠습니까? cop.reregist.msg=재가입 처리하시겠습니까? cop.registmanager.msg=운영진으로 등록하시겠습니까? cop.use.msg=사용 처리하시겠습니까? cop.unuse.msg=사용중지 처리하시겠습니까? cop.delete.confirm.msg=사용중지를 선택하실 경우 다시 사용으로 변경이 불가능합니다. cop.ing.msg=승인요청 중입니다. cop.request.msg=가입신청이 정상적으로 요청되었습니다 cop.password.msg=패스워드를 입력해 주십시오. cop.password.not.same.msg=패스워드가 일치하지 않습니다. cop.comment.wrterNm = 작성자 cop.comment.commentCn = 내용 cop.comment.commentPassword = 패스워드 cop.satisfaction.wrterNm = 작성자 cop.satisfaction.stsfdgCn = 내용 cop.satisfaction.stsfdg = 만족도 cop.satisfaction.stsfdgPassword = 패스워드 cop.scrap.scrapNm = 스크랩명 #UI USS Message# uss.ion.noi.ntfcSj=제목 uss.ion.noi.ntfcCn=내용 uss.ion.noi.ntfcDate=알림일자 uss.ion.noi.ntfcTime=알림시간 uss.ion.noi.ntfcHH=알림시간 uss.ion.noi.ntfcMM=알림분 uss.ion.noi.bhNtfcIntrvl=사전알림간격 uss.ion.noi.bhNtfcIntrvl.msg=사전알림간격 지정이 필요합니다. uss.ion.noi.alertNtfcTime=알림일자 및 시간이 유효하지 않습니다. #UI COP Message# cop.sms.trnsmitTelno=발신전화번호 cop.sms.trnsmitCn=전송내용 cop.sms.recptnTelno=수신전화번호 cop.sms.send=전송 cop.sms.addRecptn=추가 cop.sms.recptnTelno.msg=수신전화번호 지정이 필요합니다. #UI sym.log Message# sym.log.histSeCode = 이력구분 sym.log.sysNm = 시스템명 sym.log.histCn = 이력내용 sym.log.atchFile = 첨부파일 sym.log.atchFileList = 첨부파일목록 sym.ems.receiver = 받는사람 sym.ems.title = 제목 sym.ems.content = 발신내용 #Validator Errors# errors.prefix=<div class="error"> errors.suffix=</div><br/> errors.required={0}은(는) 필수 입력값입니다. errors.minlength={0}은(는) {1}자 이상 입력해야 합니다. errors.maxlength={0}은(는) {1}자 이상 입력할수 없습니다. errors.invalid={0}은(는) 유효하지 않은 값입니다. errors.minInteger={0}은(는) 유효한 값이 아닙니다. 1 이상의 값을 입력해야 합니다. errors.byte={0}은(는) byte타입이어야 합니다. errors.short={0}은(는) short타입이어야 합니다. errors.integer={0}은(는) integer 타입이어야 합니다. errors.long={0}은(는) long 타입이어야 합니다. errors.float={0}은(는) float 타입이어야 합니다. errors.double={0}은(는) double 타입이어야 합니다. errors.date={0}은(는) 날짜 유형이 아닙니다. errors.range={0}은(는) {1}과 {2} 사이의 값이어야 합니다. errors.creditcard={0}은(는) 유효하지 않은 신용카드 번호입니다. errors.email={0}은(는) 유효하지 않은 이메일 주소입니다. errors.ihidnum=유효하지 않은 주민등록번호입니다. errors.korean={0}은(는) 한글을 입력하셔야 합니다. errors.ip=유효하지 않은 IP주소입니다. errors.english={0}은(는) 영문만 사용하실수 있습니다. errors.notKorean={0}은(는) 한글을 사용하실수 없습니다. errors.password1={0}은(는) 8~20자 내에서 입력해야 합니다. errors.password2={0}은(는) 한글,특수문자,띄어쓰기는 허용되지 않습니다. errors.password3={0}은(는) 순차적인 숫자를 4개이상 연속해서 사용할수 없습니다. errors.password4={0}은(는) 반복되는 문자나 숫자를 4개이상 연속해서 사용할 수 없습니다. error.security.runtime.error = error #Validator Errors- wordDicaryVO# wordDicaryVO.wordNm=용어명 wordDicaryVO.engNm=영문명 wordDicaryVO.wordDc=용어설명 wordDicaryVO.synonm=동의어 #Validator Errors- cnsltManageVO# cnsltManageVO.cnsltSj=상담제목 cnsltManageVO.cnsltCn=상담내용 cnsltManageVO.writngPassword=작성비밀번호 cnsltManageVO.areaNo=지역번호 cnsltManageVO.middleTelno=중간전화번호 cnsltManageVO.endTelno=끝전화번호 cnsltManageVO.wrterNm=작성자명 cnsltManageVO.managtCn=답변내용 cnsltManageVO.firstMoblphonNo=휴대폰전화번호(앞번) cnsltManageVO.middleMbtlnum=휴대폰전화번호(국번) cnsltManageVO.endMbtlnum=휴대폰전화번호(지번) #Validator Errors- siteManageVO# siteManageVO.siteNm=사이트명 siteManageVO.siteUrl=사이트 URL siteManageVO.siteDc=사이트설명 siteManageVO.siteThemaClCode=사이트주제분류 siteManageVO.actvtyAt=활성여부 siteManageVO.useAt=사용여부 #Validator Errors- recomendSiteManageVO# recomendSiteManageVO.recomendSiteNm=추천사이트명 recomendSiteManageVO.recomendSiteUrl=추천사이트 URL recomendSiteManageVO.recomendSiteDc=추천사이트설명 recomendSiteManageVO.recomendResnCn=추천사이트승인사유 recomendSiteManageVO.confmDe=승인일자 #Validator Errors- hpcmManageVO# hpcmManageVO.hpcmSeCode=도움말구분 hpcmManageVO.hpcmDf=도움말정의 hpcmManageVO.hpcmDc=도움말설명 #Validator Errors- newsManageVO# newsManageVO.newsSj=뉴스제목 newsManageVO.newsCn=뉴스내용 newsManageVO.ntceDe=게시일자 #Validator Errors- faqManageVO# faqManageVO.qestnSj=질문제목 faqManageVO.qestnCn=질문내용 faqManageVO.answerCn=답변내용 #Validator Errors- roughMapVO# roughMapVO.roughMapSj=약도제목 roughMapVO.infoWindow=약도표시 #Validator Errors- stplatManageVO# stplatManageVO.useStplatNm=이용약관명 stplatManageVO.useStplatCn=이용약관내용 stplatManageVO.infoProvdAgreCn=정보제공동의내용 #Validator Errors- cpyrhtPrtcPolicyVO# cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=저작권보호정책내용 #Validator Errors- qnaManageVO# qnaManageVO.qestnSj=질문제목 qnaManageVO.qestnCn=질문내용 qnaManageVO.writngPassword=작성비밀번호 qnaManageVO.areaNo=지역번호 qnaManageVO.middleTelno=중간전화번호 qnaManageVO.endTelno=끝전화번호 qnaManageVO.wrterNm=작성자명 qnaManageVO.answerCn=답변내용 #Validator Errors- ReprtStatsVO# sts.reprtId = 보고서ID sts.title = 보고서명 sts.category = 보고서유형 sts.status = 진행상태 sts.regDate = 등록일시 #Rest day messages# sym.cal.restDay = 휴일일자 sym.cal.restName = 휴일명 sym.cal.restDetail = 휴일설명 sym.cal.restCategory = 휴일구분 #Validator Errors- cnsltManageVO# cnsltManageVO.firstMoblphonNo=지역번호 cnsltManageVO.middleMbtlnum=중간전화번호 cnsltManageVO.endMbtlnum=끝전화번호 #mobile 메뉴관리# mgr.menuMngt = 메뉴관리 mgr.menuList = 메뉴목록조회 mgr.menuNm = 메뉴명 mgr.menuDetail = 메뉴상세조회 mgr.menuRegist = 메뉴등록 mgr.menuUpdt = 메뉴수정 mgr.code = 코드 mgr.menuCode = 메뉴코드 mgr.UpperMenu = 상위메뉴 mgr.cnncUrl = 연결URL mgr.actvtyAt = 사용여부 mgr.menuDc = 설명 mgr.mobileEgov = 모바일 전자정부 #권한 처리 관련 에러 메시지 methodInvocation.authorities=권한 설정이 필요합니다. # 2016.04.09 전인호 aplt_awar = 과정 인지도 평가 aplt_know = 선수지식 평가 aplt_pers = 인성 평가 aplt_itvw = 면접 평가 #
c태그, spring 태그 사용 준비
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
등등 jsp에 원래 한글로 써놓은 곳에 프로퍼티스 파일에 선언한 코드를 써주면 오케이~
<spring:message code="cop.id"></spring:message> <spring:message code="cop.password"></spring:message>
위에는 그냥 정적으로 다국어 지원
이건 서버내에서 메세지를 만들어주고 메세지에 접근해서 보냄
루트 컨텍스트에 다음 코드 선언
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:c="http://www.springframework.org/schema/c" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 스프링 프레임워크 다국어 서비스 1. 클라이언트 서버 대상 요청시 요청 헤더 데이터 중 Accept-Language 기초로 다국어 서비스를 제공.(한국 Accept-Language = ko-kr) 2. AcceptHeaderLocaleRsolver 자원이 요청 헤더 데이터를 기초로 준비된 프로퍼티스 파일들 중 클라이언트 접속 국가 언어코드의 프로퍼티스 파일을 특정 3. 다국어 서비스를 위해 준비되지 않은 클라이언트 접속 국가는 언어 코드가 생략된 프로퍼티스 파일을 활용해 서비스를 제공 --> <!-- 메세지 응답객체를 만들어서 보내줄때 --> <bean id="LocalResolver" class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver"></bean> <!-- 서버내에서 메세지를 만들어주고 메세지에 접근할때 아래 두개의 코드를 씀 --> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource" p:basename="kr/or/ddit/i18n/config/message" p:defaultEncoding="UTF-8"> </bean> <!-- 서버내에서 프로퍼티스 파일에 접근해서 프로퍼티스파일을 설정할 수 있는 코드 작성 --> <bean id="messageAccessor" class="org.springframework.context.support.MessageSourceAccessor" c:messageSource-ref="messageSource"> </bean> </beans>
Controller 클래스에서 동적으로 메세지 삽입
전역변수로 MessageSourceAccessor 데이터 타입변수 선언 하고 @Autowired로 값 주입
@Autowired로 값 주입할 수 있는 이유는 위의 루트 컨텍스트 설정파일에서 bean등록을 했기 때문
@Autowired private MessageSourceAccessor accessor;
회원가입하는 컨트롤러 메서드에서 메세지 만들어주고 보내줌
@RequestMapping("insertMemberInfo") /*(MemberVO memberInfo :도메인 오브젝트*/ public String insertMember(MemberVO memberInfo) throws Exception{ this.service.insertMember(memberInfo); String message = accessor.getMessage("success.common.insert.join",Locale.KOREA); message = URLEncoder.encode(message,"UTF-8"); return "redirect:/user/join/loginForm.do?message="+message; }
'Spring(전자정부 프레임 워크)' 카테고리의 다른 글
Spring( @PathVariable ) (0) 2020.07.16 Spring(RedirectAttributes) (0) 2020.07.16 Spring(인코딩, encoding 설정) (0) 2020.07.15 Spring(로그인, 회원조회, 회원정보수정, 로그아웃) (0) 2020.07.15 Spring 에러 모음 (0) 2020.07.15