码迷,mamicode.com
首页 > 其他好文 > 详细

登录功能的完善

时间:2020-08-10 23:16:16      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:表示   comm   java   iter   跳转   NPU   tst   art   response   

登录功能的完善
servlet


import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

public class UploadServlet extends HttpServlet {

//    上传文件 到 out 目录
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        try {
            String path = req.getServletContext().getRealPath("WEB-INF/upload"); // 获取到保存的路径
            File file = new File(path);
            if (!file.exists()){
                 file.mkdirs();  //如果不存在,则创建
            }  //file.mkdirs(); 可以创建子父目录
            boolean flag = ServletFileUpload.isMultipartContent(req);
            //如果 返回值是true 表示是文件的格式进行上传
            //如果返回值是false 表示不是文件的格式进行上传  返回错误
            if (flag){
                FileItemFactory factory = new DiskFileItemFactory(); //得到核心工厂对象
                ServletFileUpload sfu = new ServletFileUpload(factory);  //得到文件上传的核心对象
                List<FileItem> fileItemslist = sfu.parseRequest(req);  //得到form表单中 input 标签中的所有的条目
                Iterator<FileItem> iterator = fileItemslist.iterator();  //转换迭代器来进行遍历

                while (iterator.hasNext()){
                    FileItem fileItem = iterator.next();  //获取具体的条目 FileItem

                if(fileItem.isFormField())  //true 是普通的文本  false  是文件
                {
                    //是文本,则不处理
                }else {
                    String filename = fileItem.getName();  //获取到文件的名字
                    File newfile = new File(file,filename);  //构建一个新的文件对象
                    fileItem.write(newfile);  //写入的方法
                }
                }
            }else {
                System.out.println("不是文件上传");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

reg

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<p>注册小米账号</p>
<form action="servlet123" method="post"  enctype="multipart/form-data">  <!--跳转到/servlet123 带斜杆的页面-->

    <table style="width: 500px">

        <tr>
            <td>姓名:</td>
            <td><input type="text" name="uname"></td>
        </tr>
        <tr>
            <td>性别:</td>
            <td>男<input type="radio" name="usex" value="男"> 女<input type="radio" name="usex" value="女"></td>
        </tr>
        <tr>
            <td>所在地区:</td>
            <td><input type="text" name="uregion"></td>
        </tr>
        <tr>
        <tr>
        <td>密码:</td>
        <td><input type="password" name="upwd"></td>
    </tr><tr>
        <td>上传头像:</td>
        <td><input type="file" name="ufile"></td>
    </tr>
    </table>
    <input type="submit" value="立即注册">
    <p style="font-size: 12px">注册账号即表示您同意并愿意准守小米用户协议和隐私政策</p>
</form>
</body>
</html>

登录功能的完善

标签:表示   comm   java   iter   跳转   NPU   tst   art   response   

原文地址:https://www.cnblogs.com/ynzj123/p/13472859.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!