html5如何进行超链接,来链接另一个文档?

img

以下代码为凑数:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<center>
    <h1>商品列表</h1>
    <a href="/war exploded/addCart?name=杯子">杯子</a><br>
    <a href="/war exploded/addCart?name=书包">书包</a><br>
    <a href="/war exploded/addCart?name=笔记本">笔记本</a><br>
</center>
</body>
</html>

package session;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.util.List;

@WebServlet(name = "GetCartServlet", urlPatterns = "/getCart")
public class GetCartServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session=request.getSession();
        List<String> list=(List<String>) session.getAttribute("list");
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");

        for (String s : list){
            response.getWriter().write(s+"<br/>");
        }
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

/war exploded/addCart?name=杯子
空格和后面的中文应该是要做url编码转义的。

空格用urlencode操作后好像是%20
中文可能浏览器会自动转义。所以,你试试改成
/war%20exploded/addCart?name=杯子

一个是url编码问题,另一个是上下文context是 /war exploded么?你确定么?

搜索一下 相对路径 静下心来学习一下