网站浏览轨迹主要有两种方式
(1) aop面向切面(没有用过但如果要做后台的轨迹这个应该很合适)
(2) 过滤器(之前也一直在考虑这个比较好我做的网站前端的记录之前也找了很多资料感觉挺难的)
后来在网上找到一个工具clicksstream说是专用于大型网站轨迹记录主要用到clickstream-1.0.2.jar and commons-logging.jar
Clickstream 概述
一个用来跟踪正在你的站点上访问的用户所到达位置细节的工具。它允许你跟踪访问你的站点的“点击流”或者“传输路径”。请访问JIRA的更新日志 来了解Clickstream最近的发展。
特性
• 当用户会话产生时,开始跟踪点击流。(通过一个监听器)
• 跟踪用户产生的每次点击信息。(通过一个过滤器)
• 当用户会话终止时,将完整的点击流记录到文件或者PrintStream中。
• 设法发现用户是不是机器人,并进行适当的过滤(目前可以检测252种机器人)
在web.xml里面配置如下
<?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE web-app (View Source for full doctype...)> <web-app> <display-name>Opensymphony Clickstream Example</display-name> <filter> <filter-name>clickstream</filter-name> <filter-class>com.opensymphony.clickstream.ClickstreamFilter</filter-class> </filter> <filter-mapping> <filter-name>clickstream</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>com.opensymphony.clickstream.ClickstreamListener</listener-class> </listener> </web-app>
注解:一个会话产生会经过监听器ClickstreamListener 创建session,/*代表所有包括(*.html *.jsp *.do等等操作)一旦触发经过过滤器。该工具可以记录本地ip
,会话开始时间,session结束时间,浏览网页记录,如果需要增加记录需要将jar反编译后再里面添加需要的字段。比如要登录前和登陆后的记录在过滤器可以接受session,可以添加前一个页面url和当前页面的url