今天开公司的代码时看到在配置文件里有如下内容:
<property name="mailTemplate">
<value><![CDATA[
<!doctype html public "-//w3c//dtd html 4.01 strict//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
.hmmessage p {
margin: 0px;
padding: 0px;
}
body.hmmessage {
font-size: 9pt;
font-family: tahoma;
}
</style>
</head>
<body class="hmmessage">
...
<img id="i-image" alt="#{loginUserName}" src="#{imgsrc}" /></td>
...
]]></value>
可以看到mailTemplate的value不是常规的bean或短字符串,而是由![CDATA[...]]括起来的一段很长的字符串。中间还有些占位符#{...}。使用方法如下:
String htmlbody = mailTemplate;
htmlbody = StringUtils.replace(htmlbody, "#{loginUserName}", luser.getFirstName().toString());
StringUtils是org.apache.commons.lang包下的。