servlet实现用户登录小程序

所属分类: 软件编程 / java 阅读数: 34
收藏 0 赞 0 分享

当时在上JAVA课的时候,老师就给我们讲过SUN公司的servlet是一个典型的JAVA语言的应用。现在在上网络编程课的时候,终于接触到了这种服务器小程序。
现在我们就用servlet来简单实现一个用户登录的小程序。
首先,servlet也是一个JAVA类,新建一个JAVA类,它直接继承了HttpServlet类:

@WebServlet(name = "ServletTest")
public class ServletTest extends HttpServlet {

  @Override
  public void init(ServletConfig config) throws ServletException {
    super.init(config);
  }

  @Override
  public void init() throws ServletException {
    super.init();
  }

  @Override
  public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
    //super.service(req, res);
    String username=req.getParameter("username");
    String password=req.getParameter("password");
    System.out.println(username);
    System.out.println(password);

  }

  @Override
  public void destroy() {
    super.destroy();
  }

  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    super.doPost(req, resp);
  }

  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    super.doGet(req, resp);
  }
}

Servlet作为一个程序,也会有它的生命周期,它的生命周期从init()开始,有两种init(),一个是有参数的,另一个是无参数的。其中有参数的init方法会显示地调用无参的init()方法。从init(ServletConfi,g config)的源代码中我们也可以看出这一点。init()是在被Servlet被访问时被调用

当servlet接受用户提交的表单的时候会调用service方法。

然后编写login.jsp:

<form action="<%= request.getContextPath() %>/loginServlet" method="post">
  用户名:<input type="text" name="username"><br/>
  密码:<input type="password" name="password"><br/>
  <input type="submit" value="登录">
  <input type="reset" value="重置">
</form>

注意action中要使用request.getContextPath获取到上下文路径。
loginServlet需要在web.xml中进行配置

<servlet>
       <servlet-name>LoginServlet</servlet-name>
       <servlet-class>com.myServlet.ServletTest</servlet-class>
     </servlet>

     <servlet-mapping>
       <servlet-name>LoginServlet</servlet-name>
       <url-pattern>/loginServlet</url-pattern>
     </servlet-mapping>

servlet-name随便起,servlet-class表示servlet的类名。
url-pattern是action中引用的名字,这样它们就关联在一起了。

最后就可以看见表单中的username和password被打印出来了。

最后其它的方法可以根据需要在官方文档中查找。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Java concurrency之锁_动力节点Java学院整理

这篇文章主要为大家详细介绍了Java concurrency之锁的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java8新特性之StampedLock_动力节点Java学院整理

本文从synchronized、Lock到Java8新增的StampedLock进行对比分析,对Java8新特性之StampedLock相关知识感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

Java8新特性之lambda的作用_动力节点Java学院整理

我们期待了很久lambda为java带来闭包的概念,但是如果我们不在集合中使用它的话,就损失了很大价值。现有接口迁移成为lambda风格的问题已经通过default methods解决了,在这篇文章将深入解析Java集合里面的批量数据操作解开lambda最强作用的神秘面纱。
收藏 0 赞 0 分享

Java8新特性之Base64详解_动力节点Java学院整理

这篇文章主要为大家详细介绍了Java8新特性之Base64的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java8新特性之JavaFX 8_动力节点Java学院整理

这篇文章主要介绍了Java8新特性之JavaFX 8的相关知识,非常不错,具有参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

将本地jar包安装进入maven仓库(实现方法)

下面小编就为大家带来一篇将本地jar包安装进入maven仓库(实现方法)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅谈Java finally语句到底是在return之前还是之后执行(必看篇)

下面小编就为大家带来一篇浅谈Java finally语句到底是在return之前还是之后执行(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

基于Java并发容器ConcurrentHashMap#put方法解析

下面小编就为大家带来一篇基于Java并发容器ConcurrentHashMap#put方法解析。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解Spring Boot Profiles 配置和使用

本篇文章主要介绍了详解Spring Boot Profiles 配置和使用,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解Spring Boot 属性配置和使用

本篇文章主要介绍了详解Spring Boot 属性配置和使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多