Skip to content

Instantly share code, notes, and snippets.

View jdmr's full-sized avatar

J. David Mendoza jdmr

View GitHub Profile
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
@jdmr
jdmr / Bootstrap.java
Created November 9, 2012 17:07
Spring Bootstrap Configuration
package edu.swau.forms.utils;
import edu.swau.forms.dao.RoleDao;
import edu.swau.forms.dao.UserDao;
import edu.swau.forms.model.Role;
import edu.swau.forms.model.User;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationListener;
@jdmr
jdmr / ContextFinalizer.java
Created November 9, 2012 17:00
Context Finalizer Configuration
package edu.swau.forms.utils;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Enumeration;
import java.util.Set;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationListener;
@jdmr
jdmr / ProductoController.groovy
Created January 23, 2012 22:51
ProductoController
def nuevo() {
def producto = new Producto(params)
producto.iva = new BigDecimal(params.iva)
producto.save()
}
@jdmr
jdmr / DominioService.groovy
Created January 6, 2012 15:23
Groovy Transaction Service
class DominioService {
static transactional = true
//Método transaccional
def metodo1() {
// código dentro de la transacción
}
// Método transaccional 2
def metodo2(param1, param2) {
@jdmr
jdmr / transaction.groovy
Created January 6, 2012 15:20
Groovy Transaction
Dominio.withTransaction {
// bloque dentro de la transacción
}
@jdmr
jdmr / ShowImageController.groovy
Created January 6, 2012 15:14
Groovy Show Image Controller
def imagen = {
def imagen = Imagen.get(params.id)
log.debug "Mostrando imagen ${imagen?.nombre}"
response.setHeader("Content-disposition", "attachment; filename=${imagen?.nombre}")
response.contentType = imagen?.tipoContenido
byte[] archivo = imagen?.archivo
response.contentLength = imagen?.tamano
response.outputStream << imagen.archivo
}
@jdmr
jdmr / UploadController.groovy
Created January 6, 2012 15:13
Groovy Upload File Controller
def upload = {
def f = request.getFile('myFile')
if (!f.empty) {
def imagen = new Imagen(
nombre : f.originalFilename
, tipoContenido : f.contentType
, tamano : f.size
, archivo : f.bytes
).save()
response.sendError(200,'Done')
@jdmr
jdmr / upload.gsp
Created January 6, 2012 15:08
GSP upload file
<g:form action="upload" method="post" enctype="multipart/form-data">
<input type="file" name="myFile">
<input type="submit">
</g:form>
@jdmr
jdmr / Image.groovy
Created January 6, 2012 15:05
Groovy Image Domain
class Imagen {
String nombre
String tipoContenido
Long tamano
byte[] archivo
static constraints = {
nombre(maxSize:64,nullable:true)
tipoContenido(maxSize:64,nullable:true)
tamano(nullable:true)