EL表达式字符串拼接

版权声明:本文为博主原创文章,互联网的本质是自由与分享,若您需要引用、转载,只需要注明来源及原文链接即可 https://blog.csdn.net/qq_34207366/article/details/85102222

在jsp中使用EL表达式拼接字符串的时候报500错误
下面我列出一个简单的例子

代码如下

<!--
	举个例子 从controller层传了几个参数在当前jsp页面
		id = 1
		name = 阿豪
	条件: 我们需要根据 state的值来动态的显示不同的信息
-->
<div>${name + "!"}</div>
<div>${id + name}</div>

具体错误如下

2018-12-19 15:46:06,614 ERROR [500.jsp] - For input string: "阿豪"
java.lang.NumberFormatException: For input string: "阿豪"

在EL表达式中 如果我们使用 ${id + 2} 也不会报异常, 但是是字符串的话就会报异常NumberFormatException,我就不具体介绍它为什么报这种异常,因为我也是小白。还没有深入研究(可能发现有运算符就会把他转成数字)

解决方案

只要在 EL 表达式中涉及字符串拼接,我们可以使用 concat() 方法

<div>${name.concat("/").concat(id)}</div> <!-- 结果: 阿豪/1 -->
  • concat() 就是字符串拼接

猜你喜欢

转载自blog.csdn.net/qq_34207366/article/details/85102222