grails对于类名小写的对象持久化的约定
来源:互联网 发布:Mac可以装精简版w10 编辑:程序博客网 时间:2024/05/17 02:01
grails是一款约定远优于配置的Web框架,对于类名小写的标准对象,grails默认在一返回至后台即加入session中使之持久化,下面以Book对象说明
1.创建book对象
grails create-domain-class book
2.自动生成controller和views
grails generate-all book.book
3.在controller层的save方法(update方法类似)
@Transactional def save(Book book) { if (book == null) { transactionStatus.setRollbackOnly() notFound() return } if (book.hasErrors()) { transactionStatus.setRollbackOnly() respond book.errors, view:'create' return } book.save flush:true request.withFormat { form multipartForm { flash.message = message(code: 'default.created.message', args: [message(code: 'book.label', default: 'Book'), book.id]) redirect book } '*' { respond book, [status: CREATED] } } }这里book对象以参数形式传入,grails会默认这个类名小写的对象已经在session中持久化了,所以在controller中修改该对象的属性,不执行save方法也会持久化到数据库中,但是一般在项目开发中controller层不做业务逻辑事务层,特别是update方法,有可能需要判断是否能对其进行修改,如果不做处理,不管判断结果,都会更新到数据库中。解决办法为在save 方法里 加入 def bookTemp = new Book(params); grails封装前台数据到params中,new的时候会自动匹配赋值,这样new出来的bookTemp就是个临时态对象了。
0 0
- grails对于类名小写的对象持久化的约定
- JAVA对象jackson序列化json属性名首字母变成小写的解决方案
- JAVA对象jackson序列化json属性名首字母变成小写的解决方案
- JAVA对象jackson序列化json属性名变成小写的解决方案
- JAVA对象jackson序列化json属性名变成小写的解决方案
- 属性名小写的错误.
- 对象的持久化
- Java @Named的默认值为类名的首字母小写
- 对于调用约定的一些总结
- 持久化对象的状态
- 持久化对象的生命周期
- 持久化对象的状态
- Hibernate的持久化对象
- 持久化对象的状态
- 持久化对象的要求
- 持久化对象的状态
- STM32固件库中函数名的约定格式
- JAVA对象通过jackson转成json格式,属性名首字母变成小写的解决方法
- 今天好像没下雨了
- PHP程序员突破成长瓶颈 - 附学习建议
- 再谈如何将android studio项目转换成eclipse
- UML时序图的画法
- 剑指Offer之 - 第一个只出现一次的字符
- grails对于类名小写的对象持久化的约定
- 御龙在天掉线问题定位过程
- 为什么说PHP是个贫民区
- 三维重建(VSFM+MeshLab)
- 简单的客户端和服务器通信程序
- WIFI DIRECT开发(五)关于用户体验
- Android Studio 关于AAR 的打包引用
- servlet+jquery+ajax+json 例子
- Java enum的用法详解