在添加数据的时候总显示添加失败不知道为什么
这是servlet的
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("utf-8");
String id = request.getParameter("id");
String name = request.getParameter("name");
//int price = Integer.parseInt(request.getParameter("price"));
String priceParam = request.getParameter("price");
int price = 0; // 默认值或错误情况下的处理值
try {
if (priceParam != null && !priceParam.isEmpty()) {
price = Integer.parseInt(priceParam);
}
} catch (NumberFormatException e) {
}
String kind = request.getParameter("kind");
String provider = request.getParameter("provider");
String numParam = request.getParameter("num");
int num = 0; // 默认值或错误情况下的处理值
try {
if (numParam != null && !numParam.isEmpty()) {
num = Integer.parseInt(numParam);
}
} catch (NumberFormatException e) {
// 处理无法解析为整数的情况,例如给出默认值或错误提示
// num = 默认值;
// 输出错误信息或返回给前端的错误提示
}
Goods goods= new Goods();
goods.setId(id);
goods.setName(name);
goods.setPrice(price);
goods.setKind(kind);
goods.setProvider(provider);
goods.setNum(num);
int result = 0;
try {
result = dao.Add(goods);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if ( result ==1) {
request.setAttribute("message", "添加成功");
request.getRequestDispatcher("AdminView.jsp").forward(request, response);
} else {
request.setAttribute("message", "添加失败");
request.getRequestDispatcher("AdminAdd.jsp").forward(request, response);
}
}
这是dao层的添加数据方法
```java
public int Add(Goods goods) throws Exception {
int i = 0;
Connection con = null;
PreparedStatement st = null;
ResultSet rs = null;
try {
con = CnUtil.GetCon();
String sql = "insert into goods(id,name,price,kind,provider,num) values(?,?,?,?,?,?)";
st = con.prepareStatement(sql);
st.setString(1, goods.getId());
st.setString(2, goods.getName());
st.setInt(3, goods.getPrice());
st.setString(4, goods.getKind());
st.setString(5, goods.getProvider());
st.setInt(5, goods.getNum());
i = st.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
CnUtil.closeResource(con, st, rs);
}
return i;
}
```