- 浏览: 363291 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
hqman:
export LD_PRELOAD=/lib/libpam.s ...
OpenVPN 详细配置 -
wutao8818:
呵呵,标题挺好,内容没看
说话前你是话的主人,说话后你是话的仆人 -
wutao8818:
额,你需要的就是认准一件事。但说起来简单,对某些人来说这很难, ...
我很浮躁 -
damoqiongqiu:
可惜图片一个都没有了。
amf是什么东东 -
fzfx88:
貌似Apache + tomcate 可以解决
解决dwr跨域问题
项目中email处理总结一下:
1.封装邮件信息类:
java 代码
- /**
- * Class for sending e-mail messages based on Velocity templates or with
- * attachments.
- *
- * @author wangkai
- */
- public class MailEngine {
- private final Log logger = LogFactory.getLog(MailEngine.class);
- private MailSender mailSender;
- private VelocityEngine velocityEngine;
- public void setMailSender(MailSender mailSender) {
- this.mailSender = mailSender;
- }
- public void setVelocityEngine(VelocityEngine velocityEngine) {
- this.velocityEngine = velocityEngine;
- }
- /**
- * Send a simple message based on a Velocity template.
- *
- * @param msg
- * the message to populate
- * @param templateName
- * the Velocity template to use (relative to classpath)
- * @param model
- * a map containing key/value pairs
- */
- public void sendMessage(SimpleMailMessage msg, String templateName,
- Map model) {
- String result = null;
- try {
- MimeMessage message = ((JavaMailSenderImpl) mailSender)
- .createMimeMessage();
- result = VelocityEngineUtils.mergeTemplateIntoString(
- velocityEngine, templateName, "UTF-8", model);
- } catch (VelocityException e) {
- e.printStackTrace();
- logger.error(e.getMessage());
- }
- msg.setText(result);
- send(msg);
- }
- /**
- * Send a simple message with pre-populated values.
- *
- * @param msg
- * the message to send
- */
- public void send(SimpleMailMessage msg) {
- try {
- mailSender.send(msg);
- } catch (MailException ex) {
- // log it and go on
- logger.error(ex.getMessage());
- }
- }
- /**
- * Convenience method for sending messages with attachments.
- *
- * @param recipients
- * array of e-mail addresses
- * @param sender
- * e-mail address of sender
- * @param resource
- * attachment from classpath
- * @param bodyText
- * text in e-mail
- * @param subject
- * subject of e-mail
- * @param attachmentName
- * name for attachment
- * @throws MessagingException
- * thrown when can't communicate with SMTP server
- * @author Ben Gill
- */
- public void sendMessage(String[] recipients, String sender,
- ClassPathResource resource, String bodyText, String subject,
- String attachmentName) throws MessagingException {
- MimeMessage message = ((JavaMailSenderImpl) mailSender)
- .createMimeMessage();
- // use the true flag to indicate you need a multipart message
- MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8");
- helper.setTo(recipients);
- helper.setFrom(sender);
- helper.setText(bodyText);
- helper.setSubject(subject);
- helper.addAttachment(attachmentName, resource);
- ((JavaMailSenderImpl) mailSender).send(message);
- }
2.spring配置文件,xxxx-mail.xml:
xml 代码
- <!---->
- <!---->
- <!---->
- <bean id="mailEngine"
- class="com.linkmed.cas.service.email.MailEngine">
- <property name="mailSender" ref="mailSender" />
- <property name="velocityEngine" ref="velocityEngine" />
- <!---->bean>
- <bean id="mailSender"
- class="org.springframework.mail.javamail.JavaMailSenderImpl">
- <property name="host" value="${mail.host}" />
- <!---->
- <property name="username" value="${mail.username}"/>
- <property name="password" value="${mail.password}"/>
- <property name="javaMailProperties">
- <value>
- mail.smtp.auth=${mail.validator}
- <!---->value>
- <!---->property>
- <!---->bean>
- <!---->
- <bean id="velocityEngine"
- class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
- <property name="velocityProperties">
- <props>
- <prop key="resource.loader">class<!---->prop>
- <prop key="class.resource.loader.class">
- org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
- <!---->prop>
- <prop key="velocimacro.library"><!---->prop>
- <!---->props>
- <!---->property>
- <!---->bean>
- <bean id="mailMessage"
- class="org.springframework.mail.SimpleMailMessage"
- scope="prototype">
- <property name="from" value="${mail.default.from}" />
- <!---->bean>
3.发送者邮件信息,mail.properties(classpath位置):
xml 代码
- # This properties file is used to configure mail settings in
- # /resources/linkmed-application-service.xml
- mail.default.from=dxy.cn <anct125@163.com>
- mail.debug=false
- mail.transport.protocol=smtp
- mail.host=smtp.163.com
- mail.username=anct125
- mail.password=anct125
- mail.validator=true
4.模板文件,text.vm(classpath的velocity目录下):
你好!${me} 这是模板生成的邮件。
5.使用:
java 代码
- public class MailEngineTest extends BaseTestCase {
- private MailEngine mailEngine;
- private SimpleMailMessage mailMessage;
- public void onSetUp() {
- mailEngine = (MailEngine) ctx.getBean("mailEngine");
- mailMessage = (SimpleMailMessage) ctx.getBean("mailMessage");
- }
- public void testSendMail() {
- assertNotNull(mailEngine);
- assertNotNull(mailMessage);
- mailMessage.setTo("wangkai );
- mailMessage.setFrom("dxy );
- mailMessage.setSubject("mail.mail.mail.标题有的哈哈!");
- Map
- model.put("user", "wangkai");
- model.put("message", "test");
- mailEngine.sendMessage(mailMessage, "register.vm", model);
- }
发表评论
-
android sdk
2011-05-05 14:34 855Android SDK Quick Star ... -
xml java转换框架Castor记录
2010-06-10 09:12 1901由于项目需要和其他公司合作开发,所以需要XML来作为传输数据格 ... -
几个有趣的webinar 平台
2010-02-06 15:31 10321:网上干活 http://www.elance.com/ ... -
eclipse jetty debug设置
2009-12-02 14:41 2402Step 1 Go to the Run/Externa ... -
tokyo cabinet文档
2009-06-16 15:48 992http://tokyocabinet.sourceforge ... -
java 正则表达式转义字符
2009-05-08 17:00 4195点的转义:. ==> u002E ... -
httpclient 并行问题
2008-10-31 19:21 3633httpclient是个好东西,之前做过抓取网页,现在用来 ... -
hibernate 奇观
2008-09-02 16:53 988执行本地SQL语句返回结果奇特。 ... -
lucene 处理一对多关系
2008-07-25 09:55 1016项目开发中碰到这样一个问题 : 一个人有多种职业 教 ... -
jad 使用笔记
2008-04-19 14:27 1216wangkai@rserver:~/桌面/dbo$ ./jad ... -
maven2实践
2007-10-18 22:49 1572一直想学习一下ma ... -
hql解析过程
2007-08-13 10:05 86一、HQL代码的构建。 ( ... -
web性能测试 黄金组合 jprofiler+jmeter
2007-06-26 15:52 2643最近刚做完一个项目,总算可以修养一下了.没想到bug层出不穷。 ... -
JA-SIG CAS 资料
2007-04-30 15:22 4897CAS (Central Authentication Ser ... -
Velocity体验
2007-04-27 09:09 1508Velocity是一个基于java的 ... -
spring 定时功能学习
2007-04-26 10:42 4304由于项目需要学习了一下定时触发的功能。 Spring提供了支 ... -
java enum学习
2007-04-25 09:56 16041java5 后除了 class interfa ...
相关推荐
本项目示例基于spring boot 最新版本(2.1.9)实现,Spring Boot、Spring Cloud 学习示例,将持续更新…… 在基于Spring Boot、Spring Cloud 分布微服务开发过程中,根据实际项目环境,需要选择、集成符合项目...
首先,让我们来了解如何配置Spring邮件服务。在Spring的配置文件(如`applicationContext.xml`)中,我们需要定义一个`JavaMailSender` bean。这个bean通常会包含SMTP服务器的信息,如主机名、端口号、用户名和密码...
而Spring集成邮件服务则是一个常见的需求,特别是对于那些需要发送确认邮件、通知或者报告的应用来说。下面将详细阐述Spring如何与JavaMail API结合,实现邮件服务的集成。 首先,我们需要理解JavaMail API。...
总的来说,这个示例展示了一个基于Spring框架和JavaMail API的邮件发送系统,包括如何配置邮件服务器、创建邮件对象、处理附件以及异步发送邮件。这个系统可以轻松地集成到任何Spring应用程序中,提供灵活且可靠的...
关于压缩包中的文件"spring_扩展_邮件及定时任务_2",它很可能包含了示例代码或者配置文件,用于演示如何在Spring项目中实现邮件发送和定时任务。这些文件可能包括了Java源代码、XML配置文件或者YAML配置文件,你...
**Spring邮件发送** 在Java开发中,Spring框架提供了一种简单而强大的方式来发送电子邮件。Spring的`JavaMailSender`接口以及其实现类`SimpleMailMessage`和`MailMessage`,使得开发者能够轻松地集成邮件服务到应用...
在"spring各种邮件发送"这个主题中,我们将探讨Spring框架如何帮助开发者实现电子邮件的发送。邮件服务在许多应用场景中都十分常见,例如用户注册确认、密码重置提醒等。 首先,Spring框架提供了`JavaMailSender`...
Spring框架以其模块化和灵活性而著名,它包含了一个名为`JavaMailSender`的接口,专门用于处理电子邮件的发送。在这个场景中,我们将深入探讨如何使用Spring框架发送邮件,以及涉及到的相关知识点。 首先,我们需要...
在这个项目示例中,我们可以看到如何利用 Spring Boot 实现 QQ 登录、手机登录以及邮件服务,并且已经实现了前后端分离的设计模式。 1. **QQ 登录集成** 在 Spring Boot 中集成 QQ 登录通常会使用 OAuth2 协议。...
这个"activeMQ+spring+springmvc整合示例"旨在帮助开发者理解如何将这三者结合,以实现消息队列(Message Queue)的功能,提高系统的异步处理能力和负载均衡。以下是关于这一整合的详细知识讲解: 1. **ActiveMQ**:...
10. **Spring Batch**:Spring Batch则专注于批量处理任务,提供了强大的批处理功能,包括读取、处理和写入数据,以及错误处理和重试机制。 压缩包中的"Springin Action代码"文件很可能是书中示例代码的集合,通过...
总的来说,Spring邮件抽象层为开发者提供了一种方便、灵活的方式来发送电子邮件,无论是简单的文本邮件还是复杂的MIME邮件,都可以通过Spring的API轻松处理。通过适当地配置和使用,可以确保邮件服务的稳定性和可靠...
在Spring Boot框架中,整合JavaMailSender接口可以方便地实现邮件发送功能。...当然,实际应用中可能需要处理更复杂的邮件场景,例如发送HTML邮件、添加附件等,但这个基础示例为你提供了一个良好的起点。
这通常通过添加`spring-context-support`依赖来完成,该依赖包含了处理邮件发送所需的类。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.springframework <artifactId>spring-context-...
以下是对Spring邮件发送实例的详细讲解。 首先,我们需要在项目中引入Spring Mail的相关依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.springframework.boot ...
这个项目"struts spring 实现简单的邮件发送"旨在展示如何整合这两个框架来完成邮件发送的功能。 首先,Struts是Apache组织的一个开源项目,它提供了一种模型驱动的方式来构建动态Web应用程序。Struts框架通过控制...
在这个"springdata示例"中,我们将探讨如何使用 SpringData 来操作一个简单的 User 表。 1. **SpringData JPA**:在 Spring Data JPA 中,我们通常会创建一个对应的实体类(Entity)来映射数据库中的 User 表。实体...
以下是一个简单的示例,展示了如何在Spring中使用JavaMailSenderImpl发送邮件: ```java @Autowired private JavaMailSender emailSender; public void sendEmail() { SimpleMailMessage message = new ...