zoukankan      html  css  js  c++  java
  • freemarker中的null异常处理以及!与??的使用(转)

    原文链接:

    https://blog.csdn.net/mexican_jacky/article/details/50638062

    如工程包含:

    在user中我们有个角色,那么我们可以通过${user.role.rolename}获取当前用户的角色名称

    问题来了当role没有赋值的时候,在jsp中${}表达式会直接忽略不显示,而freemarker会报异常,还是一大堆,freemarker就需要您手动去处理

    如:

    这的role是null因此报错了,而在freemarker中报的异常,排错还挺难的,一大顿,这里就需要我们手动去处理null,这里就要用到!

    此刻的效果就跟jsp中的${}el表达式一样了,如果为空就不显示了,当在!后进行说明如:获取当前用户的角色:${user.role!"当前用户没有角色"}如果为空默认值就是后面的值

    而当您写成这样的时候:<br/>获取当前用户的角色:${user.role.rolename!}  而role任然没值的时候依然会报错,而正确的方式<br/>获取当前用户的角色:${(user.role.rolename)!}

    ?? 用于判断是否为空


    <#if user.role??>
     当前用户没有权限角色
     <#else>
     当前用户有权限角色
    </#if>


    ${user.role???string}这里将结果以字符串的形式输出:true 或者false

    ${user.role???string("YES","NO")} 这判定用户权限角色为空

  • 相关阅读:
    元类、orm
    MySQL进阶
    python操作mysql
    tf矩阵基础
    tensorflow安装时遇到的问题
    Loading
    弹球落地
    3dMenu
    响应式布局:flex
    渐变linear-gradient
  • 原文地址:https://www.cnblogs.com/aigeileshei/p/9069270.html
Copyright © 2011-2022 走看看