Spring下使用JavaMail和MailServer实现发送邮件

本文介绍了如何在Spring环境下,通过JavaMail和MailServer搭建邮件服务器,创建邮箱账号,并利用Foxmail作为邮件客户端进行配置。详细讲解了从配置pom.xml依赖、编写发送邮件的代码、设置Spring配置文件到测试邮件发送的全过程,提供了代码参考链接。

1.搭建MailServer邮件服务器环境,下面已经创建了邮箱账号aaa@store.com和bbb@store.com

2.安装Foxmail邮件客户端:

3.写代码尝试从aaa向bbb发送邮件

(1).配置pom.xml的依赖

  <dependencies>
  	<dependency>
  		<groupId>javax.mail</groupId>
  		<artifactId>mail</artifactId>
  		<version>1.4</version>
  	</dependency>
  	<dependency>
  		<groupId>org.springframework</groupId>
  		<artifactId>spring-context-support</artifactId>
  		<version>4.2.4.RELEASE</version>
  	</dependency>
  	<dependency>
  		<groupId>junit</groupId>
  		<artifactId>junit</artifactId>
  		<version>4.9</version>
  	</dependency>
  </dependencies>

(2)编写发送邮件代码: 

public class TestSend {

	private JavaMailSender javaMailSender;
	public void setJavaMailSender(JavaMailSender javaMailSender){
		this.javaMailSender = javaMailSender;
	}
	
	public void sendMail() throws MessagingException{
		//创建邮件
		MimeMessage mimeMessage = javaMailSender.createMimeMessage();
		//邮件包装工具
		MimeMessageHelper helper = new MimeMessageHelper(mimeMessage);
		//发件人
		helper.setFrom("aaa@store.com");
        //接收人邮箱
		helper.setTo("bbb@store.com");
          //主题
		helper.setSubject("Mail Test");
        //邮件内容
		helper.setText("JHava Mail Box");
        //发送
		javaMailSender.send(mimeMessage);
	}
}

aaa@store .com是发送的邮箱,bbb@store.com是接收的邮箱

(3)spring配置文件:

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans 
		http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context 
		http://www.springframework.org/schema/context/spring-context.xsd
		http://www.springframework.org/schema/tx 
		http://www.springframework.org/schema/tx/spring-tx.xsd
		http://www.springframework.org/schema/aop 
		http://www.springframework.org/schema/aop/spring-aop.xsd
		">  
	
<bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<!-- 协议 -->
	<property name="protocol" value="smtp"/>
	<!-- 邮件服务器地址 -->
	<property name="host" value="localhost" ></property>
	<!-- 端口 -->
	<property name="port" value="25"></property>
	<!-- 邮箱用户名,与发件人一致 -->
	<property name="username" value="aaa@store.com"></property>
	<!-- 邮箱密码 -->
	<property name="password" value="aaa"></property>
	<property name="javaMailProperties">
		<props>
			<!-- 开启认证,会检查发件人是否为邮箱用户 -->
			<prop key="mail.smtp.auth">true</prop>
			<!-- 采用ssl安全方式 -->
			<prop key="mail.smtp.ssl.enable">true</prop>
			
		</props>
	</property>
</bean>

<bean id="testSend" class="com.cl.demo.TestSend">
	<property name="javaMailSender" ref="javaMailSender"></property>
</bean>
</beans>

邮件服务器地址:由于邮件服务器在本地,所以填localhost
    <property name="host" value="localhost" ></property> 

不确定的话可以通过如下查看:选中一个邮箱用户如,点击下图foxmail红色部分

查看如下信息

(4)测试代码:

public class TestJavaMail {

	@Test
	public void testMail() throws MessagingException{
		ApplicationContext c=new ClassPathXmlApplicationContext("classpath:applicationContext_mail.xml");
		TestSend send = (TestSend) c.getBean("testSend");
		send.sendMail();
	}
	
}

4至此,邮件发送完毕。

(5)代码参考:https://github.com/chenlinli/JavaMailDemo.git

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值