Skip to content

Commit 5ce179b

Browse files
author
jbilander
committed
added a readme file
1 parent a1f5d23 commit 5ce179b

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

README.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
h1. Prerequisites
2+
3+
* Java SDK 9 Early Access (or later)
4+
* IntelliJ IDEA 2017.1 (or later with support for Java 9 modules)
5+
6+
h1. Technologies used
7+
8+
* JavaFX with Java 9
9+
* SQLite-native (as backend db, native libs included in sqlite-jdbc resources folder)
10+
* Xerial SQLite JDBC Driver (v. 3.20.0)
11+
12+
h1. About
13+
14+
This demo application is built to show you how you can structure your desktop JavaFX app similar to the [Robotlegs](http://www.robotlegs.org/) approach.
15+
The structure in this app is highly inspired by Yennick Trevels [blog post](http://yennicktrevels.com/blog/2013/10/15/javafx-structuring-your-application-overview/)
16+
with using direct calls with interfaces over events because that makes it easier to follow the flow of your application. However this example does
17+
not use any dependency injection framework such as guice since I wanted to keep it as pure Java 9 as possible for instructional purposes.
18+
This app is also built with the new module approach in Java 9. The UI is built with pure Java code instead of using fxml since I prefer
19+
it that way giving me more control over my code. Also the UI is built to be resizable meaning the UI-components adapt their size when
20+
the main application windows is being resized.
21+
22+
h1. Backend
23+
24+
SQLite with ([Xerial SQLite JDBC Driver](https://github.com/xerial/sqlite-jdbc)) is used as a backend with pure JDBC-calls for instructional purpose.
25+
The Xerial source is included as a module named *sqlite-jdbc* in the application.
26+
27+
h1. ToDo
28+
29+
* Add a logging framework module
30+
* Add jOOQ as a module (and switch from pure JDBC-calls)
31+
32+
h1. Output
33+
34+
The application creates and populates a JavaFx-structure-demo.db file under the user home directory, System.getProperty("user.home").
35+
36+
h1. Screenshot of application
37+
38+
<img src="https://github.com/jbilander/JavaFx-structure-demo/app_screenshot.png">
39+
40+
h1. Usage
41+
42+
* compile with Java 9 SDK
43+
* run with:
44+
> java -m com.example/com.example.Main
45+

app_screenshot.png

67.9 KB
Loading

0 commit comments

Comments
 (0)