精通Grails: Grails 事件模型 - 编程入门网
elete()
}
精通Grails: Grails 事件模型(5)时间:2011-07-25 IBM Scott Davis在接下来的几个示例中,需要一直打开 MySQL 控制台并观察数据库。输入 mysql --user=grails -p --database=trip 登录(记住,密码是 server)。然后执行以下步骤: 如果 Grails 还没有运行就启动它。 输入 show tables; 确认已创建 Hotel 表。 输入 desc hotel; 查看列和数据类型。 输入 select from hotel; 确认记录已插入。 输入 delete from hotel; 删除所有记录。 BootStrap.groovy 中的防故障数据库插入和删除 在 BootStrap.groovy 中执行数据库插入和删除操作时可能需要一定的防故障措施。如果在插入之前 没有检查记录是否存在,可能会在数据库中得到重复项。如果试着删除不存在的记录,会看到在控制台上 抛出恶意异常。清单 13 说明了如何执行防故障插入和删除: 清单 13. 防故障插入和删除
如果调用 Hotel.findByName("Marriott"),并且 Hotel 不存在表中,就会返回一个 null 对象。下 一行 if(!hotel) 只有在值非空时才等于 true。这确保了只在新 Hotel 还不存在时才保存它。在 destroy 闭包中,执行相同的测试,确保不删除不存在的记录。 在 BootStrap.groovy 中执行特定于环境的行为 如果希望行为只在以特定的模式中运行时才发生,可以借助 GrailsUtil 类。在文件顶部导入 grails.util.GrailsUtil。静态 GrailsUtil.getEnvironment() 方法(由于 Groovy 的速记 getter 语 法,简写为 GrailsUtil.environment)指明运行的模式。将此与 switch 语句结合起来,如清单 14 所 示,可以在 Grails 启动时让特定于环境的行为发生: 清单 14. BootStrap.groovy 中特定于环境的行为
精通Grails: Grails 事件模型(6)时间:2011-07-25 IBM Scott Davis现在具备只在测试模式下插入记录的条件。但不要在此停住。我通常在 XML 文件中外部化测试 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |