jsp+servlet实现的验证登陆
2024-09-06 02:00:21
可以将业务逻辑处理和视图相分离,使用jsp界面表示视图,使用servlet处理业务逻辑
login.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
String msg=(String)request.getAttribute("msg");
if(msg!=null){
out.print(msg);
}
%>
<form action="dologin" method="post">
username:<input type="text" name="username" /><br>
password:<input type="password" name="password" /><br>
<input type="submit" value="submit" />
</form>
</body>
</html>
success.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
登陆成功
<%
String username=request.getParameter("username");
out.print(username+"欢迎你");
%>
</body>
</html>
fail.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
登陆成功
<%
String username=request.getParameter("username");
out.print(username+"欢迎你");
%>
</body>
</html>
业务逻辑处理
com.zk.myservlet.dologin.java
public class dologin extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取表单数据
String username=request.getParameter("username");
String password=request.getParameter("password");
//处理业务逻辑
if("Tom".equals(username)&&"123".equals(password))
{
//分发转向
request.getSession().setAttribute("username", username);
request.getRequestDispatcher("/success.jsp").forward(request, response);
//response.sendRedirect(request.getContextPath()+"/success.jsp");//丢失 username参数值 ,一次请求
}
else
{
//分发转向
//request.getRequestDispatcher("/fail.jsp").forward(request,response);
//response.sendRedirect(request.getContextPath()+"/fail.jsp");
request.setAttribute("msg", "用户名密码不正确");
request.getRequestDispatcher("/login.jsp").forward(request,response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
} }
最新文章
- 【JS】FOR循环通关只循环一次length提高性能
- DirectX12 Samples 学习笔记 – PredicationQueries
- 使用SQLIO测试磁盘性能
- Criteria查询之sqlRestriction()的理解
- 打造高仿QQ的友盟反馈界面(MVP模式)
- WLAN历史概述-01
- Class.forName()数据库驱动
- apt-key adv
- TreeSet源码分析
- Map集合学习总结
- [JDK8]读写锁的改进:StampedLock
- MySQL InnoDB Online DDL学习
- Web Server和Application Server之间的区别?
- STOMP
- MaidSafe区块链项目白皮书解读
- HTTPS 接入优化建议
- PHP 反引号运行Shell命令,C程序
- Asp.net mvc 限制路由参数类型
- Oracle REGEXP
- sum (bestcoder)
热门文章
- php私有组件以及创建自己的composer私有组件(packagist+git+composer)
- 最近公共祖先 Lowest Common Ancestors
- Date/Math/String对象的函数
- Python基础教程-02
- rest_framework:url控制
- AI赋能抗疫!顶象入选“中关村第二批抗疫新技术新产品新服务清单”
- 一点点学习PS--实战二
- logging日志模块_python
- js获取自定义data属性
- Scale9Sprite 的 setCapInsets中需要注意的地方