首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在每个页面上执行脚本java-ee

在每个页面上执行脚本java-ee
EN

Stack Overflow用户
提问于 2013-05-02 00:00:30
回答 2查看 49关注 0票数 0

我正在尝试建立一个多语言网站,为此,我必须识别用户lang

脚本是可以的,但我不知道如何在所有页面上执行我的脚本。

我有两个想法,但我认为有更好的解决方案。

1)在我的标签文件中执行我的脚本,这是我的页面模板,并在我所有的页面中使用。

2)从galbal类扩展我的所有类,该类在构造函数中执行脚本并在所有子类中调用super

如你所见,我的解决方案很糟糕

谢谢你的帮助

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-03 00:49:12

好的,我找到了解决方案,我使用了过滤器

这是一个要解释的示例

代码语言:javascript
复制
import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

@WebFilter(filterName="Main")
public class ExempleFilter implements Filter {
    public void init( FilterConfig config ) throws ServletException {
        // ...
    }

    public void doFilter( ServletRequest request, ServletResponse response, FilterChain chain ) throws IOException,
        ServletException {
        // ...
        chain.doFilter(request, response);
    }

    public void destroy() {
        // ...
    }
}

所有过滤代码都放在doFIlter和chain.doFilter(请求、响应)中;加载servlet

要完成此操作,您必须将过滤器添加到路由器管理器(web.xml)中

代码语言:javascript
复制
<filter-mapping>
    <filter-name>Main</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
票数 0
EN

Stack Overflow用户

发布于 2013-05-02 00:09:51

这个问题的一个常见解决方案更像是您的选项2。

在父类中构造函数的末尾,调用一个新方法init()。并且在子对象中使用init()而不是构造函数

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16321720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档