繁体   English   中英

从Java Servlet以正确的格式将数据插入mysql表

[英]Insert data into mysql table in proper format from java servlet

我从购物车javascript到jsp获取购物车项目和购物车价格,然后将其从jsp传输到servlet,如下所示:

String a= request.getParameter("cartitems");//but it prints like Jan-2019Feb-2019March-2019

String b=request.getParameter("cartprice");//prints like $100,$200,$400

我需要将数据存储在数据库中,如下所示:

 Cart          Price
Jan-2019        $100
Feb-2019        $200
March-2019      $400

我正在尝试分隔此Jan-2019Feb-2019March-2019,以便可以将其存储在我的表中,但无法这样做,Jan-2019Feb-2019March-2019不需要用日期格式分隔,可以用任何格式分隔如果可能的话,使用合适的正则表达式。

我试图按如下方式分隔字符串a,但无法正常工作。

     String[] result = a.split(",");
     out.println(Arrays.toString(result));// prints [June-2019March-2019]

我如何在我的数据库表中存储上述数据,请帮忙! 提前谢谢了!

  1. 从servlet请求中获取参数:
String cartItemsParameter= request.getParameter("cartitems");
  1. 使用方法:
findRexExpList(cartItemParameter, "\\D+\\d+");

方法代码:

 private static List<String> findRexExpList(String text, String regExp) {
    List<String> result = new ArrayList<>();
    Pattern pattern = Pattern.compile(regExp);
    Matcher matcher = pattern.matcher(text);
    while (matcher.find()) {
        String group = matcher.group();
        result.add(group);
    }
    return result;
}
  1. 此方法返回带有分隔字符串的List
  2. 对于商店数据:
List<String> carts = findRexExpList(cartItemParameter, "\\D+\\d+");
String[] cartPrices = request.getParameter("cartprice").split(",");
for(int i=0; i<cartPrices.length; i++){
   String cart = carts.get(i);
   String price = cartPrices[i];
   //insert cart and price
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM