Nessa publicação estarei anexando uma classe Java com alguns métodos uteis para redimensionar e comprimir imagens, não considerem essa classe como algo concreto, mas sim como um guia básico para essas funcionalidades. Caso alguém tenha duvidas como carregar um BufferedImage basta usar o ImageIO, segue um exemplo: