1-noviembre-2016
admin

Generar modelo entidad relación a partir de una base de datos MySQL

Para obtener automáticamente un modelo entidad relación a partir de una base de datos MySQL se puede utilizar la herramienta MySQL Workbench.

Modo de uso:
1 – Hay que descargarsela e instalarla.

2 – Nos vamos al menú superior Database y seleccionamos la opción de Reverse Engineer (Ingeniería inversa).

3 – Rellenamos los datos de conexión a la BD en la ventana que se nos abrirá.

4 – Se va siguiendo las distintas ventanas que van saliendo dando a next. Ellas nos irá pidiendo la bd de la que se quieren extraer los datos, los objetos a extraer,..

5 – Si todo va bien al final nos mostrará el modelado con las tablas pedidas.


24-octubre-2016
admin

i18n con Spring Boot

Paso 1: Añadir los properties con las keys en src/main/resources/ uno por cada idioma tal que así:
messages.properties (este será el de por defecto)
messages_es.properties

Paso 2: Hay que configurar la aplicación para que la request obtenga el locale. Para ello se pueden añadir estos beans:

	@Bean
	public LocaleResolver localeResolver() {
	    return new CookieLocaleResolver();
	}
	@Bean
	public LocaleChangeInterceptor localeChangeInterceptor() {
		LocaleChangeInterceptor lci = new LocaleChangeInterceptor();
		lci.setParamName("lang");
		return lci;
	}
	@Override
	public void addInterceptors(InterceptorRegistry registry) {
		registry.addInterceptor(localeChangeInterceptor());
	}

Paso 3: Modo de uso.
Desde un controller de Spring basta con inyectar un MessageSource y ya podríamos usarlo.

        .....
	@Autowired
	private MessageSource messageSource;

	@RequestMapping(value = "/list", method = RequestMethod.GET)
        public String listItems(Model uiModel, Pageable page, HttpServletRequest request){
             String msg = messageSource.getMessage(request.getParameter("key.successMessage")
                                                     .toString(),null,LocaleContextHolder.getLocale());
             ....
        }
        ....

Desde el front-end con thymeleaf bastaria con usar el #{key.successMessage}

< html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
	xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"
>
....
< span th:text="#{key.successMessage}">
....
5-octubre-2016
admin

Bower

Bower es un gestor de dependencias para el desarrollo web frontend. Facilita la tarea de instalar y mantener al día las distintas librerías y frameworks del proyecto.

Instalación:
Primero se necesita instalar node.js. Se descarga de https://nodejs.org/ y se instala el *.msi en windows.
Puedes comprobar que se ha instalado bien ejecutando por consola el comando:

node -v



Después se instala git. Para ello hay que descargar y ejecutar https://git-scm.com/download/win



Por último se instala el bower. Para ello necesitamos el comando npm que ya nos instaló node.js.

npm install -g bower


Para crear por primera vez el archivo bower.json lo más cómodo es, desde la raíz de tu proyecto, lanzar el comando:

bower init

El fichero bower.json sera similar a este:

{
  "name": “Prueba Bower”,
  "version": "0.0.0",
  "authors": [
    "Yo "
  ],
  "dependencies": {
    "jquery": "~3.1.0"
  }
}

En “dependencies” se indican las distintas librerías y sus versiones. El símbolo ~ indica que bower instalará la 3.1.0 o una superior cuando salga siempre que sea de la 3.1.x

Guía de comandos de bower

26-septiembre-2016
admin

Crear una aplicación Spring-Boot

Paso 1 – Instalar maven
Se descarga la version de maven (3.0.5 o superior en este caso). Se mete el directorio bin al path.

Paso 2 – Instalar el wraper de maven para spring-boot. Ver https://github.com/takari/maven-wrapper
Se instala con este comando de maven: mvn -N io.takari:maven:wrapper
Luego para compilar se podría hacer (en lugar de mvn clean install):
./mvnw clean install or ./mvnw.cmd clean install

Paso 3 – Crear proyecto boot inicial.
Consiste en, primero, crear aplicacion en esta url: http://start.spring.io/
Y luego, montar aplicacion:

mvn eclipse:eclipse


Paso 3 – Correr la aplicación.
Dos opciones para lanzar la aplicación pueden ser:

//Con maven:	
mvn spring-boot:run. 
//Construyendo el jar:		
mvn clean package 
//Y haciéndolo correr con:	
java -jar target/nombre_jar.jar


18-septiembre-2016
admin

Crear una aplicación con gvNIX

gvNIX está basado en Spring Roo y te permite generar aplicaciones web java de manera muy rápida a partir de un esquema de base de datos. http://www.gvnix.org/

Instalación de gvNIX

Comandos a ejecutar para la creación de un proyecto

//Primero se configura la BD de la que luego se hará ingeniería inversa...
jpa setup --database MYSQL --provider HIBERNATE --databaseName mi_base_datos --hostName mi_ip --userName mi_usuario --password mi_contraseña
//Luego se puede comprobar si se ha realizaco la conexión bien
database introspect --schema nombre_de_mi_esquema
// si te dice que no encuentra el driver puedes instalarlo así
addon search mysql
//te deberia salir una lista con los drivers que puedes instalar para a continuación
addon install id --searchResultId xx    
//xx sería el codigo del driver mostrado en el listado que saca el anterior comando...
//En mi caso me dió problemas y el de mysql no me lo instaló bien así que lo instale a mano.
//Para ello me lo descargue y lo instalé con el siguiente comando:
osgi start --url file:///C:\\mysql-connector-java-5.1.18.jar
//Ahora ya se puede crear las entidades a partir de la BD.
database reverse engineer --schema nombre_de_mi_esquema --package ~.domain --includeTables "tab_*"
//se crea el negocio y la presentación para spring mvc
web mvc setup
web mvc all --package ~.web
web mvc finder all
//añadimos la internacionalización
web mvc language --code en
web mvc language --code es
//Seleccionamos el nivel de log
logging setup --level INFO

Hasta aquí ya tendriamos un el proyecto funcionando, podriamos ejecutarlo y ver como se pueden hacer las tareas crud con las pantallas con los estilos por defecto de gvNIX. Ver guia de estilos gvNIX.

Si quisiéramos cambiar la presentación para usar por ejemplo bootstrap deberiamos seguir a continuación los siguientes pasos:

// Añadimos jQuery al proyecto
web mvc jquery setup
// Instalamos Bootstrap
web mvc bootstrap setup
// Instalamos el componente datatables
web mvc datatables setup 
// Añadimos JQuery a todos los archivos
web mvc jquery all
// Se crea los datatables de todos los listados
web mvc datatables all
// Se actualiza bootstrap para que importe los ficheros datatables
web mvc bootstrap update
//Instalamos el security
security setup
// Seactualiza bootstrap para que importe los ficheros del security
web mvc bootstrap update
// Instalamos reports en el proyecto
web report setup
// Creamos un report 
web report add --controller ~.web.SampleController --reportName samplereport

Notas:
web mvc bootstrap setup
Este comando importará e instalará todos los recursos necesarios para utilizar bootstrap. Además, modificará la estructura de algunos tagx existentes para que funcionen correctamente con Bootstrap y modificará todas las vistas de la aplicación para que utilicen los tags de JQuery.

web mvc bootstrap update
Este comando permite regenerar de forma correcta todos los componentes importados por Bootstrap. En caso de una modificación incorrecta de estos componentes, podremos regenerarlos para que vuelvan a su estado inicial.



Documentación oficial versión 1.4.1


9-septiembre-2016
admin

Eliminar Spring Roo con eclipse

Para quitar Spring Roo de un proyecto que lo esté utilizando sin perder las funcionalidades que se tienen se deben seguir los siguientes pasos:

Paso 1: Eliminación de los aspectos del proyecto
Para ello seleccionamos el proyecto en el IDE -> pulsamos el botón derecho del ratón -> en el menú contextual seleccionamos la opción Refactor/Push In… -> tras pulsar el botón “OK” -> se eliminarán del proyecto las clases de los aspectos.

Paso 2: Eliminación de las anotaciones de las clases del proyecto.
Se realiza reemplazando las anotaciones de Spring Roo. Para ello, iremos a la opción del menú Search/Search/File Search -> en el campo con título “containing text” insertaremos la expresión regular “\n.*[@\.]Roo[^t_]+?.*$” (sin comillas) -> seleccionaremos las check: “Case sensitive” y “Regular expression” -> a continuación, pulsaremos el botón “Replace…” -> y, para finalizar, se mostrará un ventana que solicitará el nuevo texto, en donde pulsaremos el botón de aceptación.

Paso 3: Eliminación referencias del pom.
Se eliminan a mano todas las dependencias a Spring ROO existentes en el pom.xml.

Paso 4: Corregir errores del eclipse
Aparte es posible que haya que corregir algun error en el codigo generado en las clases con relaciones muchos a muchos. Tales como:
– crear método ‘getSerialversionUID’ en las clases,
– pasar los constructores a public
– quitar la propiedad ‘final’ de la clase
– quitar los ‘implements serializes’ repetidos
– añadir los métodos ‘hashcode’ y ‘equals’
– …
Se trata de errores que se solucionan rapido porque los va a ir sacando el eclipse.

Tras todo eso puedes probar tu proyecto ejecutando
mvn clean install jetty:run

31-agosto-2016
admin

Crear aplicación a partir de la Base de Datos con Spring Roo

Paso 1: Instalar Spring Roo
– En primer lugar necesitas tener instalado Java y Maven.
– A continuación te descargas Spring Roo de la página oficial.
– Se descomprime en un directorio y se añade al path. En windows seria añadir en el path $ROO_HOME\bin siendo $ROO_HOME el directorio donde lo has descomprimido.
– Para comprobar que se ha instalado correctamente podemos ejecutar directamente en la consola el siguiente comando.
roo quit
Si todo va bien debería mostrarnos el logo de Spring Roo.


Paso 2: Crear un proyecto de Spring Roo
Se puede crear de distintas formas:
– Con el STS se puede crear un proyecto de Spring Roo como tal.
– Con el eclipse también se podría añadiendo el plugin de Spring Roo.
– Y por último también podriamos utilizar directamente la consola para su creación.

De esta forma, los comandos para la creación de un proyecto a partir de una BD Mysql serían:

//Primero se configura la BD de la que luego se hará ingeniería inversa...
jpa setup --database MYSQL --provider HIBERNATE --databaseName nombre_de_mi_esquema --hostName ip_de_mi_mysql --userName mi_usuario --password mi_contraseña
//Luego se puede comprobar si se ha realizaco la conexión bien
database introspect --schema nombre_de_mi_esquema
// si te dice que no encuentra el driver puedes instalarlo así
addon search mysql
//te deberia salir una lista con los drivers que puedes instalar para a continuación
addon install id --searchResultId xx    
//xx sería el codigo del driver mostrado en el listado que saca el anterior comando...
//En mi caso me dió problemas y el de mysql no me lo instaló bien así que lo instale a mano.
//Para ello me lo descargue y lo instalé con el siguiente comando:
osgi start --url file:///C:\\mysql-connector-java-5.1.18.jar
//Ahora ya se puede crear las entidades a partir de la BD.
database reverse engineer --schema nombre_de_mi_esquema --package ~.domain --includeTables "tab_*"

Por último sería añadir el resto del negocio y la presentación. Para ello pongo dos ejemplos: MVC y JSF.

//Usando Spring MVC
web mvc setup
web mvc all --package ~.web
Usando JSF
web jsf setup --implementation --library --theme
web jsf all --package ~.web

Como nota decir que se lía algo con las tablas con clave primaria múltiple (hay que quitar unos errores que salen en los ficheros *.aj que crea).

Puedes probar a ejecutar el proyecto simplemente con la instrucción de manve
mvn clean install jetty:run


Documentación:
Ejemplo de creación de un proyecto con STS. Ver
Ejemplo de creación de un proyecto con el plugin de eclipse para Spring Roo. Ver

22-agosto-2016
admin

Error 1130 (HY000): Host ” is not allowed to connect to this MySQL server

Cuando al intentar conectar a un MySQL desde otro servidor te puede dar este error. Esto es debido a que no tiener permisos para acceder con el usuario que estas intentándolo desde tu host.

-
- Error 1130 (HY000): Host '' is not allowed to connect to this MySQL server
-

Por ejemplo si el usuario que estas usando es root, puedes comprobar desde que sitios se puede acceder utilizando esta select:

SELECT host FROM mysql.user WHERE User = 'root';

Si esa query no devuelve ningún resultado con tu ip, deberás añadirla. Para ello:

CREATE USER 'root'@'tu_ip' IDENTIFIED BY 'contraseña';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'tu_ip';
FLUSH PRIVILEGES;

Nota: si deseas dar permisos a todas las ips, en lugar de ‘tu_ip’ puedes poner ‘%’.

15-agosto-2016
admin

Reseteando a modo frábica el móvil Samsung S3 mini

En realidad vale para cualquier sansumg. Pongo un video donde lo explican bastante bien:

9-agosto-2016
admin

Actualizar el S.O. Android de tu móvil Samsung S3 mini

En realidad vale para cualquier sansumg. A modo de resumen:
– Se descargan e instalan los drivers de samsung en el pc.
– Se ejecuta el programa odin como administrador.
– Conectar el movil por usb en modo dowloading. Recordar que para entrar en ese modo es pulsando a la vez los tres botones del móvil, el del volumen hacia abajo.
– Seleccionar la opción PDA en odin y seleccionar la rom con la versión de android que queremos instalar y darle a start.

– Si al reiniciar se queda pillado en la pantalla de inicio hay que hacer un factory wipe. Para ello se arraca en modo recovery (se entra en ese modo pulsando a la vez los tres botones del móvil, el del volumen hacia arriba)
– Se selecciona wipe y se desliza la flecha.

– Por ultimo, en el caso de instalar una room mínima que no contenga las google apps habria que instalarlas. Para ello cuando arranque el móvil se debe copiar a la sd las gapps de la version de la room.
– Para instalar se entra en modo recovery y: install -> seleccionar el zip -> deslizar instalación

Algún video de la red:

Tanto los drivers como el programa odin puedes obtenerlos aquí.
Página roms android donde comenta sobre algunas roms con enlaces a ellas.

Páginas:«12345678...24»

Categorias

Linkedin