David.Ko

Follow my heart!
posts - 100, comments - 11, trackbacks - 0, articles - 0
   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

搭建Grails开发环境

Posted on 2009-10-13 10:40 David.Ko 阅读(1240) 评论(0)  编辑  收藏 所属分类: Groovy&Grails
1、JDK安装。
2、到官网上下载grails。http://www.grails.org/Download
3、解压,配置GRAILS_HOME,Path
4、在命令行输入:grails。如果出现帮助信息,说明安装成功。
5、开始应用程序。
选择一个工作目录,在命令行输入:grails create-app demo。
会在当前目录下生成一个demo文件夹,里面有自动生成的好多文件,这就是一个grails项目。
The "create-app" target created a Grails data source artifact for you in the "<..>/grails-app/conf" directory called DataSource.groovy with closures for each of the standard environments: Development, TestData, and Production.
这就是一个可运行的web项目。输入: grails run-app
在浏览器输入:http://localhost:8080/demo
6、cd 到demo目录,在命令行输入:grails create-domain-class User,创建一个User实体类。
   cd到demo\grails-app\domain目录下,这里存放所有的实体类。修改User.groovy文件为:
class   User {
String name
String password

String toString() {
" $name : $password "
}

static constraints = {
name(blank: false )
password(blank: false , size: 6 .. 16 )
}
7、在命令行输入:grails generate-all User。为User产生所有CRUD操作需要的代码(如控制器UserController.groovy)和页面(如list.gsp)
8、输入:
grails create-controller Login生成控制器
9、修改demo\grails-app\controllers\LoginController.groovy的内容为:
class LoginController {
def loginService

def index = { }

def login = {
User u = new User()
u.properties = params
if (params.name && params.password) {

def user = loginService.check(u)

if (user) {
flash.message = "Welcome ${user.name}"
render(view: "ok", model: [user: user])
} else {
flash.error = "Invalid ${u.name} with ${u.password}"
render(view: "login", model: [user: u])
}
} else {
render(view: "login", model: [user: u])
}
}
}
10、输入:grails create-service Login。创建业务逻辑。
11、修改demo\grails-app\services\LoginService.groovy的内容为:
class LoginService {

boolean transactional = true

def check(User u) {
def user = User.findWhere(name: u.name, password: u.password)
return user
}

def serviceMethod() {
// TODO
}
}
12、修改demo\grails-app\conf\ApplicationBootStrap.groovy,将一个User实例保存到数据库(grails自带hsqldb和jetty)中,内容如下:
class ApplicationBootStrap {

def init = { servletContext ->
new User(name: "demo", password: "123456").save()
}
def destroy = {
}
}
13、在“命令行”中,输入“grails run-app”,运行我们的Web应用

14、打开浏览器,输入:http://localhost:8080/demo/login/login ,在Name处输入demo,Password处输入123456,点击‘Login’,


只有注册用户登录后才能发表评论。


网站导航: