session-有关The operator + is undefined for

问题描述

有关The operator + is undefined for
session有取到username的值,现在需要根据这个username来去的对应的user信息,所以写了下面的语句但是有错误:The operator + is undefined for the arguement type(s) stringvoid,不也不知道可不可以直接用<%=username%>这样出现在语句中,要怎么修改呢,求大神赐教!

<%
String strsql=""select a.*b.ucid as ucidb.ucname as ucname from users a join usercategories b on a.ucid=b.ucid where a.username="" + %> <%=username%> <%;
......
%>

解决方案

首先,<%=username %>这个是获取JSP页面中<% %>代码块中定义的变量的值的,通常是被页面的html元素使用的,而不是在<%%>中用的。
例如下列代码,在<%%>中定义了ctxPath变量,然后就可以在html页面元素中通过<%=ctxtPath%>来获取这个变量的值了。

 <%String ctxtPath = request.getScheme() + ""://"" + request.getServerName() + "":"" + request.getServerPort();%><!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.01 Transitional//EN""><html>  <head>    <title>欢迎</title>  </head>  <body>  <form action=""<%=ctxtPath %>/user!editUser.action"" method=""post"" id=""Frm"" style=""display:none"">     username : <input type=""text"" name=""userName""/><br/>     password :<input type=""password"" name=""password""><br/>      <input type=""submit"" value=""submit""/>  </form>  </body></html>

你的session里面有username的值,则可以通过如下方式取到:

 <% HttpSession session = request.getSession();  String username = session.getAttribute(""username""); String strsql=""select a.*b.ucid as ucidb.ucname as ucname from users a join usercategories b on a.ucid=b.ucid where a.username="" +username; %>

JavaWeb的知识比较多,慢慢实践和积累,弄清楚遇到的每个知识的概念,就会熟练的。祝好!

时间: 2024-08-30 15:49:27

session-有关The operator + is undefined for的相关文章

java小白求解,下面的代码是按照书上的例子抄下来的,不明白为什么报错。

问题描述 java小白求解,下面的代码是按照书上的例子抄下来的,不明白为什么报错. 代码如下:主要问题就是报错的地方:已经用注释吧报错贴上:还看不懂这个报错,求大神帮助:package Calendar; import java.util.Scanner; public class Calendar { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println(

Cookies 欺骗漏洞的防范(vbs+js 实现)

一.攻击原理 Cookies 欺骗主要利用当前网络上一些用户管理系统将用户登录信息储存在 Cookies 中这一不安全的做法进行攻击,其攻击方法相对于 SQL 注入漏洞等漏洞来说相对要"困难"一些,但还是很"傻瓜".我们知道,一般的基于 Cookies 的用户系统至少会在 Cookies 中储存两个变量:username 和 userlevel,其中 username 为用户名,而 userlevel 为用户的等级.当我们的浏览器访问 ASP 页面时,它会传出类似

java字符串连接String、StringBuffer和StringBuilder

Java字符串连接再开发中随时用的,方法很多: 先看下下边的代码: package com.meiyabaike.classx; public class ClassxMathCalculate { public static void main(String[] args) { int i1 = 10; int i2 = 20; System.out.println("resultx1 :"+i1+i2); //Error: the operator - is undefined f

javascript-Qt加载dll文件后在JavaScript中无法使用

问题描述 Qt加载dll文件后在JavaScript中无法使用 实现目的:在Qt加载dll文件,dl文件实现提示框功能,dll文件的类为Operator,加载后作用js的一个属性被js使用. 问题:在js中就不能成功调用,并提示: Uncaught exception at :/test.js:6: TypeError: Result of expression 'Operator.prompt' [undefined] is not a function. 尝试在main.cpp中调用这个类的

Cookies 欺骗漏洞的防范方法(vbs+js 实现)_应用技巧

最后罗嗦一句,本人录入这篇文章用的机器上没有 ASP 环境,所以提供的代码未能进行测试,对这一点本人深表歉意.如果大家发现了代码中的任何问题,欢迎拍砖-本人皮厚- 一.攻击原理 Cookies 欺骗主要利用当前网络上一些用户管理系统将用户登录信息储存在 Cookies 中这一不安全的做法进行攻击,其攻击方法相对于 SQL 注入漏洞等漏洞来说相对要"困难"一些,但还是很"傻瓜". 我们知道,一般的基于 Cookies 的用户系统至少会在 Cookies 中储存两个变量

struts2中int型参数传递

问题描述 struts2中int型参数id如何从页面表单传递到后台action中?后台action中如何接收int类型的参数?页面用<s:propertyid="id"value="#session.operator.operId"/>传递id的值,其中operId是Long类型的.action中用什么可以接收到id的值?其实,此处id应该用隐藏表单域传递的,但是我用了隐藏表单域后,就抛出异常ognl.MethodFailedException:Meth

Cookies 欺骗漏洞的防范方法(vbs+js 实现)

最后罗嗦一句,本人录入这篇文章用的机器上没有 ASP 环境,所以提供的代码未能进行测试,对这一点本人深表歉意.如果大家发现了代码中的任何问题,欢迎拍砖-本人皮厚- 一.攻击原理 Cookies 欺骗主要利用当前网络上一些用户管理系统将用户登录信息储存在 Cookies 中这一不安全的做法进行攻击,其攻击方法相对于 SQL 注入漏洞等漏洞来说相对要"困难"一些,但还是很"傻瓜". 我们知道,一般的基于 Cookies 的用户系统至少会在 Cookies 中储存两个变量

java字符串数组进行大小排序的简单实现_java

若是将两个字符串直接比较大小,会包:The operator > is undefined for the argument type(s) java.lang.String, java.lang.String的错误. 字符串比较大小可以用字符串长度或者是比较字符串内字符的ASCII码值,前者太简单,就不进行讲述记录. 字符串用ASCII码比较大小,规则是: 1.比较首字母的ASCII码大小 2.若是前面的字母相同,则比较之后的字母的ASCII码值 3.若是一个字符串从首字母开始包含另一个字符串

JS魔法堂:从void 0 === undefined说起

一.前言   当使用coffeescript书写如下代码时 name = person?.name 会被预编译为 var name = typeof person !== "undefined" && person !== null ? person.name : void 0; ,那么void 0到底是什么意思呢?运行得知void 0===undefined为true.那为什么不直接使用undefined而要使用void 0呢?而一元运算符void具体又有什么作用呢?