请看下面的代码。如何使用Hibernate向数据库插入`null`值?
String textName=request.getParameter("textName");
String textadr1=request.getParameter("textadr1");
String textadr2=request.getParameter("textadr2");
String textcntry=request.getParameter("textcntry");
String textregNo=request.getParameter("textregNo");
AgentContact agentContact=new AgentContact();
AgentContact agentContact2=new AgentContact();
Agent agent=new Agent();
agent.setName(textName);
agent.setRegistrationNumber(textregNo);
agent.setDateOfDealStart(textDateDealing);
agent.setRegistrationDate(textregDate);
session.save(agent);
session.save(agentContact);
session.save(agentContact2);
session.getTransaction().commit();
在上面的代码中,我们从形式获取值,这就是为什么使用request.getParameter()
。但是,用户可能会填写或不填写名称等字段,因此txtName
将为空。
但是,当执行这段代码时,我注意到Hibernate为这些非指定的字符串添加了“空”字符串,而不是输入null
。如何设置代码,以便在文本实际上为空时输入null
值?
你的数据字段是否有默认值?它可以为空吗? – djb 2015-02-12 08:43:23
@djb:可以,可以。没有默认值,这意味着如果你没有输入任何东西,它将是'NULL' – 2015-02-12 08:44:27