String username = request.getParameter("name");自己被自己搞乱了~~~

时间:2021-10-18 08:10:57
String username = request.getParameter("name");
System.out.println(username);
if(username==null){System.out.print("为空");}
if(username!=null){System.out.print("不为空");}


这两天写的一些网页,今天看得有点乱了, 网页效果有达到,可是我前两天写的 我自己看不明白了。。。。。


上面这个"name"是首页 session传来的, 也就是第一次访问为空,  

这里的后台打印值为  
null
不为空

我对着电脑半天 没想明白哈 , 传来的明明是空的,打印也是空的 怎么就执行到(username!=null)这句里面去了。。。

20 个解决方案

#1


upgetParameter

#2


??  什么意思?~~~

#3


因为 
name = “null”;
这个形式 
所以你检查下 把name放到session中的那个代码
应该是把 字符串“null”放到session里面了

#4


因为你的 name="null"  而不是name=null  



#5


如果单纯的传值的话
那么request.getParameter("name")应该是==null的。
你说session..这里面什么地方有session 没看懂。

#6


   “null” 和 null 是不同的哦 。。。

#7


引用 3 楼 zhaining522 的回复:
因为
name = “null”;
这个形式
所以你检查下 把name放到session中的那个代码
应该是把 字符串“null”放到session里面了

看看是不是这个原因

#8


虚拟机出问题了吧,等待高手解释

#9


恩  好像是这个原因     我用 ("null").equals(username) 比出来 是相等的  开始还用==比呢  这些都没有理清楚 容易搞混。。。。    

#10


session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
但是你现在request.getParameter()是从request中拿东西
你要从session中拿东西应该是先拿到session对象
HttpSession session=request.getSession();
然后从session中拿值 session.getParameter("name");

你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

#11


在Servlet中 也是可以直接这样拿值的吗?   String session_name = session.getAttribute("session_name");    

为啥这样写  会报错: session cannot be solved to type !

#12


引用 10 楼 mrliu314 的回复:
session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
但是你现在request.getParameter()是从request中拿东西
你要从session中拿东西应该是先拿到session对象
HttpSession session=request.getSession();
然后从session中拿值 session.getParameter("name");

你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取


你还没有拿到session对象就点他方法当然有问题
你先HttpSession session=request.getSession();//得到当前会话的session

#13


"null"的问题 和null的问题

#14


奇怪问题  传过来没东西 又有东西传来了

你调试看看是怎么回事

#15


应该就是传了“null”过来。不是null

#16


null和空值的区别啊,一个空值(“”)也是值!空值并不代表没有啊

#17


没听过session需要传,还是先request.getSession()

#18


引用 12 楼 mrliu314 的回复:
引用 10 楼 mrliu314 的回复:session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见但是你现在request.getParameter()是从request中拿东西你要从session中拿东西应该是先拿到session对象 HttpSession session=request.getSession(); 然后从session中拿值 session.getParameter("name"); 你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

你还没有拿到session对象就点他方法当然有问题
你先HttpSession session=request.getSession();//得到当前会话的session


我拿了,你认真看我的回复没啊,郁闷

#19


因为你的 name="null"  而不是name=null  

#20


引用 10 楼 mrliu314 的回复:
session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
 但是你现在request.getParameter()是从request中拿东西
 你要从session中拿东西应该是先拿到session对象
  HttpSession session=request.getSession();
 然后从session中拿值 session.getParameter("name");

 你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

一、因为你的 name="null"  而不是name=null 
二、你的username是从request中得到的,和你存在session中的没关系。

#1


upgetParameter

#2


??  什么意思?~~~

#3


因为 
name = “null”;
这个形式 
所以你检查下 把name放到session中的那个代码
应该是把 字符串“null”放到session里面了

#4


因为你的 name="null"  而不是name=null  



#5


如果单纯的传值的话
那么request.getParameter("name")应该是==null的。
你说session..这里面什么地方有session 没看懂。

#6


   “null” 和 null 是不同的哦 。。。

#7


引用 3 楼 zhaining522 的回复:
因为
name = “null”;
这个形式
所以你检查下 把name放到session中的那个代码
应该是把 字符串“null”放到session里面了

看看是不是这个原因

#8


虚拟机出问题了吧,等待高手解释

#9


恩  好像是这个原因     我用 ("null").equals(username) 比出来 是相等的  开始还用==比呢  这些都没有理清楚 容易搞混。。。。    

#10


session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
但是你现在request.getParameter()是从request中拿东西
你要从session中拿东西应该是先拿到session对象
HttpSession session=request.getSession();
然后从session中拿值 session.getParameter("name");

你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

#11


在Servlet中 也是可以直接这样拿值的吗?   String session_name = session.getAttribute("session_name");    

为啥这样写  会报错: session cannot be solved to type !

#12


引用 10 楼 mrliu314 的回复:
session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
但是你现在request.getParameter()是从request中拿东西
你要从session中拿东西应该是先拿到session对象
HttpSession session=request.getSession();
然后从session中拿值 session.getParameter("name");

你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取


你还没有拿到session对象就点他方法当然有问题
你先HttpSession session=request.getSession();//得到当前会话的session

#13


"null"的问题 和null的问题

#14


奇怪问题  传过来没东西 又有东西传来了

你调试看看是怎么回事

#15


应该就是传了“null”过来。不是null

#16


null和空值的区别啊,一个空值(“”)也是值!空值并不代表没有啊

#17


没听过session需要传,还是先request.getSession()

#18


引用 12 楼 mrliu314 的回复:
引用 10 楼 mrliu314 的回复:session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见但是你现在request.getParameter()是从request中拿东西你要从session中拿东西应该是先拿到session对象 HttpSession session=request.getSession(); 然后从session中拿值 session.getParameter("name"); 你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

你还没有拿到session对象就点他方法当然有问题
你先HttpSession session=request.getSession();//得到当前会话的session


我拿了,你认真看我的回复没啊,郁闷

#19


因为你的 name="null"  而不是name=null  

#20


引用 10 楼 mrliu314 的回复:
session需要传吗?你好像没有搞清session的作用域范围,是整个会话可见
 但是你现在request.getParameter()是从request中拿东西
 你要从session中拿东西应该是先拿到session对象
  HttpSession session=request.getSession();
 然后从session中拿值 session.getParameter("name");

 你要搞清自己到底是把值放在哪里了,放在哪里就从哪里取

一、因为你的 name="null"  而不是name=null 
二、你的username是从request中得到的,和你存在session中的没关系。

#21