<a href="/servlet/addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
这样的url点击后地址栏里变成了这样,项目名没了。
http://localhost/servlet/addShoppingCartServlet?id=0001&name=书&price=50<a href="/TestSession/servlet/addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
加上项目名后地址栏里又换了,出来了两个 /servlet 。。
http://localhost/TestSession/servlet/servlet/XML里这样的,一直没变,不明白为什么。右击链接的地址是对的,就是点击之后就变了。
<servlet-mapping>
<servlet-name>addShoppingCartServlet</servlet-name>
<url-pattern>/servlet/addShoppingCartServlet</url-pattern>
</servlet-mapping>
这样的url点击后地址栏里变成了这样,项目名没了。
http://localhost/servlet/addShoppingCartServlet?id=0001&name=书&price=50<a href="/TestSession/servlet/addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
加上项目名后地址栏里又换了,出来了两个 /servlet 。。
http://localhost/TestSession/servlet/servlet/XML里这样的,一直没变,不明白为什么。右击链接的地址是对的,就是点击之后就变了。
<servlet-mapping>
<servlet-name>addShoppingCartServlet</servlet-name>
<url-pattern>/servlet/addShoppingCartServlet</url-pattern>
</servlet-mapping>
多了个斜杠
生成这个URL
http://localhost/servlet/addShoppingCartServlet?id=0001&name=书&price=50
是正常的,因为<a>标签的href以/开头的时候认为是根目录。看一下你的HTML源码,在Head中是不是有base标签,如:
<base href="http://localhost/TestSession/servlet/" />如果有的话
<a href="servlet/addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
生成http://localhost/TestSession/servlet/servlet/....也是正常的。只有这个没想明白:
<a href="/TestSession/servlet/addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
加上项目名后地址栏里又换了,出来了两个 /servlet 。。
http://localhost/TestSession/servlet/servlet/
<a href="addShoppingCartServlet?id=0003&name=电脑&price=5550">购买</a>
你可以试试!!