submited在我目前的Spring项目的所有数据,我有一个这样的形式:春/休眠不坚持从HTML表单
<form role="form" class="form" id="form" method="post" action="/loja/pagina/insert" enctype="multipart/form-data">
<input class="form-control" type="hidden" name="id" />
<label>Title</label>
<input class="form-control" type="text" name="titulo" />
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active">
<a href="#pt-BR" aria-controls="pt-BR" role="tab" data-toggle="tab">pt-BR</a>
</li>
<li role="presentation">
<a href="#es-ES" aria-controls="es-ES" role="tab" data-toggle="tab">es-ES</a></li>
<li role="presentation"><a href="#en-US" aria-controls="en-US" role="tab" data-toggle="tab">en-US</a></li>
</ul>
<div class="tab-content">
<div role="tabpane1" class="tab-pane active" id="pt-BR">
<input type="hidden" name="textos.idioma" value="pt-BR" />
<textarea class="summernote" name="textos.conteudo"></textarea>
</div>
<div role="tabpane1" class="tab-pane" id="es-ES">
<input type="hidden" name="textos.idioma" value="es-ES" />
<textarea class="summernote" name="textos.conteudo"></textarea>
</div>
<div role="tabpane1" class="tab-pane" id="en-US">
<input type="hidden" name="textos.idioma" value="en-US" />
<textarea class="summernote" name="textos.conteudo"></textarea>
</div>
</div>
</form>
当我提交此表来此方法:
控制器
@RequestMapping(value = "/insert", method=RequestMethod.POST)
@ResponseBody
@PreAuthorize("hasPermission(#user, 'insert_'+#this.this.name)")
public void insert(@Valid E object, BindingResult result) {
serv.insert(object);
}
服务
@Transactional
public void insert(E object) {
dao.insert(object);
}
DAO
@Transactional
public void insert(E object) {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.persist(object);
tx.commit();
} catch (Exception e) {
if(tx != null)
tx.rollback();
} finally {
session.close();
}
}
只有字段titulo
被持久。领域textos
,这是由该实体类(getter和设定器中省略)表示:
@Entity
public class Texto extends Model {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id;
@Column
private String idioma;
@Column
private String conteudo;
}
不保存在数据库上。任何人都可以告诉正确的方式来实现表单以正确存储这些数据?我检查了浏览器的开发人员工具,并且正在提交数据,它只是没有被保存在数据库中。