Servlet登陆功能的实现
(1)创建动态的Login页面
//登陆界面
package com.lc; import javax.servlet.http.*; import java.io.*; public class Login extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res){ //业务逻辑
try{
//解决中文乱码
res.setContentType("text/html;charset=gbk"); PrintWriter pw = res.getWriter();
//返回登陆界面
pw.println("<html>");
pw.println("<body>"); pw.println("<h1>用户登录</h1>");
pw.println("<form action=logincl method=post>"); //action的是servlet的url
pw.println("用户名:<input type=text name=username><br/>");
pw.println("密码:<input type=password name=passwd><br/>");
pw.println("<input type=submit value=loing><br/>");
pw.println("</form>"); pw.println("</body>");
pw.println("</html>"); }
catch(Exception ex){
ex.printStackTrace();
}
} public void doPost(HttpServletRequest req,HttpServletResponse res){
this.doGet(req,res);
}
}
(2)创建接受Login的servlet
//登陆界面
package com.lc; import javax.servlet.http.*; import java.io.*; public class Logincl extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res){ //业务逻辑
try{
//解决中文乱码 //接受用户名和password
String u = req.getParameter("username");
String p = req.getParameter("passwd");
//验证
if(u.equals("lc") && p.equals("123"))
{
//合法的情况 跳转到Welcome
res.sendRedirect("welcome");//这里跳转的仍是servlet的url
}
else
{
//不合法的情况
//跳转
res.sendRedirect("login");//跳转的是要到servlet的url
} }
catch(Exception ex){
ex.printStackTrace();
}
} public void doPost(HttpServletRequest req,HttpServletResponse res){
this.doGet(req,res);
}
}
(3)登陆成功要跳转的welcome页面
//登陆界面
package com.tsinghua; import javax.servlet.http.*; import java.io.*; public class Welcome extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res){ //业务逻辑
try{
//解决中文乱码
res.setContentType("text/html;charset=gbk"); PrintWriter pw = res.getWriter(); pw.println("hello welcome!"); }
catch(Exception ex){
ex.printStackTrace();
}
} public void doPost(HttpServletRequest req,HttpServletResponse res){
this.doGet(req,res);
}
}
(4)配置文件web.xml的编写
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true"> <display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description> <!--JSP servlet mappings starts--> <servlet>
<servlet-name>Login</servlet-name>
<servlet-class>com.lc.Login</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping> <servlet>
<servlet-name>Logincl</servlet-name>
<servlet-class>com.<span style="font-family:Arial, Helvetica, sans-serif;">lc</span>.Logincl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Logincl</servlet-name>
<url-pattern>/logincl</url-pattern>
</servlet-mapping> <servlet>
<servlet-name>Welcome</servlet-name>
<servlet-class>com.lc.Welcome</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Welcome</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping> <!--JSP servlet mappings end-->
</web-app>
(5)执行结果:
Servlet登陆功能的实现的更多相关文章
- servlet 3.0无需配置web.xml,使用注入方式配置servlet实现登陆功能(服务器需要支持servlet3.0)
首先申明上面的报错红叉,我也不知道怎么回事.总之能运行. 新建项目时选择java EE6.0,低版本没有servlet3.0. 先看一个基本示例. Test.java是用来测试无需配置文件,无需静态页 ...
- 使用Struts框架,实现用户登陆功能
前言:本篇文章是本人这周学习的一个小结,在自我总结的同时,希望也能够给其他同学带来一点帮助.本文主要知识是参照书本上的知识点以及网上其他博客文章,在上机操练后的所得,具体源码主要来自http://bl ...
- 从零开始编写自己的C#框架(15)——Web层后端登陆功能
对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证.用户在线记录.相关日志记录.单用户或多用户使用帐号控制等,都是在这个页面进行处理的. 1.在解决方案中创建一个Web项目,并将它设置 ...
- ASP.net(C#)利用SQL Server实现注册和登陆功能
说说我现在吧,楼主现在从事的事IT行业,主攻DotNet技术:当然这次上博客园我也是有备而来,所有再次奉献鄙人拙作,以飨诸位,望诸位不吝赐教. 世界上大多数的工作都是熟练性的工种,编程也不例外,做久了 ...
- JAVAEE——struts2_04:自定义拦截器、struts2标签、登陆功能和校验登陆拦截器的实现
一.自定义拦截器 1.架构 2.拦截器创建 //拦截器:第一种创建方式 //拦截器生命周期:随项目的启动而创建,随项目关闭而销毁 public class MyInterceptor implemen ...
- python作业(二)实现注册功能和登陆功能
#1.实现注册功能 输入:username.passowrd,cpassowrd #最多可以输错3次 #3个都不能为空 #用户名长度最少6位, 最长20位,用户名不能重复 #密码长度最少8位,最长15 ...
- QQ登陆功能的实现2
QQ登陆功能的实现2 由于看到园子里有朋友说需要讲解和剖析实现的步骤,前面的QQ登陆实现只有代码,所以这篇补上 1. 分析 1). 当运行QQ.exe后会出现qq登陆界面的窗体 2). 我们用spy ...
- logout退出功能是怎么实现的?login登陆功能室怎么实现的
logout退出功能是怎么实现的?login登陆功能室怎么实现的 login就是登陆成功的时候,在session里面创建好用户对应的数据. logout就是登出的时候,在session里面销毁用户对应 ...
- SpringSceurity(5)---短信验证码登陆功能
SpringSceurity(5)---短信验证码登陆功能 有关SpringSceurity系列之前有写文章 1.SpringSecurity(1)---认证+授权代码实现 2.SpringSecur ...
随机推荐
- [Angular 2] Async Http
Async Pipe: The Asynce pipe receive a Promise or Observable as input and subscribes to the input, e ...
- ViewPager欢迎页
布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:to ...
- ORACLE的order by中文排序
在使用order by排序的时候,出现如下情况: 印象中中文排序应该默认是按照拼音排序的,为何"鑫"会排在"中"的后面呢?猜想order by是不是根据对应 ...
- DataTable循环删除行
1.如果只是想删除datatable中的一行,可以用DataRow的delete,但是必须要删除后让DataTable知道,所以就要用 到.AcceptChanges()方法,原因是这种删除只是标识性 ...
- MySql不支持事务解决
用的是一个绿色版的mysql数据库,发现不支持事务,在网络上搜集资料找到解决方案: 1.执行语句 SHOW ENGINES; 如果发现InnoDB全部显示为“YES”,说明该版本的数据库支持事务 2 ...
- UML类图常见的几种关系
关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) ...
- QT-Demo-Colck-01
QT += widgets QT += core HEADERS += \ mainwindow.h SOURCES += \ mainwindow.cpp \ main.cpp #ifndef MA ...
- POJ 模拟题集合
http://www.cppblog.com/Uriel/articles/101592.html 感觉这个暑假没有去年有激情啊,,,还没到状态就已经块上学了,,, 真是弱暴了,,,找几道模拟题刷刷. ...
- Spring 学习笔记01
以一个论坛登陆模块来讲解如何使用spring 登陆功能虽然简单,但是模块虽然很小,但是基本包括了一般的web应用的操作.涵盖了持久层数据访问(数据库相关操作).业务层事务管理(数据库操作回滚等).展现 ...
- 微信支付:redirect_uri参数错误 的解决办法
redirect_url参数错误: 报这个错误,说明你的公众号后台授权设置有问题(一般有两处) 一:检查授权目录 答:支付授权目录是网站发起请求的页面所在目录,并且必须是能通过url地址访问的(与真实 ...