用spring简单实现发送邮件

刚做完一个电影网站,网站新注册用户时需要发送email进行确认。但是这个功能不是由我来负责的。在下对此功能颇有好奇之心于是自己就搭建了一个小的spring项目来进行实践。

声明代码里有些内容并非是我一个人完成的。

首先在applicationContext.xml文件中配置bean

Java代码

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.sina.com">
</property>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.timeout">25000</prop>
</props>
</property>
<property name="username" value="dufangxu"/>
<property name="password" value="你的邮箱密码"/>
</bean>

实现发送邮件java类代码:

Java代码

private Configuration cfg = new Configuration();

public static void main(String[] args) throws Exception {
ApplicationContext ctx = new FileSystemXmlApplicationContext(
"src/applicationContext.xml");
JavaMailSender sender = (JavaMailSender) ctx.getBean("mailSender");
SpringMail springMail = new SpringMail();
springMail.sendMail(sender);

}

private void sendMail(JavaMailSender sender) throws Exception {
SimpleMailMessage mail = new SimpleMailMessage();
mail.setTo("sucre.xu@gmail.com"); //接收人
mail.setFrom("dufangxu@sina.com"); //发送人
mail.setSubject("test by amigo");
//嵌入ftl模版
cfg.setClassForTemplateLoading(getClass(), "/mail");
Map root = new HashMap();
root.put("username", "sucre"); //模板变量 
Template t = cfg.getTemplate("notify-mail.ftl");
StringWriter writer = new StringWriter();
t.process(root, writer);
//把模版内容写入邮件中
mail.setText(writer.toString());
sender.send(mail);
System.out.println("邮件发送成功!");
}

时间: 2024-11-08 22:15:58

用spring简单实现发送邮件的相关文章

关于使用spring的JavaMailSenderImpl发送邮件的问题,遇到一个问题,在线等待,望解答~~~

问题描述 使用的spring的JavaMailSenderImpl发送邮件,本地测试是可以收到邮件的,但是放到服务器上之后,就不好使,收不到邮件,请问这可能是哪方面的问题?在线等待,求解 解决方案 解决方案二:~~~~有没有知道的呢~~~~~~~~解决方案三:求顶~~~~~~~~~解决方案四:继续等待............求版主顶下

简单Java 发送邮件实例代码

  这里用apache的commons-email(http://commons.apache.org/proper/commons-email/download_email.cgi)和java mail()发送邮件. 我的需求仅仅是在系统异常时发个报警邮件,所以,不涉及到附件之类的东西,代码很简单:    代码如下 复制代码 public static void sendMail(String receiverAddress,String subject,String message)  {

通过spring实现javamail发送邮件功能

以前很早的时候大家都用javamail实现发送邮件的功能,而且我们也一直沿用至今,代码拷过来用用就行了,现在我们改为用spring来实现,这样一来减少代码的复杂度,也能更好的契合spring理念 首先spring的相关jar包都是要引入的,其次要引入mail.jar <!-- https://mvnrepository.com/artifact/com.sun.mail/javax.mail --> <dependency> <groupId>com.sun.mail&

一个比Spring简单的IoC容器

Spring 虽然比起EJB轻量了许多,但是因为它需要兼容许多不同的类库,导致现在Spring还是相当的庞大的,动不动就上40MB的jar包, 而且想要理解Spring的内部运行机制,阅读它的代码非常重要, 但是往往它的代码非常的"多". 现在根据Spring对Bean的生命周期的处理, 编写出一款非常小的IoC容器, 没有了对XML的解析,而是通过对Config对象的构造而完成IoC配置文件的声明, 相比较XML的方式, 对重构软件非常具有好处, 并且这个IoC大部分的实现是依据Sp

【spring框架】Spring简单类型注入

首先看这个类: package cn.edu.hpu.dao.Impl; import cn.edu.hpu.dao.UserDao; import cn.edu.hpu.model.User; public class UserDaoImpl implements UserDao{ private int daoId; private String daoStatus; public int getDaoId() { return daoId; } public void setDaoId(i

使用Python简单的发送邮件

#来源忘了,就不贴链接地址了 #简单的python smtp发邮件代码 import smtplib from email.mime.text import MIMEText mailto_list=["123456789@qq.com","987654321@qq.com"] mail_host="smtp.qq.com" mail_user="123456789@qq.com" mail_pass="******

超级简单的发送邮件程序

最近做一个新闻系统,为了模仿各大网站的在线发信功能就写了这个小程序,希望对各位菜鸟兄弟有用.     我没有给出一部分代码,只给出关键部分.其中shouxin代表收信人地址,shouren代表收信人姓名,jixin代表发信人地址,faren代表发信人姓名.id是前边传过来的参数,对你来说根本没什么用的. <? if($shouxin=="") { echo "没有收件人的地址,无法寄出"; }else{ $to=explode(',',$shouxin); $

超级简单的发送邮件程序_php基础

最近做一个新闻系统,为了模仿各大网站的在线发信功能就写了这个小程序,希望对各位菜鸟兄弟有用.     我没有给出一部分代码,只给出关键部分.其中shouxin代表收信人地址,shouren代表收信人姓名,jixin代表发信人地址,faren代表发信人姓名.id是前边传过来的参数,对你来说根本没什么用的. <? if($shouxin=="") { echo "没有收件人的地址,无法寄出"; }else{ $to=explode(',',$shouxin); $

Spring 2.5标注开发的简单例子

研究了很久新出的 Spring 2.5, 总算大致明白了如何用标注定义 Bean, 但是如何定义和注入类型为 java.lang.String 的 bean 仍然未解决, 希望得到高人帮助. 总的来看 Java EE 5 的标注开发方式开来是得到了大家的认可了. @Service 相当于定义 bean, 自动根据 bean 的类名生成一个首字母小写的 bean @Autowired 则是自动注入依赖的类, 它会在类路径中找成员对应的类/接口的实现类, 如果找到多个, 需要用 @Qualifier