JSP中利用Properties读写配置文件
java 代码:package com.reason.test;
import java.io.File;
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.Properties;public class Test {
public static void writeProperties(String filePath, String parameterName,
String parameterValue) { Properties props = new Properties(); try { File f = new File(filePath);if (f.exists()) {
InputStream fis = new FileInputStream(filePath);
props.load(fis); fis.close();} else {
System.out.println(filePath); f.createNewFile(); }OutputStream fos = new FileOutputStream(filePath);
props.setProperty(parameterName, parameterValue);props.store(fos, "");
fos.close(); } catch (IOException e) { e.printStackTrace(); } }public static Properties readProperties(String filePath) {
Properties props = new Properties(); InputStream is; try { is = new FileInputStream(filePath); props.load(is); is.close(); return props; } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); return null; }}
public static void main(String[] args) {
Test t = new Test();
t.writeProperties("c:/1.properties", "name", "tom");}
}
JSP:index.jsp<%@ page language="java" import="java.util.*" pageEncoding="utf8"%>
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head> <base href="<%=basePath%>"><title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head><body>
<form action="writeProperties.jsp"> key : <input type="text" name="key" /> value : <input type="text" name="value" /> <input type="submit" value="提交" /> </form> </body></html>
jsp: 功能实现页面
<%@ page language="java" import="java.util.*" pageEncoding="utf8"%>
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";%><jsp:useBean id="test" type="com.reason.test.Test" scope="request" /><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"><title>My JSP 'writeProperties.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> <% String key = request.getParameter("key"); String value = request.getParameter("value"); String filepath = request.getSession().getServletContext() .getRealPath("/") + "properties1.properties"; test.writeProperties(filepath, key.trim(), value); Properties props = test.readProperties(filepath);Enumeration en = props.elements();
while (en.hasMoreElements()) { String tmpKey = (String) en.nextElement();String tmpvalue = (String) props.getProperty(tmpKey);
%> key : <%=tmpKey%> value: <%=tmpvalue%><br> <% } %> </head><body>
</body>
</html>