我想检查Integer
值是否为空。 Integer
的值在表单中完成。这是我的代码。检查整数是否为空
这里的价值介绍:
<input name="varsta" placeHolder="Varsta:" type="text" data-constraints='@NotEmpty @Required @AlphaSpecial'> <br/><br/>
现在我要检查是否有推出与否的数据。
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
Integer varsta = Integer.parseInt(request.getParameter("varsta"));
request.getSession().setAttribute("varsta", varsta);
try {
DBConnection connection = new DBConnection();
Connection con = connection.Connect();
PreparedStatement ps = con.prepareStatement(
"insert into user(Nume,Prenume,E_mail,Parola,Varsta,Sex,Greutate,Inaltime,Nivel_activitate,Calcul_calorii)" +
"values ('"+nume+"','"+prenume+"','"+email1+"','"+parola+"','"+varsta+"','"+sex+"','"+greutate+"','"+inaltime+"','"+activitate+"','"+calorii+"')"
);
if (varsta == null && "".equals(varsta)) {
String message = "Va rugam completati cu atentie TOATE campurile!";
request.setAttribute("message", message);
request.getRequestDispatcher("/inregistrare.jsp").forward(request, response);
} else {
int i = ps.executeUpdate();
if (i > 0) {
request.getRequestDispatcher("/preferinte.jsp").forward(request, response);
}
}
ps.close();
con.close();
} catch(Exception se) {
se.printStackTrace();
}
}
不工作。
任何人都可以帮助我吗?
您的代码中存在一些错误和误解。什么'System.out.println(request.getParameter(“varsta”))''打印?一些错误:您将变量定义为'varsta',并且您正在检查'Varsta',这只是第一个问题。作为'varsta'一个整数你不能检查它对“”(空)它是一个整数。 –
你的意思是“varsta”参考而不是'Varsta'在你身上吗?如果你这样做了,这个'if'语句永远不会返回'true',因为你在比较不同类型的对象:'Integer'对'String' –
什么是'request'? – Seelenvirtuose