如何 add/sum hibernate/java 中的两个值
How to add/sum two values in hibernate/java
大家好,我需要你们的帮助。
我想在现有数量中添加库存。
例如,在我的 jsp 表格中,我必须输入要添加到我的数量中的库存。如果我有 10 个数量并且输入 5 个库存。现在数量将变为 15。
我的控制器看起来是这样的:
@RequestMapping(method = RequestMethod.POST, value = "/updateUser")
public String updateUser(HttpServletRequest request, ModelMap map) {
String searchId = request.getParameter("userId");
String searchProductName = request.getParameter("productName");
String searchQuantity = request.getParameter("quantity");
String searchPrice = request.getParameter("price");
String searchDdes = request.getParameter("des");
String searchStock = request.getParameter("stock");
String searchDate = request.getParameter("date");
Product updateableUser = new Product();
updateableUser.setPname(searchProductName);
updateableUser.setPquantity(searchQuantity);
updateableUser.setPprice(searchPrice);
updateableUser.setPdes(searchDdes);
updateableUser.setPstock(searchStock);
updateableUser.setPdate(searchDate);
System.out.println("PRODUCT ID += " + searchId);
productService.updateUser(updateableUser);
return this.searchUsers(request, map, null, null);
}
我的 DaoImpl
public void updateUser(Product product) {
EntityManager entityManager = transactionManager.getEntityManagerFactory().createEntityManager();
EntityTransaction transaction = entityManager.getTransaction();
try {
transaction.begin();
entityManager.merge(product);
transaction.commit();
} catch (Exception exc) {
exc.printStackTrace();
if (transaction.isActive())
transaction.rollback();
} finally {
if (entityManager.isOpen())
entityManager.close();
}
System.out.println("MANA UG UPDATE");
}
我在我的控制器中尝试这个语句:
updateableUser.setPquantity(searchQuantity+searchStock);
但是当我有 10 个数量并且输入 5 个库存时,结果将变为 105。
我将如何添加这两个值??
这看起来像是在两个字符串而不是两个整数上使用了 + 符号,这是将字符串连接在一起而不是将它们作为整数加在一起。您需要将它们变成整数才能以这种方式将它们相加。
例如
int quantity = Integer.valueOf(searchQuantity)+ Integer.valueOf(searchStock)
updateableUser.setPquantity(String.valueOf(quantity));
当然,这可能会引发异常,除非您已经验证它们的数字实际上是整数。
大家好,我需要你们的帮助。 我想在现有数量中添加库存。 例如,在我的 jsp 表格中,我必须输入要添加到我的数量中的库存。如果我有 10 个数量并且输入 5 个库存。现在数量将变为 15。
我的控制器看起来是这样的:
@RequestMapping(method = RequestMethod.POST, value = "/updateUser")
public String updateUser(HttpServletRequest request, ModelMap map) {
String searchId = request.getParameter("userId");
String searchProductName = request.getParameter("productName");
String searchQuantity = request.getParameter("quantity");
String searchPrice = request.getParameter("price");
String searchDdes = request.getParameter("des");
String searchStock = request.getParameter("stock");
String searchDate = request.getParameter("date");
Product updateableUser = new Product();
updateableUser.setPname(searchProductName);
updateableUser.setPquantity(searchQuantity);
updateableUser.setPprice(searchPrice);
updateableUser.setPdes(searchDdes);
updateableUser.setPstock(searchStock);
updateableUser.setPdate(searchDate);
System.out.println("PRODUCT ID += " + searchId);
productService.updateUser(updateableUser);
return this.searchUsers(request, map, null, null);
}
我的 DaoImpl
public void updateUser(Product product) {
EntityManager entityManager = transactionManager.getEntityManagerFactory().createEntityManager();
EntityTransaction transaction = entityManager.getTransaction();
try {
transaction.begin();
entityManager.merge(product);
transaction.commit();
} catch (Exception exc) {
exc.printStackTrace();
if (transaction.isActive())
transaction.rollback();
} finally {
if (entityManager.isOpen())
entityManager.close();
}
System.out.println("MANA UG UPDATE");
}
我在我的控制器中尝试这个语句: updateableUser.setPquantity(searchQuantity+searchStock);
但是当我有 10 个数量并且输入 5 个库存时,结果将变为 105。 我将如何添加这两个值??
这看起来像是在两个字符串而不是两个整数上使用了 + 符号,这是将字符串连接在一起而不是将它们作为整数加在一起。您需要将它们变成整数才能以这种方式将它们相加。
例如
int quantity = Integer.valueOf(searchQuantity)+ Integer.valueOf(searchStock)
updateableUser.setPquantity(String.valueOf(quantity));
当然,这可能会引发异常,除非您已经验证它们的数字实际上是整数。