이 기사는 귀하의 참조를위한 Java 구현 간단한 템플릿 렌더링의 예를 공유합니다. 특정 내용은 다음과 같습니다
암호
패키지 com.hdwang; import java.util.hashmap; import java.util.map;/*** hdwang에 의해 2017/12/19에 생성되었습니다. */public class mytemplate {public static void main (string [] args) {문자열 template = "$ {name}, $ {sex}, $ {birthyear}는 $ {graduateyear}에서 태어 났으며 $ {University}에서 $ {map}에서 졸업했습니다." map <string, string> params = new Hashmap <> (); params.put ( "이름", "Zhang San"); params.put ( "섹스", "남성"); params.put ( "Birthyear", "1990"); params.put ( "대학원", "2012"); params.put ( "대학", "Tsinghua University"); Long Start = System.CurrentTimeMillis (); for (int i = 0; i <10000; i ++) {문자열 result = render (template, params); if (i == 9999) {System.out.println (결과); }} long end = System.CurrentTimeMillis (); System.out.println ( "비용 시간 :"+(종료 시작)+"ms"); start = system.currenttimeMillis (); for (int i = 0; i <10000; i ++) {문자열 result = render2 (템플릿, params); if (i == 9999) {System.out.println (결과); }} end = System.CurrentTimeMillis (); System.out.println ( "비용 시간 :"+(종료 시작)+"ms"); } public static strend render (문자열 템플릿, 맵 <문자열, 문자열> params) {// Builder 스 플라이 싱을 사용하여 String addde addditedbuilder builder = new StringBuilder ()보다 많은 효율성을 향상시킵니다. // 제어 변수를 정의합니다. boolean $ 시작 = false; 부울 parambegin = false; // 부울 Paramend = false; StringBuilder key = null; // (int i = 0; i <template.length (); i ++) {char c = template.charat (i); // if (c == '$') {$ begin = true; } if ($ begin && c == '{') {parambegin = true; builder.deletecharat (builder.length () -1); // 추가 된 $ 문자 key = new StringBuilder (); 계속하다; } // 매개 변수 키 if (parambegin && c! = '}') {if (c == '{') {System.out.println ( "템플릿 형식 오류! 위치 :"+i); } else {key.append (c); } 계속하다; } // end tag if (parambegin && c == '}') {// paramend = true; // 매개 변수 키 빌더에 해당하는 값 .append (params.get (key.toString ()); // 제어 변수 재설정 $ 시작 = false; parambegin = false; // paramend = false; 계속하다; } // Default Builder.Append (C); // 문자 추가} return builder.toString (); } public static string render2 (문자열 템플릿, 맵 <문자열, 문자열> params) {for (map.entry <string, string> entry : params.entryset ()) {String key = reptor.getKey (); 문자열 값 = Entry.GetValue (); 템플릿 = 템플릿 .replace ( "$ {"+key+"}", value); } 반환 템플릿; }}실행 결과
1990 년에 태어난 남성 인 장 산 (Zhang San)은 2012 년 칭 후아 대학교를 졸업했습니다.
비용 시간 : 65ms
1990 년에 태어난 남성 인 장 산 (Zhang San)은 2012 년 칭 후아 대학교를 졸업했습니다.
비용 시간 : 161ms
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.