java – 如何实现我的Web应用程序的Affiliate链接?

前端之家收集整理的这篇文章主要介绍了java – 如何实现我的Web应用程序的Affiliate链接?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用 Java EE平台构建了一个Web应用程序,销售我的一个软件.

现在我想把我的网站营销工作交给各种电子营销公司.但由于我必须向他们提供佣金,我应该知道谁发送了流量.

我认为上述问题的一个解决方案是:

为每个电子营销公司创建一个单独的URL,并为其提供相应的URL,并将所有这些URL重定向到单个Servlet.然后,数不了.特定网址(电子营销公司的网址)上的访问者计算的数量.该电子营销公司转介的访客.

谷歌和其他各种使用类似的技术,区别于其他技术.

Q1. Do all of them uses this kind of approach?

Q2. Is there any other approach by which this can be done in a much better way?

你也可以建议其他一些东西……

提前致谢

解决方法

是的,我同意@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提供过滤器映射.

猜你在找的Java相关文章