There are many ways to display images. You can use Graphics2D in Java APIs as given in this example of Thumbnailator. This is another detailed tutorial about displaying images.
Most of the features required in the project description can be done by using Thumbnailator. You can consult with the documents provided by Thumbnailator.
Thumbnailator has a Javadoc for you to look at descriptions of classes, interfaces, methods, etc. in the library. You can download thumbnailator-0.4.7-javadoc.zip and open its index.html in a web browser.