连接GWT和PostgreSQL

时间:2013-07-24 06:25:51

标签: google-app-engine postgresql gwt

我一直在与GWT和appengine合作。现在我想将我的数据库更改为关系数据库。由于架构架构,我更喜欢PostgreSQL而不是MySQL。

我已经在使用JDBC的项目中工作,但我无法在我的appengine项目中使用它。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我认为你错了。如果您希望后端连接到JDBC,则必须禁用appengine。

我建议使用google eclipse插件创建一个新的web项目,但不要使用appengine。然后复制所有源文件并从那里开始。

我让我的班级连接到PostgreSQL vua JDBC

public class ConexionBD
{
    private Vector <Connection> connections = new Vector<Connection>();

    protected int cantCon=3;
    private static ConexionBD pool;
    private ConexionBD(){


        for (int i= 0; i< cantCon;i++)
            connections.add(connect());
    }


    public static ConexionBD getPoolConnection(){
        if (pool== null)
            pool =new ConexionBD();
        return pool;
    }
    private Connection connect()
    {
        try
        {
            //Setear driver
            Class.forName ("org.postgresql.Driver").newInstance ();
            Connection con = DriverManager.getConnection ("jdbc:postgresql://localhost:5432/llevomisnegocios","postgres","root");

            return con;
        }
        catch (SQLException e){
            System.out.println("Mensaje Error al Conectar: " + e.getMessage());
            //System.out.println("Stack Trace: " + e.getStackTrace());
            return null;
        }catch (Exception ex){
            System.out.println("Mensaje Error al Conectar: " + ex.getMessage());
            //System.out.println("Stack Trace: " + ex.getStackTrace());
            return null;
        }
    }


    public void closeConnections(){
        for (int i=0; i<connections.size();i++)
        {
            try
            {
                connections.elementAt(i).close();
            }
            catch(Exception e)
            {
                System.out.println("Mensaje Error: " + e.getMessage());
                System.out.println("Stack Trace: " + e.getStackTrace());
            }
        }
    }
    public  Connection getConnection(){
        Connection c = null;
        if (connections.size()>0)
            c = connections.remove(0);
        else{
            c = connect();
            System.out.println("PoolConnection: Conexion Exitosa con la BD");
        }
        return c;
    }
    public void realeaseConnection(Connection c){
        connections.add(c);
    }




}