gpt4 book ai didi

mysql - Birt:将用户停留时间存储在报告中并访问数据库

转载 作者:行者123 更新时间:2023-11-29 03:34:00 25 4
gpt4 key购买 nike

我已经在 tomcat 7 上部署了 birtviewer。我正在使用基于 tomcat 表单的身份验证来控制用户对报告的访问。目前我想出一个需求,将用户访问次数和每个birt报告花费的时间存储到mysql数据库中

我已经对如何从 session 变量中提取总 session 时间进行了一些研究,但我面临的问题如下

1) session 在用户登录后立即开始。如何为后续报告收集 session 信息?例如,我有一些连接到主报告的报告。如果用户登录,他将被带到主页。之后,用户无需登录到用户访问的下一个报表。如果用户访问其他报告,我如何收集有关用户在每个报告上花费的时间的信息?

2) 我还想收集用户对每个报告的访问次数?我如何收集这些信息?

3) 如何将此信息从 birt 报告发送到数据库?

如果您有任何问题或需要更多解释,请告诉我。我已经用谷歌搜索并可以收集有关如何从 session 变量中提取信息的信息,但我可以获得有关如何分别为每个 birt 报告执行此操作的任何信息(即使所有报告都使用相同的 session 信息)

问候阿里夫

最佳答案

你可以写一个ServletFiler在 Java 中并将打包的 jar 添加到 BIRT 查看器的 WEB-INF\lib 文件夹中,并在查看器的 WEB-INF\web.xml 中配置过滤器映射,因此每次调用 BIRT 查看器的 URL 时都会触发它。

在您的过滤器中,您可以读取 session 时间并将时间戳和点击计数器保存到您的数据库中。您可以通过从 session ID 标识的下一个已保存时间戳中减去它来计算访问时间。

关于mysql - Birt:将用户停留时间存储在报告中并访问数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26044310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com