Note: The following Readme was written immediately after the completion of this project, in a state of frustration with Java documentation. I have since learnt a lot more about the language, and have less grudges against the community than I did at the time of writing.
Clone of the Flask tutorial demo blog. This is less of a README and more of a report on my experience of working on this project. I set out to make a clone of the demo blog from Flask's Python tutorial. I was already quite familiar with Flask when I started, and thought this would be a good way to familiarise myself with web development in Java. I was planning to do some further web development in Java and I also wanted to prepare myself better for the programming course I would be undertaking at university. Java is the language used in that course, so I wanted a bit of a headstart. Ultimately this just turned out to be a project filled with frustrations, but I will get into more details about that soon.
Since I was setting out to clone the Flask demo, I wanted to make a web application using the most minimalist tools available in Java. I eventually discovered that development in Java doesn't really work that way. I didn't want to use Spring at the time, or any of the other frameworks people mentioned online, as this did not match the Flask style I was trying to clone at all. This was my motivation for choosing to build the application using JDBC with SQLite, Servlets and JSP pages in Java EE, and JSP tags. This was all the external technology I used. Unlike SQLAlchemy with Flask, there does not appear to be any easy way of executing database commands in Java without directly passing in SQL syntax. Therefore I was forced to build my own interface to connect the database with the application. I think I did a reasonably good job of creating some classes for interfacing between the two, given my level of experience at the time, as well as unit tests to ensure the consistent and smooth operation of this library.
I didn't complete this project, as I was unable to work with JSP tags at the time to create a templating system similar to what Flask provides. If I had a better look at the documentation now, I would possibly be able to work it out, but I intend to use Spring next time, so I won't be facing this issue. This project remains as an interesting artifact of my learning process, as I started to get more familiar with the way things are done in Java.