Java: StringBuffer y concatenación

Estoy usando StringBuffer en Java para unir cadenas juntas, así:

StringBuffer str = new StringBuffer();

str.append("string value");

Me gustaría saber si hay un método (aunque no encontré nada en un vistazo a la documentación) o alguna otra forma de agregar "relleno".

Dejame explicar; Cada vez que agrego algo a la cadena, quiero agregar un espacio al final, de esta manera:

String foo = "string value";
str.append(foo + " ");

y tengo varias llamadas para anexar ... y cada vez, quiero agregar un espacio. ¿Hay una manera de configurar el objeto para que agregue un espacio automáticamente después de cada anexo?

EDITAR -

String input
StringBuffer query = new StringBuffer();
Scanner scanner = new Scanner(System.in);
scanner.UseDelimiter("\n");

do {
   System.out.println("sql> ");

   input = scanner.next();

   if (!empty(input)) query.append(input);

   if (query.toString().trim().endsWith(";")) {
         //run query
   }
}
while (!input.equalsIgnoreCase("exit");

Aunque usaré StringBuilder como sugiere grom, pero así es como se ve el código ahora

Respuestas a la pregunta(6)

Su respuesta a la pregunta