Erro utilizando PreparedStatement() =/

Senhores, estou utilizando o PreparedStatement(). Ao utilizar o metodo setString( 1, “tabela”), o comando não seta o nome da tabela na string associada ao PreparedStatement(). Por favor, alguem poderia me ajudar?
Segue o codigo das 3 classes abaixo que eu utilizado para esse fim:

package br.dao.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;


import br.dto.Base;
import br.dao.ConnectionManager;

public class TestaConnectionManager {
	static Base base = null;
	
	private static final String URL_BASE_DADOS_PADRAO = "jdbc:oracle:thin:@";
	
	public static void main ( String args[]){
		base = new Base();
		StringBuffer stringBuffer = new StringBuffer();
		
		base.setUsuario("USUARIO");
		base.setSenha("SENHA");
		base.setHost("IPPPPP");
		base.setNome("DATABASENAME");
		base.setPorta("PORTA");
		
		if ( ! montaQuery (stringBuffer) ) {
			System.out.println("Erro ao montar querry");
		}
		
		if ( testaConexao(stringBuffer) ){
			System.out.println("Conectou com sucesso");
			System.exit(0);
		}else{
			System.out.println("Falha na conexao");
			System.exit(1);
		}
	}
	private static boolean montaQuery(StringBuffer stringBuffer){
		try{
			stringBuffer.append(" SELECT *");
			stringBuffer.append(" FROM   ? ");
			return true;
		}catch(Exception ex){
			System.err.println("Erro inesperado ao montar querry: "+ex.getMessage());
		    return false;
		}
	}
	
	private static boolean testaConexao(StringBuffer stringBuffer){
		ConnectionManager connectionManager = 
			new ConnectionManager(montaURL(),base.getUsuario(),base.getSenha());
		try{
			//cria a conexao
			Connection con = connectionManager.getConnection();
			DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
			
			/*Movimentação com PreparedStatement*/
			PreparedStatement pstmt;
			pstmt = con.prepareStatement( stringBuffer.toString() );
			
		
			System.out.println("Saida: "+base.getTable());
			
			pstmt.setString( 1, base.getTable() );
			
			
			JOptionPane.showMessageDialog(null,"SQL: "+stringBuffer.toString(), "Saida", JOptionPane.INFORMATION_MESSAGE);
			
			ResultSet rs = pstmt.executeQuery();
			
			while ( rs.next() )
			{
				String paut = rs.getString("TABLE_NAME");
				JOptionPane.showMessageDialog(null, "Saida", "Conteúdo da tabela coluna 2:\n"+
				paut, JOptionPane.INFORMATION_MESSAGE);
			}
			return true;
		}catch(SQLException sqlex){
			System.err.println("Erro inesperado: "+sqlex.getSQLState());
			sqlex.printStackTrace();
			System.err.println(sqlex.getMessage());
			return false;
		}
	}
	
	private static String montaURL() {
		StringBuffer url = new StringBuffer(URL_BASE_DADOS_PADRAO);
		url.append(base.getHost());
		url.append(":");
		url.append(base.getPorta());
		url.append(":");
		url.append(base.getNome());
		
		return url.toString();		
	}

}

Base.java:

package br.dto;

public class Base {
	
	private String nome;
	private String host;
	private String porta;
	private String usuario;
	private String senha;
	private String table = "processos_automatizados";
	
	public String getTable(){
		return table;
	}
	public String getHost() {
		return host;
	}
	public void setHost(String host) {
		this.host = host;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getPorta() {
		return porta;
	}
	public void setPorta(String porta) {
		this.porta = porta;
	}
	public String getSenha() {
		return senha;
	}
	public void setSenha(String senha) {
		this.senha = senha;
	}
	public String getUsuario() {
		return usuario;
	}
	public void setUsuario(String usuario) {
		this.usuario = usuario;
	}
	
}
package br.dao.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.swing.JOptionPane;

public class ConnectionManager {
	
	private String url;
	private String usuario;
	private String senha;	
	
	/**
	 * Method Construct
	 */	
	public ConnectionManager(String url, String usuario, String senha) {
		this.url = url;
		this.usuario = usuario;
		this.senha = senha;				
	}	
	
	public Connection getConnection() throws SQLException {
		
		Connection con = null; 
		try {
			DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
			
			con = DriverManager.getConnection (
				url, usuario, senha);
						
		} catch (SQLException e) {
			JOptionPane.showMessageDialog(null, "Erro", "Erro ao tentar conexao\nURL:"+url+
				" \nUSUARIO:"+usuario+" \nSENHA:"+senha, JOptionPane.INFORMATION_MESSAGE);
		
			throw new SQLException();
		}		
		return con;
	}
}

Obrigado.

PreparedStatement só funciona para valores, não para nomes de objetos no banco.