1,设定固定发件箱
指定一邮箱:以qq邮箱为例,去到qq邮箱官网
找到设置—>账户 —>开启服务:
POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)
开启这个服务,期间会获得一个激活码,要保存这个激活码,后面会用到。
2.在pom.xml文件中引入发送邮件所需要的jar包。
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.1</version>
</dependency>
引入后记得右击项目名–》maven-----》reimport真正将包导入项目
3,在spring配置文件中配置邮件发送需要的bean[用到激活码]
我的是applicationContext.xml
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.qq.com"/>//网易邮箱就是smtp.163.com,其他邮箱自行对比
<property name="username" value="固定的发件箱地址"/>//qq就是 “qq号@qq.com”
<property name="password" value="刚刚保存的激活码"/>
<property name="defaultEncoding" value="UTF-8"/>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.ssl.enable">true</prop>
</props>
</property>
</bean>
4,可以去编写controller文件了
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import javax.annotation.Resource;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import javax.servlet.http.HttpServletRequest;
@Controller
@RequestMapping("mail")
public class SendMailController {
@Resource
private JavaMailSender javaMailSender;//在spring中配置的邮件发送的bean
@RequestMapping(value="/send",method= RequestMethod.POST)
public String sendMail03(HttpServletRequest request) {
MimeMessage mMessage = javaMailSender.createMimeMessage();//创建邮件对象
MimeMessageHelper mMessageHelper;
String from = "固定的发件箱";
String sendto = request.getParameter("sendto");//这里利用request接受前台数据,接受的收件人地址
System.out.println(sendto);
String emailname = request.getParameter("emailname");//接受的邮件主题
String emailcontent = request.getParameter("emailcontent");//接受的邮件内容
try {
System.out.println(from);
mMessageHelper = new MimeMessageHelper(mMessage, true);
mMessageHelper.setFrom(from);//发件人邮箱
mMessageHelper.setTo(sendto);//收件人邮箱
mMessageHelper.setSubject(emailname);//邮件的主题
mMessageHelper.setText(emailcontent);//邮件的文本内容,true表示文本以html格式打开
javaMailSender.send(mMessage);//发送邮件
} catch (MessagingException e) {
e.printStackTrace();
return "senderror";
}
return "sendsuccess";
}
}
5,最后如何向后台传数据就很简单了,表单提交就好
如有帮助给个赞谢谢。