本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
fantaxy025025 - johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sichunli_030
- sam123456gz
- arpenker
- tanling8334
- kaizi1992
- gaojingsong
- 龙儿筝
- xpenxpen
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- lemonhandsome
- mengjichen
- jbosscn
- zxq_2017
- lzyfn123
- nychen2000
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
- kingwell.leng
最新文章列表
Grails Domain - 复合唯一索引
通常都有这样的业务,父对象唯一,子对象在其父对象的范围内唯一。如,同一个公司内的员工名称必须是唯一的(这里假设即使重名,也用编号区分),但不同公司的员工可以重名。
Grails很轻松就能实现复合唯一索引的例子
name(blank: false, unique: 'company')
相应的,在数据库会出现如下定义
UNIQUE KEY `company_id` (`comp ...
Grails: 连接mysql数据库
Grails切换到mysql数据库需要做如下的配置:
1、将mysql-connector-java-5.1.22-bin.jar驱动复制到Grails应用的根目录lib下面。
2、修改conf/DataSource.groovy;Grails默认用的是H2数据库,我们需要将driverClassName = "org.h2.Driver" 改成 driverClassName ...
收集几个Grails中自动数据绑定的容错机制,但总觉得蛮bug的。。。
#1
--action里--
println(params.payAmount)
Expense e = new Expense(params)
println(e.payAmount)
--页面输入 10o (最后一位是字母option的开头)--
奇迹发生了,sout输出结果是
10o
10
最终导致存入数据库10
也不知道这个算是自动数据绑定的BU ...
Grails中利用枚举(enum)来实现Status、Type功能
应用中,Domain对象往往需要Status、Type属性,且一般就3-5条,各Domain之间也没什么共性,管理起来就非常麻烦。
Grails中,可以通过枚举类型轻松实现
1. 在src/groovy文件夹下创建枚举对象
public enum ExpenseGroupStatus {
New,
Approved,
WriteOff
}
public enum Exp ...
Grails多环境基本概念
大多数g命令都是默认dev参数的
grails run-app 默认环境为 dev
grails war 默认环境为 prod
There are 3 preset environments known to Grails: dev, prod, and test for development, production and test.
源代码
public enum Environment ...
Grails中引入依赖包/框架/插件
在Grails项目中,引入第三方包/框架(准确的说是G没有内置的第三方)有3个办法
1. 在plugin库里,选择可用的插件,比如ckeditor,好处是可以自动完成一些配置工作,使用起来很便捷。但要深入使用还需要了解框架的具体知识。
用过的plugin
1) ckeditor:富文本编辑器
2) excel-import:处理excel文件
3) joda-time:excel-impo ...
How to upload file from web url and save it to database (Grails)
Domain class:
class Data {
byte[] pdfFile
static mapping = {
pdfFile sqlType:'longblob' //use mysql
}
static constraints = {
pdfFile nullable:true
} ...
Grails学习笔记之GORM
1.关联查询
假设有以下领域对象:
class Account{
Transaction transaction
Date created
}
class Transaction{
Date date
}
def c = Account.createCriteria()
def now = new Date()
def results = c.list {
...
Grails中的过滤器(Filter)和拦截器(Interceptor)
先摘录一段Java中两者的区别
1、拦截器是基于java的反射机制的,而过滤器是基于函数回调 。
2、过滤器依赖与servlet容器,而拦截器不依赖与servlet容器 。
3、拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用 。(这也就是为什么在Grails文档里,拦截器属于Controlloer章节的一个小节;而过滤器自己是一个章节)
4、拦截器可以访问action上下文 ...
在Grails中使用CKEditor
http://grails.org/plugin/ckeditor
Grails的插件系统让引入一个新框架需要做的工作简单到爆。
1. 在IDEA中右键点击Plugins(插件),就会列出可用的插件,打勾就安装成功。
2. 在GSP中加入
引用<head>
....
<ckeditor:resources/>
....
</head>
<body ...
重拾Grails - 内部办公系统开发日记
开发环境版本号
GRAILS_HOME=/workspace/javaspace/grails-2.2.0
TOMCAT_HOME=/workspace/javaspace/apache-tomcat-7.0.34
JAVA_HOME=/workspace/javaspace/jdk1.7.0_10
开发环境重装流程
1. 安装IDEA
2. 安装JDK
3. 安装Grails,版本要和SVN上 ...