Java 使用vaadin从数据库获取数据并显示在屏幕上

Java 使用vaadin从数据库获取数据并显示在屏幕上,java,vaadin7,Java,Vaadin7,我已经编写了这段代码,但在运行时,它会显示错误 sql命令未正确结束 我怎样才能修好它 数据库表UI public class DatabasetableUI extends UI { @Override protected void init(VaadinRequest request) { DatabaseTableScreen screen = new DatabaseTableScreen(); try { JDBCConnect

我已经编写了这段代码,但在运行时,它会显示错误

sql命令未正确结束

我怎样才能修好它

数据库表UI

public class DatabasetableUI extends UI {

    @Override
    protected void init(VaadinRequest request) {
DatabaseTableScreen screen = new DatabaseTableScreen();
        try {
            JDBCConnectionPool connectionPool = new SimpleJDBCConnectionPool( "oracle.jdbc.driver.OracleDriver", "jdbc:oracle:thin:@usadc-sdbxt21:1521:GFRWMUAT","user", "password");
            screen.populate("case_upload_history", connectionPool);
            } catch (SQLException e) {
                //System.out.println("Application");;
                throw new RuntimeException( e.getMessage());
                } enter code here
        setContent( screen);


        }
}
数据库表屏幕

public class DatabaseTableScreen extends VerticalLayout {private SQLContainer container;
    private Table table;
    public DatabaseTableScreen() {

        setMargin( true); 
        table = new Table();
        table.setPageLength( 10); 
        table.setEditable( true); 
        table.setSizeFull();


    enter code here
        //table.addGeneratedColumn("",new RemoveItemColumnGenerator());
        addComponent(table);

    }
    public void populate( String tableName, JDBCConnectionPool connectionPool) {
         QueryDelegate query = new TableQuery( tableName, connectionPool);
        try { 
             container=new SQLContainer(query);
            table.setContainerDataSource( container); 
        } catch (SQLException e) {
            throw new RuntimeException( e);
        }
    }
}

使用
TableQuery
构造函数的第三个参数,如下所示:

QueryDelegate query = new TableQuery( tableName, connectionPool, new OracleGenerator());

部分加粗,代码格式我想知道为什么会有反对票。答案完全正确,特别是在trincot编辑之后。向上投票。