专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 JavaScript调用Java的方法

JavaScript调用Java的方法

更新时间:2021-06-09 09:56:50 来源:赢咖4 浏览812次

在JavaScript中想要调用Java的方法,通过JavaScript访问servlet,再通过servlet调用Java某个类的方法。

HTML代码

<table id="cartTable">
    <thead>
        <tr>
            <th class="product_remove">
                <label>
                    <input class="check-all check" type="checkbox"/>  全选
                </label>
                <a class="fl delete" id="deleteAll" href="javascript:;"><i class="fa fa-trash-o"></i></a>
            </th>
            <th class="product_thumb">图片</th>
            <th class="product_name">名称</th>
            <th class="product-price">价格</th>
             <th class="product_quantity">款式</th>
       </tr>
    </thead>
    <tbody>
        <tr>
            <td class="product_remove">
                <input class="check-one check" type="checkbox"/>
            </td>
            <td class="product_thumb">
                <a href="ShopShoesDetails.jsp?shoes_id=<%=shoes.getShoes_id() %>">
                    <img src="${pageContext.request.contextPath}/ShopServlet?method=getShopsShoesImage&shoes_id=<%=shoes.getShoes_id() %>" alt="">
               </a>
            </td>
            <td class="product_name">
                <a href="ShopShoesDetails.jsp?shoes_id=<%=shoes.getShoes_id() %>"><%=shoes.getBrand() %>/<%=shoes.getSeries() %>/<%=shoes.getName() %>
                </a>
            </td>
            <td class="product-price"><%=shoes.getPrice() %></td>
            <td class="product_quantity"><%=shoes.getSex() %>/<%=shoes.getSize() %></td>
        </tr>
    </tbody>
</table>

ShopShoesDao.java

public void deleteFromCart(String shoes_id) {
        System.out.println("ShopShoesDao.deleteFromCart");
        String[] shoes_ids = shoes_id.split(",");        
        Connection connection = DBUtil.getConnection();
        PreparedStatement preparedStatement = null;        
        try {
            for (String string : shoes_ids) {
                int id = Integer.parseInt(string);
                String sql = "delete from user_product_cart where shoes_id = ?";
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setInt(1, id);
                preparedStatement.executeUpdate();
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
    }

ShopServlet.java

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        System.out.println("service");
        request.setCharacterEncoding("UTF-8");
        String method=request.getParameter("method");
        System.out.println(method);
        if(method.equals("addProduct")) {
            addProduct(request,response);
        }else if(method.equals("getShopsShoesImage")) {
            try {
                getShopsShoesImage(request,response);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }else if(method.equals("addToCart")) {
            try {
                addToCart(request, response);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }else if(method.equals("deleteFromCart")) {
            try {
                deleteFromCart(request, response);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }else if(method.equals("payFromCart")) {
            try {
                payFromCart(request, response);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
private void deleteFromCart(HttpServletRequest request, HttpServletResponse response) throws IOException, SQLException {
        // TODO Auto-generated method stub
        System.out.println("deleteFromCart");
        request.setCharacterEncoding("UTF-8");
        int user_id= Integer.parseInt(request.getParameter("user_id"));
        System.out.println(user_id);
        String shoes_id = request.getParameter("shoes_id");
        System.out.println(shoes_id);
        ShopShoesDao shopShoesDao = new ShopShoesDao();
        shopShoesDao.deleteFromCart(shoes_id);
        request.getSession().setAttribute("shoes_id", shoes_id);
        response.sendRedirect(request.getContextPath()+"/cart.jsp");
    }

javascrip代码

// 点击全部删除
    deleteAll.onclick = function () {
        if (selectedTotal.innerHTML != 0) {
            var con = confirm('确定删除所选商品吗?'); //弹出确认框
            if (con) {
                var shoes_id = '';
                for (var i = 0; i < tr.length; i++) {
                    // 如果被选中,就删除相应的行
                    if (tr[i].getElementsByTagName('input')[0].checked) {
                        shoes_id = shoes_id + tr[i].cells[0].innerHTML + ',';                        
                        //tr[i].parentNode.removeChild(tr[i]); // 删除相应节点
                        //i--; //回退下标位置
                    }
                }
                alert(shoes_id);
                window.location.href="ShopServlet?method=deleteFromCart&shoes_id="+shoes_id+"&user_id="+22;
                alert("删除成功!");
            }
        } else {
            alert('请选择商品!');
        }
        getTotal(); //更新总数
    }

以上就是赢咖4小编介绍的"JavaScript调用Java的方法",希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您服务。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>