Existen 1343300... frameworks para desarrollar con Java y la lista sigue creciendo. En este post veremos una lista de micro framework que deberíamos conocer.
Mostrando entradas con la etiqueta spark. Mostrar todas las entradas
Mostrando entradas con la etiqueta spark. Mostrar todas las entradas
martes, 10 de septiembre de 2019
viernes, 1 de febrero de 2019
Un sencillo servicio usando Spark Framework y Gson
En ésta ocasión crearemos un servicio REST. Para ello usaremos:
- Gradle
- Spark Framework
- Gson
Crearemos una clase Departamento.java con dos atributos nombre y responsable. Un método que convertirá una lista de tipo Departamento a formato JSON.
Nuestro archivo build.gradle lucirá así:
Nuestro archivo build.gradle lucirá así:
plugins { id 'java' id 'application' } mainClassName = 'com.codemonkey.Main' dependencies { compile "com.sparkjava:spark-core:2.7.2" compile group: 'com.google.code.gson', name: 'gson', version: '2.8.5' testCompile group: 'junit', name: 'junit', version: '4.12' } repositories { jcenter() } project.configurations.compile.resolvedConfiguration.resolvedArtifacts.each { println ' [Dependencias] ' println 'artifact: '+it.name // << the artifact name println 'referencia: '+it.file // << the file reference println '**************************' } task listar << { println "Hoy es "+new Date() }
Nuestra clase Departamento.java luce así:
package com.codemonkey.model; public class Departamento { private String nombre; private String responsable; public Departamento() { } public Departamento(String nombre, String responsable) { super(); this.nombre = nombre; this.responsable = responsable; } public String getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre = nombre; } public String getResponsable() { return responsable; } public void setResponsable(String responsable) { this.responsable = responsable; } @Override public String toString() { return "{nombre:" + nombre + ", responsable:" + responsable + "}"; } }
Nuestra clase principal Main.java :
package com.codemonkey; import static java.lang.System.out; import java.util.Arrays; import java.util.List; import static spark.Spark.*; import com.codemonkey.model.Departamento; import com.google.gson.Gson; public class Main { public static final int STATUS = 200; public static final String TIPO = "application/json"; public static void main(String[] args) { List<Departamento> departamentos = Arrays.asList(new Departamento("Informatica","Ramon_Romero") , new Departamento("Contabilidad","Viridiana_Gomez"), new Departamento("Recursos_Humanos","Ana_Lilia_Gutierrez")); out.println(departamentos.toString()); //http://localhost:4567/departamentos get("/departamentos", (req, res)->{ res.status(STATUS); res.type(TIPO); return departamentos.toString(); }, new Gson()::toJson); } }
//Construimos: $ gradle build //Ejecutamos: $ gradle run
Abrimos el navegador en http://localhost:4567/departamentos
Links:
https://es.wikipedia.org/wiki/Gson
http://sparkjava.com/
https://codemonkeyjunior.wordpress.com/2019/01/24/gson-de-clase-a-json/
Suscribirse a:
Entradas (Atom)
Jai un lenguaje de programación inspirado en C++
Hoy hablaremos de un nuevo lenguaje de programación llamado Jai . Se trata de un lenguaje de programación que está desarrolland...
-
Progress ABL es un lenguaje de programación vinculado al entorno Progress OpenEdge , su base de datos y las utilidades que lo rodean. Es s...
-
Claude Code es una herramienta de inteligencia artificial creada por Anthropic que funciona directamente en la terminal. Sirve para acele...
-
Ionic es un framework que permite crear aplicaciones móviles híbridas. Éstas aplicaciones son las que emplean tecnologías como HTML, CSS ...
Etiquetas
- .NET
- 100
- 2026
- abl
- abstract
- abstractas
- activemq
- ada
- agente
- agile
- akka
- algoritmos
- almacenados
- alternativa
- android
- angular
- angularjs
- apache
- apache-camel
- apache-mesos
- apache-poi
- apex
- api
- appserv
- aprender
- aprender java
- aprender jsf
- aprender python
- aprendizaje
- area
- args
- aserciones
- asm
- asp
- assembly
- assert
- automatización
- awk
- aws
- ayuda
- azure
- backend
- ballerina
- base de datos
- bases de datos
- bash
- bat
- bd
- beam
- beef
- bigquery
- biotipo
- bitacora
- bitcoin
- bleam
- blockchain
- blog
- bq
- bucket
- bundle
- c
- c#
- c++
- c3
- calculadora
- calculo
- camel
- case
- cassandra
- celsius
- ceylon
- cgi
- charp
- charts
- chatgpt
- cherrypy
- chino
- cibersecurity
- clang
- clases
- claude code
- cli
- cliente
- clojure
- closures
- cloud
- cmd
- cmd.bat
- coalesce
- cobol
- codeblocks
- codeigniter
- codes
- código
- códigos
- comando
- comandos
- commit
- comparativa
- compartir
- compilador
- compile
- composer
- comprobación
- computación
- computing
- conceptos
- concurnas
- concurrente
- condicionales
- conectividad
- configuration
- consejos
- const
- constantes
- consultas
- contenedores
- contenedores web
- control de versiones
- conversion
- conversor
- convertidor
- copilot
- core
- corsera
- couchdb
- cpan
- cplus
- cpp
- cpp-httplib
- crear
- cripto
- criptomoneda
- crow
- CrowdStrike
- crystal
- csharp
- cshtml
- css
- css3
- csv
- cte
- curso
- d
- dancer2
- dapper
- datastage
- datos
- deepseek
- delphi
- deploy
- desarrollo
- determinar
- dev c++
- developer
- devops
- días
- directivas
- disparejo
- distribuido
- django
- dlang
- doc
- docker
- docker-swarm
- dockerfile
- document
- documentación
- documental
- dotnet
- driver
- dsl
- dylan
- easyphp
- eclipse
- eclipse foundation
- eclipse y scala
- economica
- editor
- eip
- ejb
- ejecutar
- ejemplos
- ejemplos cpp
- ejemplos de csharp
- ejemplos de scala
- ejemplos java
- ejemplos python
- ejmeplo
- elixir
- elixir.
- en línea
- encapsulación
- ensamblador
- entityframework
- enum
- erlang
- error
- errores
- es6
- escribir
- esproc
- esprocsqpl
- estructuras
- ethereum
- euler
- excel
- excepciones
- expando
- export
- express
- externa
- f#
- faces
- fahrenheit
- feliz año
- fetch
- filosofía
- firebase
- flask
- foreach
- framework
- fsharp
- funcional
- funciones
- functions
- futuro
- gcc
- gcp
- geany
- gem
- gemfile
- generador de proyectos
- genie
- gestor de proyectos
- github
- glassfish
- gleam
- gnu
- go
- golang
- google web toolkit
- gosu
- graalvm
- gradle
- grain
- grapes
- graphql
- graven
- grok
- grooscript
- groovy
- groovyeConsole
- grpc
- gson
- gui
- gwt
- gwtext
- hashicorp
- hashmap
- haskell
- haxe
- headers
- helidon
- helm
- herencia
- hibernate
- hola
- hola en ceylon
- horoscopo
- HTA
- html
- html5
- http
- http-server
- http/2
- ia
- iaas
- iac
- ibm
- IDE
- ide scala
- if
- ifnull
- imagen
- imc
- import
- importar
- ingeniería
- iniciar glassfish
- iniciar tomcat
- inicio
- inicio en ceylon
- IntelliJ IDEA pycharm
- interface
- interfaces
- interfaz
- interna
- interoperabilidad
- interprete
- interview
- inversión de control
- inyección de dependencias
- ionic
- ios
- jabaco
- jai
- jakartaee
- java
- java swing
- java y ceylon
- JAVA_HOME
- javadoc
- javaee
- javascript
- javaserver
- jax-rs
- jaxb
- jdbc
- jdbi
- jdk
- jdk8
- jee
- jpa
- jpql
- jquery
- jre
- jruby
- jscript
- jsf
- jsni
- json
- juego
- julia
- jvm
- jvm y ceylon
- jython
- k8s
- kafka
- kanban
- katas
- kate
- koltin
- kotlin
- ktor
- kubectl
- kubernetes
- la path
- langchain
- langchain4j
- laravel
- learn
- lectura
- lenguaje
- lenguaje scala
- lenguajes
- let
- leyes
- librería
- libro
- linq
- linux
- list
- lista
- listas
- livescript
- llm
- llvm
- logger
- lua
- macro
- major
- mapas
- mariadb
- maven
- maven y eclipse
- mensajería
- mensajes
- menú
- mercurial
- messagebox
- metaClass
- micronaut
- microsoft
- minilux
- minimal api
- mix
- mobile
- modularidad
- módulo
- mojo
- mojolicious
- mongo
- mongodb
- mono
- monodevelop
- moonbit
- ms-dos
- mu
- mulesoft
- mvc
- mybatis
- mysql
- n8n
- native images
- neo4j
- netbeans
- nexus
- ng
- nicon notify
- nimrod
- nlog
- node
- nodejs
- nomad
- nosql
- notificaciones
- npm
- nube
- nuevo
- nuget
- nullable
- nullif
- numericas
- ocaml
- okhttp3
- ollama
- online
- openai
- openclaw
- opencode
- opendylan
- openedge
- operaciones
- oracel
- oracle
- orientación a objetos
- orm
- otp
- owasp
- paas
- paas iaas
- package
- packages
- padrino
- paradigma
- pascal
- path groovy
- path java
- patrones de coincidencia
- patrones de diseño
- pattern matching
- pdf-parser
- perl
- phoenix
- php
- pl/1
- plot
- plsql
- pom.xml.build.gradle
- poo
- powershell
- pregunta
- problema
- problemas al ejecutar programa en ceylon
- procedimientos
- procedures
- programa
- programacion
- programación
- programador
- programadores
- programar
- programas
- programas java
- programming
- progress
- prompt engineering
- proto
- protobuff
- protocolos
- proyectos maven
- prueba
- pseint
- pubsub
- pulsaciones
- pyramid
- python
- pyzenity
- quarkus
- questions
- r
- rabbitmq
- reactiva
- rebar3
- record
- recursos
- regex
- regiones
- remix
- repl
- replace
- repositorios
- REST
- RESTEasy
- reverse
- romanos
- ruby
- run
- rust
- ruta
- saas
- sanic
- sap
- sas
- sbt
- scala
- scottplot
- scripting
- scripts
- scrum
- sdkman
- security
- seguridad
- semántica
- sentencias
- serilog
- servidor
- shell
- show
- simplej
- sinatra
- singleton
- sintaxis
- sitios
- slim
- sms
- smslib
- soap
- socket.io
- solidity
- solución
- spark
- spl
- spring
- spring framework
- spring-boot
- spyder
- sql
- standard
- storage
- stored
- strawberry
- struts
- style
- svn
- swagger
- swift
- symfony
- system
- tapestry
- tarot
- tdd
- técnicas
- terminal
- terraform
- the maven integration requires that eclipse be running in a jdk
- tiempo
- tips
- tomcat
- top-down
- tornadoweb
- trailer
- tratamiento xml
- triggers
- turbogears
- tutoriales
- type
- typescript
- udemy
- udf
- unitarias
- unsupported
- usar jdk
- uso
- uwamp
- variables
- vba
- vbscript
- ventanas
- verificar
- version
- version_52.0
- versiones
- vertx
- vibecoding
- videojuegos
- vistazo
- visual code
- visual csharp
- visual studio
- vite
- vscode
- vulnerabilidades
- wampserver
- wasm
- web
- web2pybottle
- webapi
- webassembly
- webhooks
- websharper
- websocket
- wildfly
- window
- windows
- windows-services
- wisp
- work-services
- wsl
- WSO2
- xampp
- xml
- xunit
- yaml
- youtube
- zenity
Archivo del blog
-
►
2025
(83)
- ► septiembre (7)
-
►
2024
(58)
- ► septiembre (1)
-
►
2023
(12)
- ► septiembre (1)
-
►
2022
(10)
- ► septiembre (1)
-
►
2021
(26)
- ► septiembre (1)
-
►
2020
(9)
- ► septiembre (2)
-
►
2019
(26)
- ► septiembre (3)
-
►
2015
(24)
- ► septiembre (4)
-
►
2014
(36)
- ► septiembre (1)
-
►
2013
(40)
- ► septiembre (5)
-
►
2012
(46)
- ► septiembre (3)

