上传文件时 form表单按顺序填写,否则找不到aciton方法

来源:互联网 发布:网络大电影收入计算 编辑:程序博客网 时间:2024/06/06 06:58

<form action="insertBatchBlack.action" enctype="multipart/form-data" method="post" id="sendform" name="sendform"  onsubmit="return submitForm();">


上传文件时 form表单按上面顺序填写,action要填写,否则找不到aciton  中  insertBatchBlack()方法

上传文件如下代码:

private File mobilefile;
private String mobilefileContentType;
private String mobilefileFileName;

public File getMobilefile() {
return mobilefile;
}


public void setMobilefile(File mobilefile) {
this.mobilefile = mobilefile;
}


public String getMobilefileContentType() {
return mobilefileContentType;
}


public void setMobilefileContentType(String mobilefileContentType) {
this.mobilefileContentType = mobilefileContentType;
}


public String getMobilefileFileName() {
return mobilefileFileName;
}


public void setMobilefileFileName(String mobilefileFileName) {
this.mobilefileFileName = mobilefileFileName;
}

/**批量添加
* @author SLF
* @return
*/
public String insertBatchBlack(){
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
if(adddemo!=null&&!"".equals(adddemo)){
try {
adddemo=URLDecoder.decode(adddemo,"utf-8");
  } catch (Exception e) {
  e.printStackTrace();
  }
}
System.out.println(adddemo+" "+uidstr);
//****************************************************************
if(!mobilefileContentType.equals("text/plain")){
request.setAttribute("ErrorMessage", "读取文件类型错误,请选择txt类型文件");
return "fail";
}
ArrayList<String> desmobilelist=this.readFileByLines(mobilefile);
if(desmobilelist==null){
request.setAttribute("ErrorMessage", "读取文件格式错误");
return "fail";
}
int count=desmobilelist.size();
if(count>10000){
count=10000;
}
int successcount=0;
int repeatcount=0;
int sucindex=0;
int exindex=0;
for (int i = 0; i < count; i++) {
String uidarr [] = uidstr.split(",");
for (int j = 0; j < uidarr.length; j++) {
int userid  = Integer.parseInt(uidarr[j]);
//System.out.println(desmobilelist.get(i)+"======================="+userid);
int exitsCount = authorityDao.getTdBlackTotal(0, 0, userid, null, null, desmobilelist.get(i));
if (exitsCount>0){
exindex++;
continue;
}else{
int addnum = authorityDao.insertBlack(desmobilelist.get(i),userid,adddemo);
if(addnum>0){
sucindex++;
}
}
}
if(sucindex>0){
successcount++;
}
if(exindex>0){
repeatcount++;
}
}
String batchretv = "总数:"+count+",成功个数:"+successcount+","+"重复个数:"+repeatcount+"。";
request.setAttribute("batchretv", batchretv);
//*****************************************************************
return "success";
}
/**
     * 以行为单位读取文件,常用于读面向行的格式化文件
     */
    public ArrayList<String> readFileByLines(File file) {
        BufferedReader reader = null;
        ArrayList<String> desmobilelist=new ArrayList<String>();
        try {
            System.out.println("以行为单位读取文件内容,一次读一整行:");
            reader = new BufferedReader(new FileReader(file));
            String tempString = null;
            int line = 1;
            // 一次读入一行,直到读入null为文件结束
            while ((tempString = reader.readLine()) != null) {
                // 显示行号
                System.out.println("line " + line + ": " + tempString);
                if(tempString.length()!=11){//文件内数据格式
                desmobilelist=null;
                break;
                }
                String str=tempString;
                desmobilelist.add(str);
                line++;
            }
            reader.close();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (IOException e1) {
                }
            }
        }
        return desmobilelist;
    }

原创粉丝点击