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
- Host: GitHub
- URL: https://github.com/jbilander/mm-atgimport
- Owner: jbilander
- Created: 2018-03-20T12:04:03.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-04-10T05:25:17.000Z (about 8 years ago)
- Last Synced: 2025-03-31T11:14:00.726Z (over 1 year ago)
- Language: Java
- Homepage:
- Size: 90.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
...