zoukankan      html  css  js  c++  java
  • 在struts2的Action中慎起get打头的函数

    struts2 Action里面的getter方法会在Action结束后被自动调用,例如有此情况:

    <package extends="struts-default">

    <action name="MyAction">

    <action name="AnotherAction" method="getSomething">

    ...

    在Action中

        public String execute(){

            System.out.println("execute");

            return SUCCESS;

        }

        public String getA() {

            System.out.println("getA");

            return SUCCESS;

        }

        public String geta() {

            System.out.println("geta");

            return SUCCESS;

        }

        public String getaa() {

            System.out.println("getaa");

            return SUCCESS;

        }

        public String getaA() {

            System.out.println("getaA");

            return SUCCESS;

        }

        public String getB() {

            System.out.println("getB");

            return SUCCESS;

        }

        public String gotA() {

            System.out.println("gotA");

            return SUCCESS;

        }

    当调用MyAction的时候,输出结果为:

    execute

    geta

    getaA

    getaa

    getB

    也就是说,即使你没有调用AnotherAction,getSomething仍然会执行。

    更多移步原文:http://lyfei022.blog.163.com/blog/static/8255831200972765349698/

    mysum:

      曾经在Action里写过一个以get开头的处理业务的函数,此函数还需要从Action里读入一个数据,导致有时执行此Action时

    会抛空指针异常。所以在Action里除了getter外其他函数不要以get开头(同样,也不要以set开头);除此外,除了必要的getter/setter外其余get*/set*函数最好删掉,不然会影响性能及可能出现一些莫名的错误

  • 相关阅读:
    jdk和dubbo的SPI机制
    何谓架构
    ElasticSearch的API使用
    LFU的基本原理与实现
    如何判断单向链表有环?
    mysql执行过程以及顺序
    原来 TinyPNG 可以这样玩!
    deno + mongodb 实战踩坑记
    好消息,vue3.0 进入 beta 阶段!
    听说会做这道题的人后来都进了头条?
  • 原文地址:https://www.cnblogs.com/waxblogs/p/3436016.html
Copyright © 2011-2022 走看看