Datos geográficos-administrativos de Chile en Java

Una funcionalidad común cuando hacemos aplicaciones tiene relación con la posibilidad de escoger una ubicación en un país (en nuestro caso Chile.) Esto se puede hacer de muchas formas: datos en una base de datos, cargados en un archivo en algún formato dentro de nuestra aplicación o simplemente cargar la información como código estático. Para el caso de información geográfica-administrativa personalmente prefiero la última alternativa debido a lo poco que cambia esta información y al performace que normalmente queremos de este tipo de código que se usa con frecuencia en una aplicación.

Para facilitar esta tarea, tengo disponibles para público tres Enums en Java con información de región, provincia y comuna.

Github

Pueden encontrar el código aquí.

Maven/Gradle

Pueden usar directamente los binarios agregando esta configuración en su build.gradle:

repositories {
  jcenter()
  maven {
    url 'https://mymavenrepo.com/repo/RsIzk5ozSSaqZE2h2UZJ/'
  }
}

dependencies {
  compile 'io.rebelsouls.lib:chile-data:1.1'
}

Ejemplo

Una forma fácil de saber cómo se usa es mirar a las pruebas unitarias. Dejo aquí parte de las pruebas:

	@Test
	public void testGetProvinciaFromComuna() {
		assertEquals(Provincia.Tocopilla, Comuna.Tocopilla.getProvincia());
		assertEquals(Provincia.Tocopilla.getId(), Comuna.Tocopilla.getIdProvincia());
	}
	
	@Test
	public void getRegionFromProvincia() {
		assertEquals(Region.Biobío, Provincia.Bio_Bío.getRegion());
		assertEquals(Region.Biobío.getOrdinal(), Provincia.Bio_Bío.getRegion().getOrdinal());
		assertEquals(Region.Biobío.getId(), Provincia.Bio_Bío.getIdRegion());
	}
	
	@Test
	public void shouldGet2ProvinciaFromAricaRegion() {
		assertEquals(2, Region.Arica_y_Parinacota.getProvincias().size());
	}

En breve publicaré un post con un tutorial para publicar esta información como una API REST/Json con Spring Boot 2.

Agregar un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *