java 验证登陆_Java的登陆验证问题

java中的登陆验证问题可以有多种方式进行验证,通过拦截器功能完成,可以通过过滤器功能完成,也可以简单的代码在JSP页面中单独完成,其中都 涉及到一个关键的验证步骤,这个验证原理ASP,PHP,JAVA等语言都大致相同,但具体到不同语言实现时有些差别;同时验证还涉及另外一个独立的问题 是验证到什么程度的问题,下面我就以我的认识讲解一下;

一,验证原理

下面看看JAVA中的验证关键步骤,一般我们用session变量来保存用户成功登录后的密码,为了防止用户把URL复制下来然后直接在浏览器地址

栏中输入试图登录,即非登录访问,这个时候我们首先需要进行验证工作,主要是检测保存密码

session 是否存在,或者其是否等于预先设定的密码;session 变量时保存在服务器端,可以在前后有关联的跨页面间存在,在 session

不超时的情况下,可通过判断服务器端该变量是否存在来判断是否已经登录,存在则已经登录,不存在则没有登录;

这里先了解一个辅助问题:null 和空值的问题,这不同语言处理不完全相同;

(1)Java中,null我这里的指的是没有定义的,即根本就不存在,没有分配内存空间的情况,只是预先知道其数据类型,如 String a=null;

(2)而空值则是有数据类型的,实际存在的,分配了内存空间的,只不过内容为空而已,如:String a="";

那Java中如果用户没有成功登陆,那在服务器端指定名

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用Java框架中的ZooKeeper时,如果需要进行SASL身份验证,可以按照以下步骤进行操作: 1.在ZooKeeper服务器端配置JVM参数,启用SASL身份验证,例如: ``` -Dzookeeper.serverCnxnFactory=org.apache.zookeeper.server.NettyServerCnxnFactory -Djava.security.auth.login.config=/path/to/zookeeper_server_jaas.conf ``` 2.在ZooKeeper客户端端配置JVM参数,启用SASL身份验证,例如: ``` -Djava.security.auth.login.config=/path/to/zookeeper_client_jaas.conf ``` 3.在ZooKeeper服务器端和客户端端分别编写对应的JAAS配置文件,例如: 服务器端配置文件zookeeper_server_jaas.conf: ``` Server { org.apache.zookeeper.server.auth.DigestLoginModule required user_admin="password"; }; ``` 客户端配置文件zookeeper_client_jaas.conf: ``` Client { org.apache.zookeeper.server.auth.DigestLoginModule required username="admin" password="password"; }; ``` 其中,user_admin和password是服务器端的用户名和密码,username和password是客户端的用户名和密码。 4.在ZooKeeper客户端端编写对应的代码,例如: ``` import org.apache.zookeeper.*; import org.apache.zookeeper.data.Stat; import java.io.IOException; import java.util.concurrent.CountDownLatch; public class ZooKeeperClient { private static final String CONNECT_STRING = "localhost:2181"; private static final int SESSION_TIMEOUT = 5000; private static final String ZOOKEEPER_PATH = "/test"; private static CountDownLatch countDownLatch = new CountDownLatch(1); public static void main(String[] args) throws IOException, InterruptedException, KeeperException { ZooKeeper zooKeeper = new ZooKeeper(CONNECT_STRING, SESSION_TIMEOUT, new Watcher() { @Override public void process(WatchedEvent event) { if (event.getState() == Event.KeeperState.SyncConnected) { countDownLatch.countDown(); } } }); countDownLatch.await(); String result = new String(zooKeeper.getData(ZOOKEEPER_PATH, false, new Stat())); System.out.println(result); zooKeeper.close(); } } ``` 以上代码中,我们使用了CountDownLatch来等待ZooKeeper客户端连接上ZooKeeper服务器。在连接成功之后,我们调用了zooKeeper.getData()方法来获取指定路径节点的数据。 以上就是在Java框架中使用ZooKeeper进行SASL身份验证的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值