An open API service indexing awesome lists of open source software.

https://github.com/jbilander/mm-atgimport

An import application that polls a soap/xml-webservice with cronjobs in java and stores to mysql through pure jdbc/prepared-statements
https://github.com/jbilander/mm-atgimport

Last synced: 11 months ago
JSON representation

An import application that polls a soap/xml-webservice with cronjobs in java and stores to mysql through pure jdbc/prepared-statements

Awesome Lists containing this project

README

          

Technologies used in this project:


  • Java 9 with Modules

  • Webservice client calls (polling with cronjobs) using JAX-WS in built-in SDK (java.xml.ws)

  • Using MariaDbPoolDataSource in MariaDB Connector/J 2.2.3 jdbc-driver for MySQL

  • Fast MySQL-connection through localhost Unix-socket/Pipe-connection (Linux/Windows) (app and db on same machine!)

  • Thread-safe jobs

  • Cronjobs in java using CronThreadPoolExecutor that extends ScheduledThreadPoolExecutor

  • CronExpressions read from properties-file (easily changed)

  • Package with Maven 3 "package"-feature as a jar (mm-atgimport-1.0-SNAPSHOT.jar)

  • Pure JDBC with Prepared Statements and transaction-handling/rollbacks

  • Clean graceful shutdown-hook letting the ongoing jobs finish before exit

  • Simple logging to file with java.util.logging

  • Run as a standalone application with:



mm-atgimport\target\release>java --add-modules=java.xml.ws -jar mm-atgimport-1.0-SNAPSHOT.jar
mars 20, 2018 2:18:54 EM com.creang.JobScheduler run
INFO: Running JobScheduler
CorePoolSize5
CorePoolSize6
CorePoolSize7
CorePoolSize8
CorePoolSize9
CorePoolSize10
mars 20, 2018 2:21:00 EM com.creang.task.UpdateRaceAndRaceCardTask run
INFO: UpdateRaceAndRaceCardTask: Start
...