javaweb快速上手(二 登陆功能)
来源:互联网 发布:mac office激活账号 编辑:程序博客网 时间:2024/06/01 09:08
登陆功能
前面已经配置好环境变脸了,接下来实现一个简单的登陆功能
1. 运行机制
简单的讲,
1.用户访问jsp页面,在jsp页面输入信息
2.jsp将用户输入的信息传递给servlet
3.servlet控制页面跳转
是不是很简单?
2. 前段页面login.jsp
- 1.在web目录下新建一个名为login的jsp页面(右键web页—>新建—>jsp…)
同样的方法,在web目录下再创建一个success.jsp,faild.jsp
此时,你的项目应该是这样的。。。
2.编辑login.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%><!DOCTYPE html><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> </head> <body> <form action="doLogin"> 用户名: <br> <input name="us" type="text" /><br> 密码: <br> <input name="pw" type="password" /><br> <button type="submit">登陆</button> </form> </body></html>
我们发现以上代码中有这么两个地方
1. <form action="doLogin" method="post">
这里action的值是指表单提交的地址,也就是说这个表单会提交到名为doLogin的servlet中进行处理
method=”post”表示表单的提交方式为post,对于method属性,它一般有两个值,get和post,在这里先不说get和post的区别了,在写servlet时会感受到一点点这两种方式的区别
2. <input name="us" type="text" />
这里有一个name属性,我们知道servlet接收表单信息并进行处理,为了能区分不通过输入(比如这里就有两个输入,分别是用户名和密码),于是就添加了name这个属性,我们在servlet中可以用这种方式接收前台的数据:
String username=request.getParameter("us");String password=request.getParameter("ps");//us,ps分别是用户名,密码这两个输入框中输入的数据
3创建servlet(doLogin.java)
右键源包—->新建—–>servlet
在这里要填写servlet的相关信息
1.类名:doLogin
2.包:com.servlet
然后点下一步,选择将信息添加到部署描述符(web.xml),点击完成
(注意了,这一项一定要选,后面会讲到web.xml的意义)
在点击完成之后,你就创建了一个servlet,我们都知道,servlet其实就是一个java类,
你会发现你的源包目录下多了com.servlet包,在这个包下有一个doLogin.java,此时你的工程目录应该是这样的
4 编辑doLogin.java
首先,我们打开doLogin.java
我们会发现doLogin.java中只有三个函数,分别是
protected void processRequest(HttpServletRequest request, HttpServletResponse response){ }
protected void doGet(HttpServletRequest request, HttpServletResponse response)
protected void doPost(HttpServletRequest request, HttpServletResponse response)
还记得login.jsp中的表单吗?
我们时这样写的
<form action="doLogin" method="post">
- 我们选择的方式是post,所以我们可以编辑doPost函数(当然也可以编辑processRequest函数)
(doGet函数只能处理get请求,doPost函数只能处理post请求,而progressRequest函数可以同时处理get和post请求)
我们在doLogin.java中实现这么几个功能
1. 接收login.jsp中传递的数据(用户名,密码)
2. 判断用户名,密码是否正确
3. 页面跳转,用户名密码正确,跳转到success.jsp,错误则跳转到faild.jsp
在明确了以下几点之后,我们开始写代码
接下来编辑doPost函数
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); //设置编码,不加容易乱码 String username=request.getParameter("us"); //获取用户名 String password=request.getParameter("ps"); //获取密码 if(username==null|password==null){ response.sendRedirect("fail.jsp"); //页面跳转 return; } if(username.equals("1")&&password.equals("1")){ //注意,这里要用equals而不是用等于 response.sendRedirect("success.jsp"); } else{ response.sendRedirect("fail.jsp"); } processRequest(request, response); }
Ctrl+s保存一下
接下来就可以运行了,
右键login.jsp—>运行文件
任务完成
你可以去下载整个项目文件:
下载地址
- javaweb快速上手(二 登陆功能)
- javaweb快速上手(三 数据库连接)
- javaweb快速上手(一 开发环境配置)
- 利用javaweb实现登陆功能!
- Python快速上手(二)
- javaweb 登录功能(二)
- javaWeb注册,登陆,注销功能的实现
- 10分钟-JavaWeb入门-登陆功能实现
- DirectX9 3D 快速上手(二)
- Word公式编辑器快速上手指南(二)
- F# 20分钟快速上手(二)
- 快速上手RaphaelJS--RaphaelJS_Starter翻译(二)
- UnityShader快速上手指南(二)
- 【openCV入门之二】 快速上手
- swift 3.1 快速上手系列(二)
- 快速上手
- 手机终端软件测试手工功能测试快速上手
- 手机终端软件测试手工功能测试快速上手
- linux命令之su
- Java 面试准备系列1-构造函数,静态方法的执行顺序
- Jxl 中Cell获取到的excel数据保留精度问题
- oracle pl/sql定时器时间
- 排序算法09:排序算法总结
- javaweb快速上手(二 登陆功能)
- lintcode(512)解码方法
- SuperMap iObjects Java tar 包使用指南
- Android 技术重温系列 ( 6 )
- /dev/tty,/dev/console,/dev/vc/0的初始化
- 删除问题
- 源码解读Spring IOC原理
- css垂直居中
- PHP编译不成功