精华内容
下载资源
问答
  • 初学Java Web页面间的登录跳转
  • import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.annotation.*; import java.io.*; @WebFilter(filterName="authority"...

    import javax.servlet.*;

    import javax.servlet.http.*;

    import javax.servlet.annotation.*;


    import java.io.*;


    @WebFilter(filterName="authority"

    , urlPatterns={"/*"}

    , initParams={

    @WebInitParam(name="encoding", value="GBK"),

    @WebInitParam(name="loginPage", value="/login.jsp"),

    @WebInitParam(name="proLogin", value="/proLogin.jsp")})

    public class AuthorityFilter implements Filter 

    {

    //FilterConfig可用于访问Filter的配置信息

    private FilterConfig config;

    //实现初始化方法

    public void init(FilterConfig config)

    {

    this.config = config; 

    }

    //实现销毁方法

    public void destroy()

    {

    this.config = null; 

    }

    //执行过滤的核心方法

    public void doFilter(ServletRequest request,

    ServletResponse response, FilterChain chain)

    throws IOException,ServletException

    {

    //获取该Filter的配置参数

    String encoding = config.getInitParameter("encoding");

    String loginPage = config.getInitParameter("loginPage");

    String proLogin = config.getInitParameter("proLogin");

    //设置request编码用的字符集

    request.setCharacterEncoding(encoding); //①

    HttpServletRequest requ = (HttpServletRequest)request;

    HttpSession session = requ.getSession(true);

    //获取客户请求的页面

    String requestPath = requ.getServletPath();

    //如果session范围的user为null,即表明没有登录

    //且用户请求的既不是登录页面,也不是处理登录的页面

    if( session.getAttribute("user") == null

    && !requestPath.endsWith(loginPage)

    && !requestPath.endsWith(proLogin))

    {

    //forward到登录页面

    request.setAttribute("tip" , "对不起,您还没有登录!");

    request.getRequestDispatcher(loginPage)

    .forward(request, response);

    }

    //"放行"请求

    else

    {

    chain.doFilter(request, response);

    }

    }



    转载于:https://my.oschina.net/u/2418824/blog/599307

    展开全文
  • Web页面跳转

    2020-07-16 17:01:09
    Web页面跳转 项目一:登录验证 第一步: 创建login,html登录页面 创建success.html登录成功页面 创建failed.html登录失败页面 第二步: 1.创建ServletDemo类继承HttpServlet 2.重写doget方法 3.使用request获取请求...

    Web页面跳转

    项目一:登录验证

    第一步:
    创建login.html登录页面
    创建success.html登录成功页面
    创建failed.html登录失败页面

    第二步:
    1.创建ServletDemo类继承HttpServlet
    2.重写doget方法
    3.使用request获取请求参数
    4.请求信息校验
    5.获取校验结果
    ①使用response方法直接在本页面输出“成功”or“失败结果
    ②使用“请求跳转”跳转到“成功”或者“失败页面”

    //使用request获取请求参数

    String username = request.getParameter("username");
    String password = request.getParameter("password");
    

    //校验用户名和密码

            if ("jay".equals(username)&&"123456".equals(password)) {
                //登录成功
    //            response.getWriter().write("login success");
                request.getRequestDispatcher("/success.html").forward(request,response);
            }else {
                //登录失败
                response.getWriter().write("login failed");
            }
    

    web

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>登录页面</title>
    </head>
    <body>
        <form action="/login" method="post">
            用户名<input type="text" name="username"><br>
            密码<input type="text" name="password"><br>
            <input type="submit" value="登录">
        </form>
    </body>
    </html>
    
    展开全文
  • 首先新建webproject并添加Tomcat Server 网页主体设置 <%-- Created by IntelliJ IDEA. User: 25477 Date: 2020/6/29 Time: 10:25 To change this template use File | Settings | File Templates. --%> ...

    首先新建webproject并添加Tomcat Server

    网页主体设置

    <%--
      Created by IntelliJ IDEA.
      User: 25477
      Date: 2020/6/29
      Time: 10:25
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
      <head>
        <title>$Title$</title>
      </head>
      <body>
      <form action="/login" method="post">
        name:<input name="name" type="text">
        password:<input name="password" type="password">
        <input type="submit" value="login">
      </form>
      </body>
    </html>
    

    sevice方法重写

    package com.zr0629.servlet;
    
    import javax.servlet.*;
    import java.io.IOException;
    
    public class HelloServlet implements Servlet {
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
    
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return null;
        }
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            servletResponse.getWriter().write("hello,servlet");
        }
    
        @Override
        public String getServletInfo() {
            return null;
        }
    
        @Override
        public void destroy() {
    
        }
    }

    页面跳转设置

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
        <servlet>
            <servlet-name>hellowServlet</servlet-name>
            <servlet-class>com.zr0629.servlet.HelloServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>hellowServlet</servlet-name>
            <url-pattern>/hello</url-pattern>
        </servlet-mapping>
    
        <servlet>
            <servlet-name>loginServlet</servlet-name>
            <servlet-class>com.zr0629.servlet.LoginServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>loginServlet</servlet-name>
            <url-pattern>/login</url-pattern>
        </servlet-mapping>
    </web-app>

    登录用户名与密码获取并判断作出回应

    package com.zr0629.servlet;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    
    public class LoginServlet extends HttpServlet {
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
            String name=req.getParameter("name");
            String password=req.getParameter("password");
    
            if (name.equals("123")&&password.equals("123")) {
                resp.getWriter().write("success");
            } else {
                resp.getWriter().write("failed");
            }
    
        }
    }
    
    展开全文
  • 当用数据库里的数据登录时,跳转不了 ![图片说明](https://img-ask.csdn.net/upload/201805/09/1525844008_955596.png) 错误: [org.springframework.web.servlet.PageNotFound] - No mapping found for ...
  • 当我们的用户进行系统登录时,用户名和密码的验证都是后端验证的。而且,用户登录状态也是要后端设置的,查询数据库后,用户名和密码正确...比如头部的登录按钮,在未登录状态是显示登录按钮,在登录后显示用户名和...
        

    当我们的用户进行系统登录时,用户名和密码的验证都是后端验证的。而且,用户登录状态也是要后端设置的,查询数据库后,用户名和密码正确,则在session中存储一个uuid,每个页面需要根据登录状态判断展示相应的内容时,则判断是否有uuid这个session,且uuid不为空。比如头部的登录按钮,在未登录状态是显示登录按钮,在登录后显示用户名和头像,这些都是判断是否有uuid这个值(具体实现里,相对来说更复杂一些)。

    我们再来理下这个步骤:

    1. 向后端ajax发送用户名和密码

    2. 后端接收到用户名和密码后,查询数据库

    3. 若查询失败,则返回一个json数据,如:{"status":"-1", msg:"用户名或密码不正确"}

    4. 若查询成功,则在session中存储一个值,比如uuid,然后向前端返回一个json,比如:{"status":"0", msg:"success"}

    5. 前端js接收到返回的数据后,判断status的值,若status==0,则使用window.location.href进行跳转;其他的状态码都是登录失败,清空密码框,让用户重新输入

    6. 比如登录成功跳转到首页,首页里的php或java,需要判断session里是否有uuid

    <nav>
        <?php if(isset($_SESSION['uuid']) && !empty($_SESSION['uuid'])):;  ?>
            <!-- 若存在uuid,则不为空,则表示已经登录 -->
            <a href="#">蚊子</a>
        <?php else ?>
            <!-- 没有登录 -->
            <input type="button" value="登录" />
        <?php endif; ?>
    </nav>
    展开全文
  • web实现登录错误后跳转界面

    千次阅读 2018-08-04 10:14:08
    request.getRequestDispatcher(要跳转的界面的js代码的地址).forward(request,response) 2. 这里要将错误的原因返回给jsp,故要用共享数据。 共享数据,之前的在多个servlrt中,可以用servletContext来,但是...
  • http://stackoverflow.com/questions/25872219/confusing-locationchangesuccess-and-statechangestart 转载于:https://www.cnblogs.com/chen8840/p/5206890.html
  • webxml配置 <welcome-file-list> <...-- 检查用户是否登录过的web.xml配置 --> <filter> <filter-name>LoginInterceptor</filter-name> <filter-class>gds.a
  • 项目一:登录验证 第一步: 创建login.html登录页面 创建success.html登录成功页面 创建failed.html登录...②使用“请求跳转跳转到“成功”或者“失败页面” //使用request获取请求参数 String username = request
  • web系统中登录超时返回登录页的逻辑必不可少,实现起来也不算复杂。但仍然需要区分ajax请求和刷新页面请求的不同处理,其中也需要考虑到iframe嵌套页面中的请求返回顶端登录页的情况。此处整理一个基于springboot和...
  •  alert("用户长时间未操作,请重新登录!");  window.location.href = 'XXXX';//跳转的地址,可在后台进行销毁session;  } } /* 定时器 间隔1秒检测是否长时间未操作页面 */ window.setInterval(test...
  • web应用开发时,地址栏输入ip+port+appName,通常可以跳转登录页面。以下便介绍我所知道并且验证过的三种跳转方式。 二、准备工作 需要使用到两个url的处理分别如下: @At("/index") @Ok("redirect:/...
  • 登录之后跳转 编写页面 templates/dashboard.html <!DOCTYPE html> <!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ --> <html lang="en"> <head> &...
  • 问题:当session过期的时候,挑战登录页面,但是没有跳出iframe 解决方法: 让登录页面判断,当前页面是不是在iframe,如果是的话,就跳出 在login.jsp中添加下面代码就解决问题 if (top.location != location){ ...
  • 我的domino站点配置如下: ...在domcfg里 进行了跳转跳转到我要登录的应用数据库界面。   但是登录之后,浏览器地址栏显示的 是:   我想知道如何只让地址栏显示我的域名,即http://domino1.tansun.com呢?
  • appfuse 登录跳转

    千次阅读 2014-12-10 23:42:05
    以appfuse3为例子: spring mvc架构的 ... 首先说下登录跳转; 1 看到web.xml中的,默认的访问界面还是 index.jsp    index.jsp   2 直接输入地址后,默认是加载index.jsp的对于,index.jsp中,可以
  • //更新当前时间 if(currentTime - lastTime > timeOut){ //判断是否超时 alert("用户长时间未操作,请重新登录!"); window.location.href = 'XXXX';//跳转的地址,可在后台进行销毁session; } } /* 定时器 间隔1秒...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,849
精华内容 739
关键字:

web登录跳转