精华内容
下载资源
问答
  • 1.2.具体实现把第一个if()后加else{return ""},不为空就不让登录即可。(具体代码根据具体需求) 3.在第一次登陆的时候把user信息放入session 4.在登出的时候5.总的来说,其实也就是加了唯一标识。通过唯一标识...

    1.2.具体实现把第一个if()后加else{return ""},不为空就不让登录即可。(具体代码根据具体需求)

    3.在第一次登陆的时候把user信息放入session

    4.在登出的时候5.总的来说,其实也就是加了唯一标识。通过唯一标识防止再次登录

    展开全文
  • 最近在研究网站的开发,其中遇到一个问题就是同一账号重复登录。要求是同一账号只能一个地方登录,重复登录时后者挤掉前者,前者提示被强制退出。根据这一需求我在网上搜了很多资料,参考许多前辈的总结,最终自己...

    最近在研究网站的开发,其中遇到一个问题就是同一账号重复登录。要求是同一账号只能一个地方登录,重复登录时后者挤掉前者,前者提示被强制退出。根据这一需求我在网上搜了很多资料,参考许多前辈的总结,最终自己研究出来一个版本,我采用的获取sessionId,以sessionId识别是否为重复登录。

    1.在用户表加一列或单独建一张关联表,用于记录当前登录的sessionId,每次登录这一列值都要做修改。

    2.用户登录,加一个拦截器filter,拦截器的作用是页面操作前判断是否重复登录。

    首先根据输入的用户名和密码做验证,通过验证查询用户信息。在用户信息不为空的前提下,比较表中的sessionid和浏览器session获取的getId(),判断两个值是否一致,若一致,则通过 正常走流程,若不一致,则返回登录页面,session设置msg,提示“账户失效或异地登录”;

    3.登录成功后,修改用户表的sessionId值为当前浏览器session获取的getId()。

    这样每次登录都会通过filter对用户的用户名、密码以及sessionId做验证,一旦有问题就返回登录页面,提示相关问题,否则成功即记录sessionId,以便下回验证。

    以上是我关于账号重复登录问题的总结。

    展开全文
  • 2.servlet和数据库配置好后,先说一下这次要做的web项目,内容是做一个登录界面,后台获取用户输入的用户名和密码,如果与数据库存在的数据匹配,就转发到后台主页面,如果不匹配,就进行重定向。数据库连接和...

    1.eclipse新建和配置servleteclipse使用mysql进行数据库编程,数据库连接

    2.servlet和数据库配置好后,先说一下这次要做的web项目,内容是做一个登录界面,后台获取用户输入的用户名和密码,如果与数据库存在的数据匹配,就转发到后台主页面,如果不匹配,就进行重定向。数据库连接和servlet配置上面已经给出链接,下面直接进入关键部分。

    首先写登录页面,以下代码是部分关键代码,注意action取值,action的作用是提交后进入的地址

    <form  action="alang" method="post">
                <table id="article-table"  cellspacing="0" >
                <caption>注册账号</caption>
                <tr>
                    <td>用户名</td>
                    <td><input   type="text" name="username"/></td>
                </tr>
                <tr>
                    <td>密码</td>
                    <td> <input type="password" name="pw"/></td>
                </tr>
         
                <tr>
                    <td><input class="article-button" type="submit" value="提交" /></td>
                    <td><input class="article-button" type="reset" value="重置"/></td>
                </tr>
            </table>
            </form>

    这是笔者的登录界面

     

    3.下面做数据库的部分,内容主要是连接数据库以及把从登录页面获取的用户名和密码与数据库匹配。注意

    executequery()会把数据库响应的结果存放在rs对象中供我们使用

    package Dao;
    
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.Statement;
    
    public class alangDao {
    	public boolean checkExist(String username,String pw) throws SQLException, ClassNotFoundException
    	{
    		Statement st=this.getStatement();
    		String sql="select * from test_user where username='"+username+"'and password='"+pw+"'";//数据库语句
    		ResultSet rs=st.executeQuery(sql);
    //executequery()会把数据库响应的结果存放在rs对象中供我们使用
    		if(rs.next()) {//判断查询结果是否存在
    			return true;
    		}else {
    			return false;
    		}							
    	}
    //连接数据库
    	public Statement getStatement() throws ClassNotFoundException, SQLException
    	{
    		// TODO 自动生成的方法存根
    	    //1.加载驱动
    	Class.forName("com.mysql.jdbc.Driver");
    		//2.获取数据库连接
    	  //"jdbc:mysql://127.9.0:3306/test","alang","alang"前面是地址是固定的,中间是你的mysql用户名,后面是你的用户密码
    	Connection conn=(Connection)DriverManager.getConnection("jdbc:mysql://127.9.0:3306/mysql","alang","alang");
    		//3.创建查询对象
    	Statement st=(Statement)conn.createStatement();
    	//以上前三步是固定的
    	return st;
    	}
    	
    
    }
    

    4.写一个简单地欢迎页面,这样当检测用户输入数据与数据库匹配时就可以进入这个页面。

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!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>
    <h3>hello,success!!!</h3>
    </body>
    </html>

    5.对servlet进行配置,利用alangDao中的方法返回的布尔变量来确定登录页面用户密码数据与数据库匹配后应该干什么

    package alang;
    
    import java.io.IOException;
    import java.sql.SQLException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import Dao.alangDao;
    
    public class alangServlet extends HttpServlet {
    
    	@Override
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    		// TODO 自动生成的方法存根
    		this.doPost(req, resp);
    	}
    //下面这个方法是用来处理使用post方式提交的请求
    	@Override
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    		// TODO 自动生成的方法存根
    		req.setCharacterEncoding("utf-8");
    		resp.setContentType("text/html;charset=utf-8");
    		String username=req.getParameter("username");
    		String pw=req.getParameter("pw");
    		//处理的时候调用数据库去表中查询
    		alangDao ld=new alangDao();
    		boolean flag=false;
    			try {
    				flag=ld.checkExist(username, pw);
    			} catch (ClassNotFoundException | SQLException e) {
    				// TODO 自动生成的 catch 块
    				e.printStackTrace();
    			}
    		if(flag) {
    			//如果前端传递的参数存在,就转发到后台主页面
    			//转发
    			//resp.sendRedirect("hello.jsp");
    			req.getRequestDispatcher("/hello.jsp").forward(req, resp);
    		}else
    		{
    			//如果不存在,重新回到登录页面
    			//重定向
    			resp.sendRedirect("index.jsp");
    			//req.getRequestDispatcher("/index.jsp").forward(req,resp);
    		}
    	}
    
    	
    
    }
    

    6.在登陆界面输入用户名和密码

    点击提交后,出现以下页面,说明这个账户密码与数据库中的数据匹配,对应的代码是第5步骤中的req.getRequestDispatcher("/hello.jsp").forward(req, resp);

    换一个账号登录

    点击提交后出现以下情况,这是又回到登录页面,对应代码:resp.sendRedirect("index.jsp");

    7.到此为止,整个用户前后台交互已经完成。

     

    展开全文
  • openwrt web登录页面的账号固定

    千次阅读 2016-07-02 10:29:17
    root用户不能录入进去。但是SSH 两者都可以使用了。 feeds/luci/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua 将page.sysauth = {“root”}修改为page.sysauth = {“username”
    luci默认为root,按照下面的方式修改以后就会默认为username。root用户不能录入进去。但是SSH 两者都可以使用了。



    feeds/luci/modules/luci-mod-admin-full/luasrc/controller/admin/index.lua
    将page.sysauth = {“root”}修改为page.sysauth = {“username”}。

    feeds/luci/modules/luci-base/luasrc/controller/admin/servicectl.lua
    将entry({“servicectl”}, alias(“servicectl”, “status”)).sysauth = {“root”}
    修改为entry({“servicectl”}, alias(“servicectl”, “status”)).sysauth = {“username”}。
    展开全文
  • Web单点登录,同一账号同一时间只有一个在线,禁止多用户登录,异地登录后强制退出
  • webftp开通账号流程

    2021-04-13 09:08:27
    Webftp账号开通流程 1.登录认证 用户可登陆不同的应用,设置独立的密码。如果忘记密码,可以使用 vpn 系统强制更新 相关应用密码。 3.注册成功后,安装vpn客户端 4.安装完成后,选择导入配置文件,选择office....
  • 解决问题:如果使用Github等第三方账号登录自己搭建的网站 一、第三方登录原理 所谓第三方登录,实质就是 OAuth 授权 1.什么是OAuth? OAuth是一种身份验证协议,用于使用其他服务提供商来对应用程序中的用户进行身份...
  • 网上看了很多方法,个人也看了,... 一、在用户登录时保存该用户的状态有这几种保存方式:  1、保存到内存中(application ,servletcontext ,个人也是推荐这种方式)  2、保存状态到数据库,至于具体的怎么保存你
  • 毕业设计中需要用到记住账号密码的...首先是登录的页面,当用户勾选记住密码,传递给controller(我用的SSM框架),后台设置cookie的值,然后下次登录的时候就不用再次输入账号和密码了。 login.jsp的代码: ; charset
  • Java web网页实现同一账号后登陆挤掉前一个登录问题描述解决思路代码解释 问题描述 我们现在项目都是集群部署通过nginx进行负载均衡,如果我们只是单点项目,就不需要考虑那么多直接用websocket就可以解决(百度一下...
  • 验证账号输入框、密码输入框、登录按钮、用户头像的状态 注意点: By定位api的封装 driver.findElement()的封装 自动化脚本: import org.openqa.selenium.By; import org.openqa.selenium.Web...
  • web应用中假如没有做会话控制,会出现这样的情况,A登录账号,B也登录账号,都是同样的账号,A修改了信息,B会看到修改的信息,这样的用户体验不好,B会觉得我没有修改啊,为什么信息会改变。而做会话控制后,...
  • 设备B用同账号登录后会判断application里是否已存在用户id作为值的数据,存在则将该值设为“_offline_”。设备A再在请求交互操作后,后端每次会判断SessionID作为键的值是否为“_offline_”,是则弹出该账号在异地登...
  • 重现步骤: 1.同一个电脑,同一个浏览器上,同时登陆两个用户,都进入项目购买页面(先A,后B),然后B先提交订单,然后A再提交订单,就能重现 问题的根源在于同一个电脑,同一个浏览器上同时登陆了... 一、在用户登录时保存...
  • 网上看了很多方法,个人也看了,... 一、在用户登录时保存该用户的状态有这几种保存方式:  1、保存到内存中(application ,servletcontext ,个人也是推荐这种方式)  2、保存状态到数据库,至于具体的怎么保存你
  • 账号登录

    2019-04-11 14:41:32
    用户的一次登录能得到其他所有系统的信任。 1、将账号信息放入缓存 2、PC端系统可以共用一个token/Cookie,但是若有小程序等不同设备登录,则会需要不同的token 3、登录使用拦截器org.springframework.web.servlet....
  • 但是在维护过程中,有部分操作是管理员账号无法准确还原的情况下,我们需要登录到生产系统中的普通用户(一般是问题提出人)的账号上进行观察。 如果该用户修改过密码,就牵扯到沟通成本。 因此我们需要一个功能,...
  • session的存在是为了维护浏览器和服务器之间交互时保留一些交互数据,例如用户行为或者用户信息等。每个会话都有自己的唯一标识,叫做sessionId。这个流程如下: 浏览器请求服务器。 服务器检查浏览器是否携带...
  • 思路:程序单用户登录,在网上查询了半天,大致是把sessionId和账号放在map中,每一个用户登录查询map中的账号所对应的sessionId是否对应,对应继续登录,不对应退出, 例如:admin账号在一处登录登录成功的...
  • 方案一、在用户表新增三个字段分别存储,用户登录口令、上次登录IP地址、上次登录时间,在登录成功后,生成唯一用户登录口令,把用户登录口令、上次登录IP地址、上次登录时间存储到SESSION,并相应的存储到用户表。...
  • $user=(Get-SPUser -IDENTITY "i:0e.t|xmssts|zhangshan" -Web http://tset.com )PS D:\deployScript> $user.UserLogin SELECT tp_Login, * FROM dbo.UserInfo WHERE tp_Login LIKE '%z...
  • 1.账号登录-用户名登录逻辑分析&接口设计 用户名登录接口设计 请求方式: 选项 方案 请求方法 POST 请求地址 /login/ 请求参数:表单 参数名 类型 是否必传 说明 username string 是 用户名 password...
  • 导航项目场景:问题描述:解决思路:后端解决方案代码:JWT实现鉴权中心,写成服务注入IOC容器...我们经常可以看到一些软件无法同时登录同一个账号,也就是同时只能有一个用户使用这个账号。或者另一种情形,限制用户
  • 近些天,看了一些博客园大牛关于webApi...因为在调用接口的时候都必须传sessionKey参数过去,所以必须先登录验证身份。 如果是已注册用户账号登陆,获得其身份标识的 sessionkey,如果是非账户用户则可以匿名登陆...

空空如也

空空如也

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

web登录用户账号