grails/groovy/gradle
崔世勋
这个作者很懒,什么都没留下…
展开
-
Grails 乐观锁和版本定义
默认情况下,GORM使用乐观锁和在每一个类中自动注入一个version属性,此属性将映射数据库中的一个version列。可以通过 class Person { .. static mapping = { table 'people' version false } }来关闭这个功能,如果关闭了乐观锁,需要自己负责并发更新并且存在用户丢失数据的风险。 最后欢迎大家访问我的个人网...转载 2018-04-08 14:07:20 · 728 阅读 · 0 评论 -
spring security core plugin 五(Authentication)
Basic and Digest Authentication Property Default Description useBasicAuth false Whether to use Basic authentication basic.realmName “Grail...转载 2018-04-13 09:33:38 · 353 阅读 · 0 评论 -
grails command line
grail [environment]* [command name]example:grails dev run-appgrails prod run-appgrails -Dgrails.env=uat run-appbootstrap1.loadApp加载和创建一个GrailsApplication实例。loadApp()grailsApp.allCl...转载 2018-04-13 09:34:15 · 319 阅读 · 0 评论 -
grails Tags
1.actionSubmit使用指定值创建一个提交按钮,可以向HTML一样,添加Javascript event handlers。<g:actionSubmit value="Update" /><!--'Update' is action, label is 'Some update label'--><g:actionSubmit value="S...转载 2018-04-13 09:35:19 · 195 阅读 · 0 评论 -
grails入门
Grails是搭建在Groovy之上的一个开源MVC Web开发框架,它分别用Domain Class、View、Controller对应于MVC的模型、视图和控制器。可以简单的把一个Domain Class理解为数据库中的一张表,Grails在底层通过Hibernate将Domain Class和数据库的表进行映射。View在Grails中指的是GSP页面(不是JSP),它用来显示用户界面。GS...转载 2018-03-27 15:28:02 · 805 阅读 · 0 评论 -
gradle入门
是什么?在语法上基于Groovy语言的(Groovy是一种基于JVM的敏捷开发语言,可以简单的理解为强类型语言java的尽善弱类型版本),在项目管理上是基于Ant和Maven概念的项目自动化构建工具。执行流程和基本术语和Maven一样,Gradle只是提供了构建项目的一个框架,真正起作用的是Plugin。Gradle在默认情况下为我们提供了很多常用的Plugin。与Maven不同的是,...转载 2018-03-27 15:20:03 · 274 阅读 · 0 评论 -
Groovy语法
基本语法1.Groovy注释标记和Java一样,支持//或者/**/2.Groovy语句可以不用分号结尾。Groovy为了尽量减少代码的输入 。3.单引号单引号中的内容严格对应Java中的String,不对$符号进行转义。4.双引号双引号的内容和脚本语言的处理有点像,它会对表达式先求值。def x = 100def s1 = "i am $x dolloar"p...转载 2018-03-27 16:27:27 · 1363 阅读 · 0 评论 -
grails application.xml
1.默认Grails工程的context path是工程名,可以以application.xml添加以下内容进行修改:server: contextPath: /helloworld可以通过 run-app -port=9090这种方式修改端口号。2.修改flush mode现有的模式为commit,可以通过hibernate.flush.mode进行修改3...翻译 2018-04-13 10:55:58 · 678 阅读 · 0 评论 -
Grails Quartz插件,定时调度任务
Quartz插件可以使Grails应用程序按照指定的时间间隔或cron表达式来执行调度任务。用法1.引用quartzdependencies { compile 'org.grails.plugins:quartz:2.0.0.M4'}2.使用可以使用命令行创建,如果不想用命令,直接在grails-app/jobs下创建job,在grails-app/jobs路径下...转载 2018-05-17 14:13:31 · 695 阅读 · 0 评论 -
Gradle依赖管理
compile:用来编译项目源代码的依赖。 runtime:在运行时被生成的类需要的依赖,默认项,包含编译时的依赖。 testCompile:编译测试代码依赖,默认项,包含生成类运行所需的依赖和编译源代码的依赖。 testRuntime:运行测试所需要的依赖,默认项,包含上面三个依赖。 外部依赖一般存放在远程(比如maven)或本地仓库里dependencies { ...转载 2018-05-11 15:01:54 · 346 阅读 · 0 评论 -
Gradle插件 gradle打war包
https://plugins.gradle.org/,其实gradle的核心只是一个空空的框架,所谓的gradle构建便捷脚本其实都是由插件提供支持的,插件添加了新的任务。 脚本插件:是额外的构建脚本,它会进一步配置构建,通常会在构建内部使用。脚本插件可以从本地文件系统或远程获取,如果是从文件系统获取则是相对于项目目录,如果是远程获取则是由HTTP URL指定。 二进制插件:是实现了P...转载 2018-05-11 16:37:28 · 3233 阅读 · 0 评论 -
Grails中g form表单添加id
<g:form>标签中id项确实不支持此项功能,若需要在生成的form中添加id项,可以使用name项,这将在生成的页面中生成相同的name和id两个元素<g:form controller="game" action="list" name="gameForm"> <label for="name">Username<转载 2018-04-28 09:36:12 · 337 阅读 · 0 评论 -
grails-Template
<input type="button" value="report3" onclick="window.location.href='<g:createLink controller="report" action="bar3" />'"></input><input type="button&q转载 2018-05-08 10:11:14 · 356 阅读 · 0 评论 -
Grails GORM查询
GORM提供了从动态查询器、criteria到hql的一系列查询方式。另外Groovy通过GPath操纵集合的能力,和GORM的像sort、findAll等方法结合起来,形成一个强大的组合。获取列表(1)支持分页参数def books = Book.list(offset:10, max:20)(2)也可以排序def books = Book.list(sort:"titl...转载 2018-05-15 11:29:15 · 1176 阅读 · 0 评论 -
Grails - Interceptors
在Grails 3.0之前,Grails有Filter概念,3.0之后仍可使用,但并不推荐。定义Interceptors默认情部况下,Interceptors会拦截同名的controller请求,如果我们有一个interceptor称为BookInterceptor,那么所有请求BookController的请求都会触发这个interceptor。一个Interceptor需要实现接口...转载 2018-05-15 14:30:45 · 1250 阅读 · 0 评论 -
groovy--集合map
map声明方式def myMap =['a':1,'b':2,'c':3]assert myMap instance HashMapassert myMap.size() == 3assert myMap['a'] == 1def emptyMap = [:]assert emptyMap.size() ==0def map = new TreeMap()map.putAll...转载 2018-05-16 10:34:19 · 307 阅读 · 0 评论 -
grails asset-pipeline
介绍Grails Asset-Pipeline插件用于在Grails应用中管理和处理静态事物,功能还包括处理和压缩CSS和JavaScript文件,还支持编译自定义事物,如CoffeeScript或LESS。配置1.压缩 Property Value Default grails.assets.minifyJs true or false true...翻译 2018-06-13 10:49:59 · 762 阅读 · 0 评论 -
Spring Security Core Plugin 九(URL属性)
PropertyDefault ValueMeaningapf.filterProcessesUrl“/login/authenticate”Login form post URL, intercepted by Spring Security filterapf.usernameParameter“username”Login form username parameterapf.passwor...翻译 2018-04-13 08:56:51 · 389 阅读 · 0 评论 -
Spring security core plugin 八(Event)
主要涉及两个事件类:AbstractAuthenticationEvent和AbstractAuthorizationEvent事件通知1. 注册事件监听器,添加感兴趣的事件,这样当相关事件类及其子类发生时,会接到通知。MySecurityEventListener.groovypackage com.foo.barimport org.springframework.cont...翻译 2018-04-13 08:54:17 · 350 阅读 · 0 评论 -
Spring Security Core Plugin 七(自定义UserDetailsService)
当使用DaoAuthenticationProvider从数据库中验证用户时,需要实现UserDetailsService和UserDetails,插件提供了grails.plugin.springsecurity.userdetails.GormUserDetailService作为UserDetailsService的实现类,grails.plugin.springsecurity.userd...翻译 2018-04-13 08:34:50 · 529 阅读 · 0 评论 -
grails response、render、redirect的区别
1.response基于request的‘ACCEPT’header来协商响应数据的格式 。reponse之后,程序会继续执行,后面可以使用render、redirect,但response无作用。 Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8, application/json2...转载 2018-04-08 16:39:28 · 1199 阅读 · 0 评论 -
grails 约束用法
约束为Grails提供了声明式的DSL定义,包括验证规则,schema生成和CRUD元数据的生成。1.blank验证一个String值是否为空。login(blank:false)2.creditCard验证一个String值是否为credit card number3.email验证是否为有效的邮件地址4.inList验证所给的值是否在所给的集合中。n...转载 2018-04-02 10:24:03 · 339 阅读 · 0 评论 -
Grails controller 用法
1.actionName返回当前执行的action名称。 class BookController { def list = { log.info "Executing action $actionName"render(view:actionName) }2.afterInterceptoraction执行后,view渲染前的拦截器。class BookCo...转载 2018-04-02 11:12:37 · 1004 阅读 · 0 评论 -
Grails 插件用法
1.URLMappings配置Grails URL 映射结构2.codecs用于注册文本数据加密解密的工具类。3.controllers使用底层的Spring MVC组件模型来构建Grails MVC构架4.core添加其它插件依赖的方法和bean5.dataSource设置Grails JDBC DataSource实例dataSource { poo...原创 2018-04-02 11:48:46 · 1159 阅读 · 0 评论 -
Groovy的SQL模块
Groovy的SQL模块提供了对JDBC的抽象,让我们使用JDBC更简单,相关类在groovy.sql包下。1.插入数据我们可以使用execute或executeInsert方法,主要的区别是executeInsert方法会返回一个列表,包含了播放数据对应的主键。这两种方法都支持?点位符和额外的参数列表,这时Groovy会使用PreparedStatement来执行SQL。它们都支持GString...转载 2018-04-02 13:35:12 · 3398 阅读 · 0 评论 -
Grails 领域类用法
1.addTo*为领域类添加一对多或多对多的关系。def fictBook = new Book(title:"IT")def nonFictBook = new Book(title:"On Writing: A Memoir of the Craft")def a = new Author(name:"Stephen King") .addToFicti...转载 2018-04-02 14:30:54 · 480 阅读 · 0 评论 -
Groovy 处理JSON
JsonOutputJsonOutput类用于将Groovy对象转换为JSON字符串。使用起来非常简单。JsonOutput功能很强,可以转换各种基本类型、数组、列表、Map、自定义对象等等。对结果再次调用prettyPrint方法,还可以获得格式化的输出,非常方便。 static void parseSimpleObject() { def book = new ...转载 2018-04-10 18:14:20 · 757 阅读 · 0 评论 -
gradle在idea中的使用
Gradle引入本地定制jar包,而不使用坐标下载jar包的方法:(1)在Gradle项目里建立一个名为“libs”(这外名字可以自定义,不一定非要叫这个名字)的文件夹,把自已本地的jar拷贝到这个文件夹中。(2)编写build.bradle核心配置文件片断compile fileTree(dir:'libs',include:['*.jar'])(3)刷新构建...转载 2018-04-16 10:49:06 · 1018 阅读 · 0 评论 -
Grails 中URLMappings运用
通过grails-app/conf下的UrlMappings.groovy可以很容易的管理项目URL的配置文件。class UrlMappings {static mappings = {}}基本URL配置“/student”(controller:”student”, action:”list”)首先前面的就是我们的URL的部分,当然是相对于项目的根URL的,那么...转载 2018-04-11 09:30:10 · 1139 阅读 · 1 评论 -
Spring4 Groovy Bean定义DSL
Spring4支持使用Groovy DSL(Domain Specific Language)来进行Bean定义配置,其类似于XML.Groovy不是特定领域的语言(DSL), 而是通用的语言,但Groovy却对编写出一个全新的DSL提供了良好的支持.Groovy官方已经发布了较多基于Groovy书写的DSL.例子:1.目标实现一种使用Groovy语法书写, 用于构建HTML的...转载 2018-04-11 13:45:54 · 565 阅读 · 0 评论 -
grails service用法
scope默认service是单例的,可以通过scope改变:(1)prototype:每次注入到其它类中时,都新建一个service实例(2)request:会为每次请求创建一个service(3)flash:会为当前和下一次请求创建一个service(4)flow:In web flows the service will exist for the scope of th...转载 2018-04-04 15:41:42 · 626 阅读 · 0 评论 -
Spring Security Core Plugin 一
配置默认值在插件的DefaultSecurityConfig.groovy文件中. 在应用中可以通过grails-app/conf/application.groovy和grails-app/conf/application.yml进行应用级配置.(1) 默认的只有POST请求才会触发登录, 为了允许GET访问, 添加grails.plugin.springsecurity.logo...翻译 2018-04-12 13:46:04 · 289 阅读 · 0 评论 -
Spring Security Core Plugin 二 (领域类)
Person Class自定义时username, enabled 和password是必备三个属性, 另外还需要定义一个authorities属性或getAuthorities方法.package com.mycompany.myappimport groovy.transform.EqualsAndHashCodeimport groovy.transform.ToString...翻译 2018-04-12 14:04:22 · 270 阅读 · 0 评论 -
Spring Security Core Plugin 三(配置Request Mappings)
方式一: @Secure方式二: application.groovy方式三: Requestmap 保存在数据库中.悲观锁定默认rejectNoRule = true,那么所以没有配置的URL用户都不可访问另外一个配置是fii.rejectPublicInvocations, 如果rejectNoRule是false,那么前者为true时,没有配置的URL访问会抛出Ill...翻译 2018-04-12 14:44:24 · 517 阅读 · 0 评论 -
Spring Security Core Plugin 四(Filters)
filterNames通过rails.plugin.springsecurity.filterChain.filterNames来定制过滤器.grails.plugin.springsecurity.filterChain.filterNames = [ 'securityContextPersistenceFilter', 'logoutFilter', 'authenti...翻译 2018-04-12 15:24:00 · 421 阅读 · 0 评论 -
Spring Security Core Plugin 六(Authentication Providers)
Property Default Value Meaning providerNames ['daoAuthenticationProvider', 'anonymousAuthenticationProvider', 'rememberMeAuthenticationProvider'] Bean names of aut...翻译 2018-04-13 08:19:53 · 235 阅读 · 0 评论 -
Java 存储过程
什么是存储过程stored procedure允许将运行于数据库层中的持久性逻辑与运行于中间层的商务逻辑有效地分离开来。这种分离可以降低整个应用程序的复杂性,并提供其重用性、安全性、性能和可伸缩性。它非常类似于Java语言的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存,这样下次执行的时候直接使用缓存中的语句,这样就可以提高存储过程的性能。但是,妨碍存储过程广泛使用的一个主...转载 2018-06-13 11:20:17 · 4419 阅读 · 0 评论