2010-06-04 3 views
2

자바의 내 애플리케이션에서 동적 컨텐츠가 포함 된 전자 메일을 보내는 방법을 찾아야합니다. 예 :자바에서 동적 컨텐츠가 포함 된 이메일 본문

친애하는 < 성함> < 성>, 이것은 신품 패스워드 <입니다>. 내가 메일을 보낼 때

그래서 태그가 자신의 값을 변경합니다 : < 이름> = 사용자의 이름, < 성> = 사용자의 성, < 암호> = 사용자의 암호

그래서 누군가가 나에게 조언을 줄 수 있습니다 또는 나에게 약간의 튜토리얼의 링크를 보내라?

+0

전자 메일을 보내는 것이 아니라 걱정되는 것이 템플릿이므로 전자 메일 부분을 없애기 위해 제목, 질문 및 태그를 수정하는 것이 고려 대상이 될 수 있습니다. 그것은 당신의 일에있어서 또 다른 한 걸음입니다. – BalusC

답변

2

여기에는 기본 변수가 사용됩니다. Sending Email using JavaMail API을보고 변수를 사용하여 메시지 본문의 일부로 사용자 이름과 성 및 암호를 설정하십시오.

+1

Oren, 링크가 죽었습니다 – rpax

+0

우리의 @rpax를 가리켜 주셔서 고맙습니다. 나는 링크를 업데이트했다. –

0

StringBuilder를 사용하여 메시지를 작성하고 name, lastName 및 password 변수를 직접 삽입 할 수 있습니다. 또는 (게시물에 작성한 것처럼) 변수와 함께 텍스트 파일에 메시지를 작성하고 텍스트 파일을 구문 분석 할 수 있습니다.

2

java.text.MessageFormat을 사용하십시오.

String template = "Dear {0} {1}, this is your new password {2}."; 
String message = MessageFormat.format(template, "Jeff", "Atwood", "killskeet"); 

또는 String#format()를 사용

String template = "Dear %s %s, this is your new password %s."; 
String message = String.format(template, "Jeff", "Atwood", "killskeet"); 

이 매개 변수 만의 엄격한 순서를 필요로한다.

+0

답변 해 주셔서 감사합니다. 그러나 다음과 같은 것을 찾고있었습니다. http://www.bredelet.com/Denis/FreeMarker%20first%20steps.html 또는 http://www.javaworld.com/javaworld /jw-12-2001/jw-1228-velocity.html – Skippy

+0

내 대답도 이와 유사합니다. 또는 표현에서 이름을 사용하고 좀 더 환상적으로 사용하고 싶습니까? [JEXL] (http://commons.apache.org/jexl/)을보십시오. – BalusC

0

아파치 속도를 사용하여 동적 콘텐츠가 포함 된 이메일을 보낼 수 있습니다. 매개 변수의 엄격한 순서 지정은 필요하지 않습니다. 당신은 단지 장소 소유자가 필요하고 속도 컨텍스트에서 그들을 설정합니다. 템플릿 엔진이 동적 내용을 대체합니다.

관련 문제