是的,我同意@krassib和@TomR - 使用queryString参数,然后你可以编写一个servlet过滤器来检查特定的参数并增加该会员的计数。使用servlet过滤器还可以为您追踪每个分支机构单个链接计数的额外好处。
你做的东西像下面这样:
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;
public class AffiliateTrackingFilter implements Filter {
private AffiliateTrackingService affiliateTrackingService = null;
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest rq, ServletResponse rs,
FilterChain chain) throws IOException, ServletException {
String affililateId = rq.getParameter("affiliateId");
affiliateTrackingService.incrementAffiliateHit(affililateId);
chain.doFilter();
}
@Override
public void init(FilterConfig fc) throws ServletException {
affiliateTrackingService = new AffiliateTrackingService();
}
}
然后加入这样的事情你的web.xml:
<filter>
<filter-name>AffiliateTrackingFilter</filter-name>
<filter-class>com.example.AffiliateTrackingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AffiliateTrackingFilter</filter-name>
<servlet-name>MyMainServlet</servlet-name>
</filter-mapping>
而且对所有的Servlet过滤器映射。
指向相同内容的多个网址可能会损害您的谷歌排名,因为这看起来像是一个链接农场。 – Dominik 2010-03-05 19:52:12