企业级 SpringBoot 教程 (二十一)springboot集成JMS

构架工程

创建一个springboot工程,在其pom文件加入:

1

2

3

4

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-mail</artifactId>

</dependency>

  

添加配置

1

2

3

4

5

6

spring.mail.host=smtp.163.com

spring.mail.username=miles02@163.com

spring.mail.password=

spring.mail.port=25

spring.mail.protocol=smtp

spring.mail.default-encoding=UTF-8

  

在password 中填写自己的邮箱密码。

测试发邮件

测试代码清单如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

package com.forezp;

 

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.core.io.FileSystemResource;

import org.springframework.mail.SimpleMailMessage;

import org.springframework.mail.javamail.JavaMailSenderImpl;

import org.springframework.mail.javamail.MimeMessageHelper;

import org.springframework.test.context.junit4.SpringRunner;

 

import javax.mail.internet.MimeMessage;

import java.io.File;

 

@RunWith(SpringRunner.class)

@SpringBootTest

public class SpringbootJmsApplicationTests {

 

    @Test

    public void contextLoads() {

    }

 

 

    @Autowired

    private JavaMailSenderImpl mailSender;

 

    /**

     * 发送包含简单文本的邮件

     */

    @Test

    public void sendTxtMail() {

        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();

        // 设置收件人,寄件人

        simpleMailMessage.setTo(new String[] {"miles02@163.com"});

        simpleMailMessage.setFrom("miles02@163.com");

        simpleMailMessage.setSubject("Spring Boot Mail 邮件测试【文本】");

        simpleMailMessage.setText("这里是一段简单文本。");

        // 发送邮件

        mailSender.send(simpleMailMessage);

 

        System.out.println("邮件已发送");

    }

 

    /**

     * 发送包含HTML文本的邮件

     * @throws Exception

     */

    @Test

    public void sendHtmlMail() throws Exception {

        MimeMessage mimeMessage = mailSender.createMimeMessage();

        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage);

        mimeMessageHelper.setTo("miles02@163.com");

        mimeMessageHelper.setFrom("miles02@163.com");

        mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【HTML】");

 

        StringBuilder sb = new StringBuilder();

        sb.append("<html><head></head>");

        sb.append("<body><h1>spring 邮件测试</h1><p>hello!this is spring mail test。</p></body>");

        sb.append("</html>");

 

        // 启用html

        mimeMessageHelper.setText(sb.toString(), true);

        // 发送邮件

        mailSender.send(mimeMessage);

 

        System.out.println("邮件已发送");

 

    }

 

    /**

     * 发送包含内嵌图片的邮件

     * @throws Exception

     */

    @Test

    public void sendAttachedImageMail() throws Exception {

        MimeMessage mimeMessage = mailSender.createMimeMessage();

        // multipart模式

        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);

        mimeMessageHelper.setTo("miles02@163.com");

        mimeMessageHelper.setFrom("miles02@163.com");

        mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【图片】");

 

        StringBuilder sb = new StringBuilder();

        sb.append("<html><head></head>");

        sb.append("<body><h1>spring 邮件测试</h1><p>hello!this is spring mail test。</p>");

        // cid为固定写法,imageId指定一个标识

        sb.append("<img src=\"cid:imageId\"/></body>");

        sb.append("</html>");

 

        // 启用html

        mimeMessageHelper.setText(sb.toString(), true);

 

        // 设置imageId

        FileSystemResource img = new FileSystemResource(new File("E:/1.jpg"));

        mimeMessageHelper.addInline("imageId", img);

 

        // 发送邮件

        mailSender.send(mimeMessage);

 

        System.out.println("邮件已发送");

    }

 

    /**

     * 发送包含附件的邮件

     * @throws Exception

     */

    @Test

    public void sendAttendedFileMail() throws Exception {

        MimeMessage mimeMessage = mailSender.createMimeMessage();

        // multipart模式

        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true"utf-8");

        mimeMessageHelper.setTo("miles02@163.com");

        mimeMessageHelper.setFrom("miles02@163.com");

        mimeMessageHelper.setSubject("Spring Boot Mail 邮件测试【附件】");

 

        StringBuilder sb = new StringBuilder();

        sb.append("<html><head></head>");

        sb.append("<body><h1>spring 邮件测试</h1><p>hello!this is spring mail test。</p></body>");

        sb.append("</html>");

 

        // 启用html

        mimeMessageHelper.setText(sb.toString(), true);

        // 设置附件

        FileSystemResource img = new FileSystemResource(new File("E:/1.jpg"));

        mimeMessageHelper.addAttachment("image.jpg", img);

 

        // 发送邮件

        mailSender.send(mimeMessage);

 

        System.out.println("邮件已发送");

    }

}

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值