진이의 Developer Story
Spring JavaMailSender 를 이용하여 메일보내기 본문
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="" /> // smtp 서버주소
<property name="port" value="" /> // port : smtp 서버포트
<property name="username" value="" /> // 사용자 아이디
<property name="password" value="" /> // 사용자 비밀번호
<property name="defaultEncoding" value="UTF-8" /> // 인코딩 방식
<property name="javaMailProperties">
<props>
<prop key="mail.transport.protocol">smtp</prop> // 메일서버 프로토콜 (smtp)
<prop key="mail.smtp.auth">false</prop> // 인증여부 (false라면 미인증, 단 서버에서 허용IP 설정이 되어야 함.)
<prop key="mail.smtp.starttls.enable">true</prop>
</props>
</property>
</bean>
* username 과 password는 인증없이 사용한다면 공백으로 두어도 됩니다.
@Resource(name = "mailSender")
private JavaMailSender javaMailSender; // DI
MimeMessagePreparator preparator = new MimeMessagePreparator() {
@Override
public void prepare(MimeMessage paramMimeMessage) throws Exception {
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(paramMimeMessage, true, "UTF-8");
mimeMessageHelper.setTo("<테스트> receiver@test.com"); // 받는사람
mimeMessageHelper.setFrom("<테스트> sender@test.com"); // 보내는사람
mimeMessageHelper.setSubject("jin3260 테스트 메일"); // 메일 제목
mimeMessageHelper.setText("<html><body><img src='cid:image'></body></html>", true); // 메일 내용
FileSystemResource res = new FileSystemResource(new File("c:\\image.jpg")); // 리소스 이미지
helper.addInline("image", res); // 이미지 등록
};
};
try {
javaMailSender.send(preparator); // 메일 전송
} catch (MailException me) {
// 예외처리 코드 (실패시 로그를 남긴다는 지...)
}
위에서 만든 빈을 DI해줍니다.
'Java > Spring' 카테고리의 다른 글
Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/]] (0) | 2016.11.28 |
---|---|
스프링 Maven Project - GIT - 젠킨스(jenkins) 연동하기 (1) | 2016.11.24 |
Spring MVC를 활용한 스마트에디터 2.0 이미지 업로드 (6) | 2016.11.14 |
Apache PDFBOX (pdf to image) (1) | 2016.10.27 |
(6) Spring+MyBatis 게시판 만들기 - 수정 및 삭제 추가 (12) | 2016.10.19 |
Comments