You can add an image to JLabel and strech the JLabel like background.
There is a simple example :
ImageIcon icon = createImageIcon("images/middle.gif");
. . .
JLabel label1 = new JLabel("Image and Text", icon, JLabel.CENTER);
label1.setSize(frame width, frame height);