getParts()也获得文本输入

时间:2015-05-28 09:27:42

标签: java javascript servlets

我有拖放输入文件字段:

<div style="margin-bottom: 1em;">
    <div class="file-well">                
        <input type="file" name="file" id="file" multiple/>
        <span id="filewelllabel">Aby dodać CV kliknij tutaj lub przeciągnij i upuść plik w ten obszar.<br/></span>
        <span id="filewelllabel">Możesz dodać jeden plik (.pdf, .doc, .docx, .docm)</span>
    </div>
</div>

这是我的servlet上传句柄:

Collection<Part> fileParts = request.getParts();
String uploadPath= "\\upload\\";

String savedFileName;

for (Part part : fileParts) {
    fileName = getFileName(part);
    savedFileName= temp.getImie() + temp.getNazwisko() + fileName;
    part.write(uploadPath+ File.separator + savedFileName);
}

当我添加pdf文件时,这是控制台日志:

Info:   content-disposition header= form-data; name="imie"
Info:   content-disposition header= form-data; name="nazwisko"
Info:   content-disposition header= form-data; name="telefon"
Info:   content-disposition header= form-data; name="email"
Info:   content-disposition header= form-data; name="uczelnia"
Info:   content-disposition header= form-data; name="doswiadczenie"
Info:   content-disposition header= form-data; name="zainteresowania"
Info:   content-disposition header= form-data; name="czySlyszales"
Info:   content-disposition header= form-data; name="zrodlo"
Info:   content-disposition header= form-data; name="file"; filename="cv — kopia.pdf"
Info:   content-disposition header= form-data; name="file"; filename="cv.pdf"
Info:   content-disposition header= form-data; name="zgoda"

这是上传文件夹的结果 enter image description here

如何防止保存除pdf之外的其他文件? 它应该只采用文件输入部分吗?

2 个答案:

答案 0 :(得分:2)

否则你可以这样检查:

if (part.getName().equals("file")) {

现在只输入名称=&#34;文件&#34;通过支票。它会给你相同的结果,但我觉得它更好。

答案 1 :(得分:0)

 if (fileName != null && !fileName.isEmpty()){

if(part.getContentType() != null){
servlet文件中的

是解决方案。