- 浏览: 7341016 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
發送纯文本的郵件:
备注:velocity为classpath中存放模板的文件夹
velocity中存在的email模板text.vm
text.vm内容如下:
你好!${me} 这是模板生成的邮件。
重点代码如下:
package cn.com.unusap.unutrip.spring.email;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.exception.VelocityException;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.ui.velocity.VelocityEngineUtils;
/**
*
* @author longgangbai
*
*/
public class VelocityTemplateMailMessage {
protected static final Log log = LogFactory
.getLog(VelocityTemplateMailMessage.class);
private MailSender mailSender;
private SimpleMailMessage message;
private VelocityEngine velocityEngine;
public void setVelocityEngine(VelocityEngine velocityEngine) {
this.velocityEngine = velocityEngine;
}
public void setMailSender(MailSender mailSender) {
this.mailSender = mailSender;
}
public void setMessage(SimpleMailMessage message) {
this.message = message;
}
public void sendEmail(Map model) {
message.setTo("wuxc@unutrip.com");
message.setSubject("subject");
String result = null;
try {
result = VelocityEngineUtils.mergeTemplateIntoString(
velocityEngine, "/velocity/text.vm", model);
//model存储模板中使用的对象的
} catch (VelocityException e) {
e.printStackTrace();
}
message.setText(result);
mailSender.send(message);
}
}
applicationContext-velocity.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!-- For mail settings and future properties files -->
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:mail.properties</value>
</list>
</property>
</bean>
<bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">
<value>${mail.host}</value>
</property>
<property name="username">
<value>${mail.username}</value>
</property>
<property name="password">
<value>${mail.password}</value>
</property>
</bean>
<bean id="mailMessage"
class="org.springframework.mail.SimpleMailMessage">
<property name="from">
<value>${mail.from}</value>
</property>
</bean>
<!-- Configure Velocity for sending e-mail 制定發送郵件的模板的编码格式使用utf-8支持中文 -->
<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>
<prop key="input.encoding">UTF-8</prop>
<prop key="output.encoding">UTF-8</prop>
<prop key="default.contentType">
text/html; charset=UTF-8
</prop>
</props>
</property>
</bean>
<bean id="templateMail"
class="cn.com.unusap.unutrip.spring.email.VelocityTemplateMailMessage">
<property name="mailSender" ref="mailSender" />
<property name="message" ref="mailMessage" />
<property name="velocityEngine" ref="velocityEngine" />
</bean>
</beans>
测试代码:
ApplicationContext appctx = new ClassPathXmlApplicationContext(
"/applicationContext-velocity.xml");
RegistrationService vtmm = (RegistrationService) appctx
.getBean("registrationService");
Order order = new Order();
order.setContent("xiao bai");
order.setDate(new Date());
order.setEmail("wuxc@unutrip.com");
order.setOrderId("N0001");
order.setUsername("wu xiaochao ");
vtmm.register(order);
郵件配置:
classpath路径下mail.properties内容如下:
mail.from=longgangbai@xxxx.com
mail.host=mail.xxx.com
mail.password=xxxx
mail.smtp.auth=true
mail.smtp.timeout=25000
mail.username=xxxxx
发表评论
-
【转】在项目中使用多个数据源-多sessionFactory方案
2013-05-10 16:30 3131适用范围:适合SSH架构访问多个数据库, ... -
【转】使用spring的动态路由实现数据库负载均衡
2013-03-17 22:57 3310使用spring的动态路由实现数据库负载均衡 系统中 ... -
【转】spring 数据库读写分离
2013-03-17 22:56 2806什么是数据库的读写分离 数据库的读写分离简单的说是把对数据 ... -
[转]Spring+iBatis+JOTM实现JTA事务
2013-03-17 22:51 3061Spring+iBatis+JOTM实现JTA事务 ... -
Spring 和Axis2整合相关那些事
2012-12-29 12:58 10424Axis2优劣: 现在用axis2开发一个webse ... -
【转】JAVA并发容器代码随读
2012-12-06 15:29 2954转载自 http://rdc.taobao.c ... -
Spring3.04和Junit4
2011-11-27 18:15 4397在Spring3.x以上必须采用 ... -
Spring加载属性文件的扩展
2011-08-22 12:21 3027在项目中一个属性文件配置信息,提供给数据连接信息 ... -
Brap和Spring整合(简单权限验证)
2011-07-26 10:31 1391在使用Spring的发 ... -
Quartz的任务的临时启动和暂停和恢复
2011-07-16 10:18 40231在项目中需要手动启停某些服务,那么需要有一个控 ... -
Quartz中定时调度EJB3.0服务
2011-07-13 22:25 2939在quartz2.0中只支持EJb2.0的服务 ... -
Quartz中定时调度EJB2.0服务
2011-07-13 22:12 2182在Quartz2.0中提供支持EJB2.0 ... -
Quartz的简单使用
2011-07-13 22:05 9957最近工作需要学习quartz,那么必须首先了解三个概念:调度器 ... -
Brap 远程访问调用 和Spring整合(二)
2010-12-08 14:52 2007Brap和 Spring 整合使用如 ... -
闲着没事Hessian开发WebService的总结(二)
2010-12-07 20:30 4035在Spring和Hessian整合中,以前 ... -
Spring JMX的学习总结(三) 基于注释的JMX的使用
2010-12-03 17:26 3363具体实现JMX的注释的类: package c ... -
Spring JMX的总结学习(二) 注解实现MBean
2010-12-03 17:24 6285本文采用Spring JMX ... -
Spring JMX的总结学习(一)基于标准接口的JMX
2010-12-03 17:21 3782在Spring中采用JMX标准形式的,开发相关的Spr ... -
Spring JMS的开发应用--自定义消息转换器的使用(四)
2010-12-03 01:37 2513在Spring JMS、中可以通过实现Me ... -
Spring JBOSSMQ JMS的开发应用(三)
2010-11-30 20:11 2347如果用过JMS的话,会发现它类似写JD ...
相关推荐
本教程将围绕如何使用Spring框架与Velocity模板引擎来实现邮件发送功能进行详细讲解。 首先,让我们理解Spring框架的邮件发送服务。Spring提供了`JavaMailSender`接口,该接口提供了发送邮件的基本方法,如`send...
这一过程涉及到Spring框架的基本配置、Velocity模板引擎的使用以及JavaMail API的应用。 ### Spring框架与Velocity简介 #### Spring框架 Spring框架是一个轻量级的Java开发框架,它主要为简化企业级应用开发而设计...
5. **使用Velocity模板**:创建Velocity模板文件(如`templates/email.vm`),然后在服务类中使用VelocityContext填充数据,并通过VelocityEngine渲染模板。 ```java // EmailService.java public void sendEmail...
总结来说,Spring结合FreeMarker或Velocity模板引擎可以方便地实现动态生成邮件内容,提供了一种灵活的方式处理复杂格式的邮件。开发者可以根据项目需求和团队熟悉度选择适合的模板引擎。在实际开发中,还需要注意...
我们将涉及Spring的Java配置和Velocity模板引擎来创建动态邮件内容。 首先,我们需要引入必要的依赖。在Spring项目中,我们通常会添加`spring-context`和`spring-context-support`库,它们包含了处理邮件发送功能的...
** Velocity 概述** Velocity 是一个开源的 Java 模板引擎,它允许开发者将静态文本与动态内容分离,使得Web...在实际项目中,Velocity 还可以与其他框架如 Struts、Spring MVC 等集成,提供更强大的模板渲染能力。
在这个项目"springJavaEmail:Spring集成Velocity发送Email"中,我们将探讨如何利用Spring和Velocity模板引擎来创建和发送带有动态内容的电子邮件。 首先,让我们理解Spring的JavaMailSender接口。这个接口是Spring...
### 邮件模板 Velocity ...通过上述知识点的学习,您可以更好地理解 Velocity 模板引擎的工作原理及其在 Spring 框架下的集成应用。无论是对于邮件模板的开发还是其他类型模板的创建,Velocity 都能提供强大的支持。
Velocity模板语言(VTL)是一种简单的、非脚本式的语言,它的核心思想是“分离关注点”——设计人员负责页面外观,而开发者处理数据和逻辑。VTL通过引用Java对象的属性或方法来插入动态内容。 **Velocity与Objects*...
2. 将Velocity模板文件放在类路径(`classpath`)中。 3. 使用Spring提供的支持类,如`VelocityTemplateMessage`,结合数据模型创建邮件内容。 4. 将生成的内容传递给`MailSender`接口进行发送。 通过这种方式,开发...
理解并熟练使用Spring Boot的邮件服务功能,能够为你的应用增加更多价值。 以上就是Spring Boot结合Spring Mail邮件服务的学习demo项目所涉及的主要知识点。通过这个项目,开发者可以深入理解如何在实际应用中集成...
在实际应用中,Velocity通常与Spring MVC、Struts等Web框架结合使用,为Web应用程序提供视图层的解决方案。Velocity模版文件(通常以`.vm`为扩展名)会被解释并合并到HTML或其他输出格式中,生成最终的动态网页内容...
在Spring MVC中,模板引擎是一个重要的组成部分,常见的有FreeMarker、Thymeleaf和Velocity等。这些模板引擎允许我们将静态HTML模板与Java对象的数据结合起来,生成最终的HTML响应。例如,FreeMarker使用 `${}` 符号...
3. **Thymeleaf 或者 Velocity**:Spring Boot 可以与多种模板引擎集成,这里可能使用了 Thymeleaf 或 Velocity 来渲染登录页面。这些模板引擎允许我们在 HTML 中嵌入表达式,动态生成内容。 4. **Spring Security*...
六、 velocity模板引擎 Velocity是一个基于Java的模板引擎框架,提供了模板语言,可以使用在Java中定义的对象和变量上。它是邮件模板的主要应用场景。 七、 总结 SpringBoot配置Email发送功能实例提供了一个简单...
Spring为开发者提供了便捷的方式来发送电子邮件,包括简单的文本邮件、带有附件的邮件以及使用模板引擎如Velocity或Freemarker来定制邮件内容。 首先,确保你的项目包含了Spring的相关库以及Java Mail API的JAR包。...
Spring MVC 可以与各种模板引擎集成,如 Thymeleaf、Freemarker、Velocity 等,用于动态生成 HTML。 ```html <!-- userDetails.html (Thymeleaf) --> ${user.name}">User Name ${user.email}">User Email ``` ...
SpringBoot是Spring框架的一种简化和...在实际开发中,还可以结合Thymeleaf、Freemarker或Velocity等模板引擎来生成动态HTML页面,或者使用RESTful API设计,配合Swagger生成API文档,提高开发效率和应用的可维护性。
除了基础的邮箱验证,还可以扩展功能,如使用模板邮件支持多语言,或者添加短信验证作为备选方案,提高用户体验。 通过这个项目,你可以深入了解SSM框架在实际开发中的运用,以及如何实现邮箱验证这一实用功能,...