懒得整理了,直接复制我工程里的代码:
第一个读取文件的类可以直接复制,
不复制的话,在下面取值和赋值部分的代码new EmailProperRead(systemType).properties根据自己情况修改。
一、读取文件的类EmailProperRead(一个完整文件,可以直接复制使用):
-
package com.uniquedu.util;
-
-
import java.io.File;
-
import java.io.FileInputStream;
-
import java.util.Properties;
-
-
import javax.servlet.http.HttpServletRequest;
-
-
import org.springframework.web.context.request.RequestContextHolder;
-
import org.springframework.web.context.request.ServletRequestAttributes;
-
-
-
public class EmailProperRead {
-
public String iniPath = "/WEB-INF/systemConfig.Properties"; //文件路径
-
public Properties properties = new Properties();
-
@SuppressWarnings("deprecation")
-
public EmailProperRead() throws Exception{
-
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
-
-
iniPath = request.getRealPath("/")+iniPath;
-
-
File file = new File(iniPath);
-
if(!file.exists()){
-
file.createNewFile();
-
}
-
properties.load(new FileInputStream(iniPath));
-
}
-
-
}
二、取值:
-
Properties props = new Properties(); // 获取系统环境
-
//获取邮箱配置信息
-
final Properties properties = new EmailProperRead().properties;
-
//发送邮件时显示的发件人名称
-
String personalName = properties.getProperty("emailName");
-
// 发件人的邮箱用户名
-
final String usernames = properties.getProperty("emailAddress");
-
// 发件人的邮箱密码
-
final String passwords = properties.getProperty("emailPaswd");
-
// 邮箱服务器
-
String host = properties.getProperty("smtpAddress");
-
//邮件主题
-
String mail_subject = properties.getProperty("emailTheme");
三、赋值并保存文件:
-
Properties properties = new EmailProperRead().properties;
-
//发送邮件时显示的发件人名称
-
properties.setProperty("emailName", request.getParameter("emailName"));
-
//发件人的邮箱地址
-
properties.setProperty("emailAddress", request.getParameter("emailAddress"));
-
//发件人的邮箱密码
-
properties.setProperty("emailPaswd", request.getParameter("emailPaswd"));
-
//邮箱服务器
-
properties.setProperty("smtpAddress", request.getParameter("smtpAddress"));
-
//邮件主题
-
properties.setProperty("emailTheme", request.getParameter("emailTheme"));
-
properties.store(new FileOutputStream(new EmailProperRead(systemType).iniPath),"");