EditPropertiesOperation.jsp
2.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ include file="/templetecheck/filecheck/CheckUserIsSysadmin.jsp" %>
<%@ page import="weaver.templetecheck.*" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.GCONST"%>
<%@ page import="java.util.ArrayList" %>
<%@ page import="weaver.security.file.FileType" %>
<%
String attrname = Util.null2String(request.getParameter("attrname"));//属性名
String attrvalue = Util.null2String(request.getParameter("attrvalue"));//属性值
String attrinfo = Util.null2String(request.getParameter("attrinfo"));//注释
String operate = Util.null2String(request.getParameter("operate"));//0 --新增 1--编辑 2--删除
String filepath = Util.null2String(request.getParameter("filepath"));
FileUtil fileUtil = new FileUtil();
ArrayList<String> types = new ArrayList<String>();
types.add(".properties");
if(!FileType.validateFileExt(filepath,types)) {
out.print("{\"status\":\"no\"}");
return;
}
//判断是否来自于配置文件信息维护 检测配置
String from = Util.null2String(request.getParameter("from"));
ConfigBakUtil fileBakUtil = new ConfigBakUtil();
PropertiesFileOperation proFileOpera = new PropertiesFileOperation();
if("checkconfig".equals(from)) {
String detailid = Util.null2String(request.getParameter("detailid"));
String resultData = proFileOpera.updatePropConfig(detailid,operate);
out.print(resultData);
return;
}else{
PropertiesUtil prop = new PropertiesUtil();
prop.load(filepath);
if(attrinfo!=null){
if(attrinfo.startsWith("#")) {
} else {
attrinfo = "".equals(attrinfo) ? "":"#"+attrinfo;
}
}
String attrinfo_temp = attrinfo.equals("")?"":(attrinfo);
if ("0".equals(operate)) {//新增
prop.put(attrname, attrvalue, attrinfo_temp);
} else if ("1".equals(operate)) {//编辑
prop.put(attrname, attrvalue, attrinfo_temp);
} else {
String[] namearr = attrname.split(",");
for (int i = 0; i < namearr.length; i++) {
prop.remove(namearr[i]);
}
}
//保存
boolean status = prop.store(filepath);
if (status) {
out.print("{\"status\":\"ok\"}");
} else {
out.print("{\"status\":\"error\"}");
}
}
%>