【问题标题】:Java/JSTL: is it a good idea to put all URLs in an enum?Java/JSTL:将所有 URL 放在一个枚举中是个好主意吗?
【发布时间】:2014-10-17 16:50:25
【问题描述】:

我正在开发一个带有 Java servlet 和带有 JSTL 的 JSP 页面的 Web 应用程序。

我想找到一种方法:
1) 轻松重构 URL
2) 对于任何 url,很容易发现哪些页面/servlet 引用了它。这样在进行更改时应该更容易了解其他地方的潜在影响。

我正在考虑使用枚举来存储 URL。

这是个好主意吗?如果是这样,通过 JSTL 引用它的最佳方式是什么?是否有其他方法可以实现相同的目标?

//example code
public enum SiteUrl {
    HOME("/"),CART("/cart"),PROFILE("/my-profile");

    private final String url;

    private SiteUrl(String url){
        this.url = url;
    }

    public String getUrl(){
        return url;
    }
}

【问题讨论】:

    标签: java jsp enums jstl


    【解决方案1】:

    没有。您可以在部署描述符文件中定义所有这些与导航相关的内容。将其放入代码中是一种倒退。

    【讨论】:

    • 你好,你能解释一下为什么这是一个逆行步骤吗?我想知道:)
    【解决方案2】:

    我更喜欢 DB 而不是枚举。原因如下:

    • 不容易维护枚举类,因为其他人需要 也更新一下。
    • 如果你的应用不支持热部署,你需要重启应用 添加新网址时。
    • 一般情况下,你首先需要处理请求,比如清理参数 部分,在直接之前。数据库接口可以做到这一点。

    【讨论】:

    • 对于从数据库中检索 URL 的类,是每个 url 有 1 个方法,还是有一个带参数的通用方法?
    • 数据库结构和接口都基于您的实际需求和设计。我假设一个具有不同参数的 URL 直接指向一个 JSP。但是数据库交互需要更多时间,你的更快。所以你需要考虑你的应用的真实环境。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-02
    相关资源
    最近更新 更多