小编Juk*_*bom的帖子

如何在JSTL EL测试中测试枚举值?

我的JSP中有以下块,它从ENUM值{CREATE, CREATE_FROM_CAMPAIGN, OPEN}转换为漂亮,可读的状态文本.

由于某种原因,第一次测试反对'CREATE'作品,但对抗的测试'CREATE_FROM_CAMPAIGN'没有.

<c:choose>
    <c:when test="${entry.activity eq 'CREATE'}">
        <td>was created</td>
    </c:when>
    <c:when test="$(entry.activity eq 'CREATE_FROM_CAMPAIGN'}">
        <td>was created from campaign</td>
    </c:when>
    <c:otherwise>
        <td>was opened (${entry.activity}) </td>
    </c:otherwise>
</c:choose>
Run Code Online (Sandbox Code Playgroud)

这一个的一个输出如下:

被打开了(CREATE_FROM_CAMPAIGN)

被打开了(OPEN)

为什么第二次测试不起作用?

enums jsp jstl el

5
推荐指数
1
解决办法
1万
查看次数

Bash:如何在算术表达式中进行变量扩展?

在尝试编写一个简单的bash脚本来帮助我的部署过程时,我遇到了一个令人困惑的错误:

#!/bin/bash
WEEKDAY=$(date +'%u')
echo $WEEKDAY
DAYS_TO_WEDNESDAY=$((3-$WEEKDAY))
echo $DAYS_TO_WEDNESDAY
Run Code Online (Sandbox Code Playgroud)

结果是:

1
")syntax error: invalid arithmetic operator (error token is "
Run Code Online (Sandbox Code Playgroud)

其中最奇怪的部分是,我可以发誓,这个剧本几天前运行得很好.

编辑(14:58):

问题不在于bash脚本,而在于通过TortoiseSVN使用SVN.通过Windows绕行将EOL标记更改为"CR LF",这导致bash中出现语法错误.设置svn:eol-style -property有助于避免进一步的类似问题.

bash scripting

2
推荐指数
1
解决办法
1万
查看次数

将Singleton或函数范围本地静态对象优先于彼此的原因是什么?

无论马歇尔Clines''C++ FAQ精简版’和斯科特迈尔斯有效的C++建议使用返回局部静态对象的功能,以避免与非局部静态对象的初始化顺序可能出现的问题.

简而言之(来自"Effective C++",Scott Meyers的第3版):

FileSystem& tfs()
{
  static FileSystem fs;
  return fs;
}
Run Code Online (Sandbox Code Playgroud)

两位编写者都补充说,这与Singleton模式类似,不同之处在于它不能确保本地fs是FileSystem的唯一实例.

现在,在资源管理类T的一个实例足够的情况下,您更喜欢Singleton类或本地静态方法的原因是什么?尽管我们的应用程序不需要多个实例,但并不一定要将T类限制为仅使用一个实例.

显然,在执行TDD时有一个全局对象是一个问题,但在这种情况下,这两种方法都是全局的.

c++ design-patterns

0
推荐指数
1
解决办法
403
查看次数

标签 统计

bash ×1

c++ ×1

design-patterns ×1

el ×1

enums ×1

jsp ×1

jstl ×1

scripting ×1