Содержание
Вы можете прочитать несколько статей о Crunchify в Spring MVC, таких как Введение в Spring MVC Framework, Hello World Spring MVC, Загрузка нескольких файлов с помощью Spring MVC и т. Д.
В этом уроке мы рассмотрим, как использовать org.springframework.mail.javamail.JavaMailSenderImpl библиотека для отправки электронной почты с использованием Spring MVC 5.1.3.RELEASE.
Давайте начнем:
Вот окончательная структура проекта. Убедитесь, что создали файл соответственно.
Шаг 1
Создать простой Maven Project CrunchifySpringMVC4SendEmailTutorial ,
- Установите флажок для «
Create a simple project (skip archetype selection)Опция - Предоставьте всю информацию, аналогичную приведенной ниже диаграмме, т.е. идентификатор группы, идентификатор артефакта, имя и описание, которые мы будем использовать в следующих шагах.
Шаг 2
открыто pom.xml файл и добавить 3 зависимости.
- весна -контекст
- весна-контекст-поддержка
- javax.mail
Вот мой полный pom.xml файл.
|
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
|
< project xmlns = http://maven.apache.org/POM/4.0.0 xmlns : xsi = http://www.w3.org/2001/XMLSchema-instance
xsi : schemaLocation = http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd >
< modelVersion > 4.0.0 < / modelVersion >
< groupId > CrunchifySpringMVC4SendEmailTutorial < / groupId >
< artifactId > CrunchifySpringMVC4SendEmailTutorial < / artifactId >
< версия > 0.0.1 — SNAPSHOT < / версия >
< name > CrunchifySpringMVC4SendEmailTutorial < / name >
<Описание> Лучший способ отправить электронное письмо с помощью Spring MVC 4.1.6 — Crunchify Tips < / description >
< зависимости >
< зависимость >
< groupId > org . Springframework < / groupId >
< artifactId > spring — context < / artifactId >
< версия > 5.1.3.RELEASE < / версия >
< / зависимость >
< зависимость >
< groupId > org . Springframework < / groupId >
< artifactId > spring — context — support < / artifactId >
< версия > 5.1.3.RELEASE < / версия >
< / зависимость >
< зависимость >
< groupId > javax . mail < / groupId >
< artifactId > mail < / artifactId >
< версия > 1.4.7 < / версия >
< / зависимость >
< / зависимости >
< / project >
|
Шаг 3
Создать файл Spring Bean crunchify-bean.xml под src/main/resources папка.
Spring beans настраиваются с использованием традиционного подхода XML. В Spring MVC Framework bean это объект, который instantiated , assembled и иначе managed контейнером Spring IoC (инверсия управления) .
|
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
|
xml version = 1.0 encoding = UTF-8 ?>
< beans xmlns = http://www.springframework.org/schema/beans
xmlns : util = http://www.springframework.org/schema/util xmlns : xsi = http://www.w3.org/2001/XMLSchema-instance
xmlns : context = http://www.springframework.org/schema/context
xsi : schemaLocation =
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd >
< ! — этот является ваш пакет структура, в которой вы создаете файл CrunchifyEmailAPI . Джава
а также CrunchifyEmailTest . Джава — >
< context : component — scan base — package = crunchify.com.tutorials / >
< ! — Реализация Производство интерфейса JavaMailSender, поддержки
и JavaMail MimeMessages и Spring SimpleMailMessages — >
< bean id = mailSender class = org.springframework.mail.javamail.JavaMailSenderImpl >
< собственность name = host value = smtp.gmail.com / >
< собственность имя = порт значение = 587 / >
< собственность имя = имя пользователя value = / >
< собственность имя = пароль value = / >
< ! — Название объекта недвижимости, следующие соглашения об именах JavaBean — >
< собственность name = javaMailProperties >
< реквизит >
< prop key = mail.transport.protocol > smtp < / prop >
< prop key = mail.smtp.auth > true < / prop >
< prop key = mail.smtp.starttls.enable > true < / prop >
< prop key = mail.debug > true < / prop >
< / props >
< / property >
< / bean >
< / beans >
|
Пожалуйста, убедитесь, что вы обновляете username а также password значения полей с вашими реальными / фактическими значениями.
Шаг 4
Создать класс API CrunchifyEmailAPI.java аннотация с @Service (org.springframework.stereotype.Service) под src/main/java папка.
|
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
|
пакет crunchify. ком . учебные пособия ;
Импортировать орг. пружинная рама . бобы. завод. аннотация . Автопроводка ;
Импортировать орг. пружинная рама . почта. MailSender ;
Импортировать орг. пружинная рама . почта. SimpleMailMessage ;
Импортировать орг. пружинная рама . стереотип . Обслуживание ;
/ **
* @author Crunchify.com
*
* /
@Service ( crunchifyEmail )
общественности учебный класс CrunchifyEmailAPI {
@Autowired
частный MailSender crunchifymail ; // Интерфейс MailSender определяет стратегию
// для отправки простых писем
общественности недействительным crunchifyReadyToSendEmail ( String toAddress , строка fromAddress , строка предмет , строка msgBody ) {
SimpleMailMessage crunchifyMsg знак равно новый SimpleMailMessage ( ) ;
crunchifyMsg . setFrom ( fromAddress ) ;
crunchifyMsg . setTo ( toAddress ) ;
crunchifyMsg . setSubject ( subject ) ;
crunchifyMsg . setText ( msgBody ) ;
crunchifymail . отправить ( crunchifyMsg ) ;
}
}
|
Шаг 5
Создать тестовый класс CrunchifyEmailTest.java под src/main/java папка.
|
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
|
пакет crunchify. ком . учебные пособия ;
Импортировать орг. пружинная рама . контекст . ConfigurableApplicationContext ;
Импортировать орг. пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext ;
/ **
* @author Crunchify.com
*
* /
общественности учебный класс CrunchifyEmailTest {
@SuppressWarnings ( ресурс )
общественности статический недействительным главная ( Строка args [ ] ) {
// файл Spring Bean, указанный вами в папке / src / main / resources
строка crunchifyConfFile знак равно crunchify-bean.xml ;
Контекст ConfigurableApplicationContext знак равно новый ClassPathXmlApplicationContext ( crunchifyConfFile ) ;
// @Service (crunchifyEmail) <- та же самая аннотация, которую вы указали в CrunchifyEmailAPI.java
CrunchifyEmailAPI CrunchifyEmailAPI знак равно ( CrunchifyEmailAPI ) контекст . getBean ( crunchifyEmail ) ;
строка toAddr знак равно test@crunchify.com ;
строка fromAddr знак равно test@crunchify.com ;
// Тема письма
строка предмет знак равно Привет. Это письмо отправлено Crunchify Spring MVC Tutorial ;
// тело письма
строка тело знак равно «Вот, пожалуйста. У вас есть электронное письмо. Давайте разберемся, как работает Spring MVC — от Crunchify Admin» ;
crunchifyEmailAPI . crunchifyReadyToSendEmail ( toAddr , fromAddr , предмет , тело ) ;
}
}
|
Пожалуйста, убедитесь, что вы обновляете toAddr а также fromAddr выше.
Шаг 6
Сейчас let's run ваш CrunchifyEmailTest.java и оформить заказ console результат. Также не забыл checkout your Gmail ,
Из моей учетной записи Gmail:
Консольный вывод:
|
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
|
июнь 22 , 2015 8 : 38 : 05 PM орг . пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext prepareRefresh
ИНФОРМАЦИЯ : Освежающий орг . пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext @ 5010be6 : дата запуска [ Понедельник июнь 22 20 : 38 : 05 CDT 2015 ] ; корень контекста иерархии
июнь 22 , 2015 8 : 38 : 06 PM орг . пружинная рама . бобы. завод. XML. XmlBeanDefinitionReader loadBeanDefinitions
ИНФОРМАЦИЯ : Загрузка определений XML- бинов из класса ресурс пути [ Хруст — боб . xml ]
ОТЛАДКА : JavaMail версия 1.4.7
ОТЛАДКА : успешно загруженный ресурс : / META — INF / javamail . по умолчанию . провайдеры
ОТЛАДКА : Таблицы загруженных поставщиков
ОТЛАДКА : успешно загруженный ресурс : / META — INF / javamail . по умолчанию . адрес. карта
ОТЛАДКА : getProvider ( ) возвращение javax . почта. Провайдер [ ТРАНСПОРТ , SMTP , ком . солнце. почта. SMTP. SMTPTransport , Oracle ]
Отладка SMTP : useEhlo true , useAuth true
Отладка SMTP : пытаясь подключиться к хозяин smtp.gmail.com , порт 587 , isSSL ложь
220 тх. Google. com ESMTP gc7sm11710775obb . 26 — gsmtp
Отладка SMTP : подключен к хозяин smtp.gmail.com , порт : 587
EHLO 192.168.0.3
250 — мкс . Google. ком к вашим услугам , [ 25.15.21.112 ]
250 — РАЗМЕР 35882577
250 — 8 бит
250 — STARTTLS
250 — УЛУЧШЕННЫЕ СТАТУСКОДЫ
250 — ТРУБОПРОВОД
250 — куски
250 SMTPUTF8
Отладка SMTP : Найдено расширение РАЗМЕР , Arg 35882577
Отладка SMTP : Найдено расширение 8BITMIME , Arg «»
Отладка SMTP : Найдено расширение STARTTLS , Arg «»
Отладка SMTP : Найдено расширение ENHANCEDSTATUSCODES , Arg «»
Отладка SMTP : Найдено расширение ТРУБОПРОВОД , Arg «»
Отладка SMTP : Найдено расширение ЧАНКИНГ , Arg «»
Отладка SMTP : Найдено расширение SMTPUTF8 , Arg «»
STARTTLS
220 2.0.0 Готов к запустить TLS
EHLO 192.161.0.22
250 — мкс . Google. ком к вашим услугам , [ 25.15.21.112 ]
250 — РАЗМЕР 35882577
250 — 8 бит
250 — AUTH LOGIN PLAIN XOAUTH2 PLAIN — КЛИЕНТТОКЕН XOAUTH
250 — УЛУЧШЕННЫЕ СТАТУСКОДЫ
250 — ТРУБОПРОВОД
250 — куски
250 SMTPUTF8
Отладка SMTP : Найдено расширение РАЗМЕР , Arg 35882577
Отладка SMTP : Найдено расширение 8BITMIME , Arg «»
Отладка SMTP : Найдено расширение AUTH , Arg ВОЙТИ PLAIN XOAUTH2 PLAIN-CLIENTTOKEN XOAUTH
Отладка SMTP : Найдено расширение ENHANCEDSTATUSCODES , Arg «»
Отладка SMTP : Найдено расширение ТРУБОПРОВОД , Arg «»
Отладка SMTP : Найдено расширение ЧАНКИНГ , Arg «»
Отладка SMTP : Найдено расширение SMTPUTF8 , Arg «»
Отладка SMTP : Попытка аутентификация с использованием механизмов : LOGIN PLAIN DIGEST — MD5 NTLM
Отладка SMTP : Трассировка команды AUTH LOGIN подавлена
Отладка SMTP : AUTH LOGIN успешно выполнен
Отладка SMTP : use8bit false
ПОЧТА ОТ : < test @ crunchify . com >
250 2.1.0 OK gc7sm11710775obb . 26 — gsmtp
RCPT TO : < test @ crunchify . com >
250 2.1.5 OK gc7sm11710775obb . 26 — gsmtp
Отладка SMTP : Проверенные адреса
Отладка SMTP : test @ crunchify . ком
ДАННЫЕ
354 Идите вперед gc7sm11710775obb. 26 — gsmtp
Дата : Пн , 22 июнь 2015 20 : 38 : 08 — 0500 ( CDT )
От : test @ crunchify . ком
Кому : test @ crunchify . ком
Сообщение — ID : < 428566321.0.1435023488148.JavaMail.app @ LM — AUN — 11000370 >
Тема : Эй. , это электронная почта , отправленная с помощью Spring MVC Учебник Crunchify «s
MIME-версия: 1.0
Тип контента: текстовый / простой; Charset = US-ASCII
Content-Transfer-Encoding: 7 бит
Там вы идете .. Вы получили письмо .. Let»s разобраться в деталях о том , как работает Spring MVC — По Crunchify Admin
,
250 2.0.0 Хорошо 1435023491 gc7sm11710775obb . 26 — gsmtp
УВОЛИТЬСЯ
221 2.0.0 закрытие соединения gc7sm11710775обб . 26 — gsmtp
|
0.00 (0%) 0 votes










