【Java开源代码栏目提醒】:本文主要为网学会员提供ComebackArchiveAction.java,希望对需要ComebackArchiveAction.java网友有所帮助,学习一下!
/**
恢复备份的文件表xml到数据库
*/
package com.stsc.archive.backup;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import java.util.Properties;
import com.stsc.util.STPoolDataSet;
import com.stsc.util.STResultSet;
import com.stsc.util.STSecurity;
//import com.stsc.archive.xml.*;
import com.stsc.archive.manage.*;
import org.apache.struts.util.MessageResources;
/*
The action for the creation of a book.
@author 3710167@qq.com
*/
public final class ComebackArchiveAction extends Action
{
public ActionForward perform(ActionMapping mapping,
ActionForm form, HttpServletRequest req,
HttpServletResponse res)
{
System.out.println("Start ComebackAction . . ." );
String filename = ((ComebackArchiveForm)form).getFilename();
// filename = "c:\\xmlbackup\\archive\\" + filename;
System.out.println(filename);
ActionErrors errors = new ActionErrors();
if(!Constants.hasPopedom(req, 1))
{
System.out.println("不能进入:你没有
系统管理员这个权限!");
errors.add("err", new ActionError("error.nopopedom"));
saveErrors(req, errors);
return (new ActionForward(mapping.getInput()));
}
try
{
ReadWritefArchiveXML read
xml = new ReadWritefArchiveXML();
fArchiveVector myvector = readxml.readXMLFile(filename);
if(myvector != null)
{
String logfile = Constants.LOGFILEPATHNAME_KEY;
logfile = CommonSql.getBackupPath() + logfile; //add 6.6
//------------日志信息-----------------------------------
LogBean log = new LogBean();
HttpSession session = req.getSession();
User userInfo = (User)(session.getAttribute(Constants.CURRENT_USER_KEY));
if(userInfo != null)
{
log.setUsername(userInfo.getEnterName());
System.out.println(userInfo.getEnterName());
}
log.setAction("文件表恢复");
//======================================================
// LogBeanVector logvector = new LogBeanVector();
String strLog = "恢复文件序号为: ";
for(int i=0; i<myvector.getLength(); i++)
{
myvector.get(i).saveToDb(); //恢复文件表
strLog += myvector.get(i).getSerialno() + ", ";
// log.setContent("恢复流水号为:" + myvector.get(i).getSerialno() + "的数据文件:" + filename + "到数据库");
// logvector.add(log); //日志
// System.out.println(log.getContent());
}
strLog += "的数据文件:" + filename + "到数据库";
log.setContent(strLog);
AppendLogXml logxml = new AppendLogXml(logfile, log); //写入日志
}
else
{
errors.add("readnull", new ActionError("error.ComebackArchiveAction.readnull"));
}
}
catch(Exception e)
{
System.out.println("ComebackArchiveAction error:cann't read file!");
errors.add("abnormity", new ActionError("error.ComebackArchiveAction.abnormity"));
}
System.out.println("End ComebackAction . . ." );
if (!errors.empty())
{
saveErrors(req, errors);
return (new ActionForward(mapping.getInput()));
}
else
{
return mapping.findForward("success");
}
}
}