登录功能的完善
Posted ynzj123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了登录功能的完善相关的知识,希望对你有一定的参考价值。
登录功能的完善
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>
以上是关于登录功能的完善的主要内容,如果未能解决你的问题,请参考以下文章
Redis实战之Session实现短信登录以及Redis完善登录功能