繁体   English   中英

带有Java Rest Web服务的手动DbConnection(球衣)

[英]Manual DbConnection with Java Rest Webservice (jersey)

我想知道是否有人可以帮助我解决一个小问题。 我正在尝试使用Jersey创建Java的restfull服务。

但是我找不到关于如何进行手动数据库连接的任何示例。 而且,如果这样做,则在查询数据库时连接将返回空指针。

public DbConnection()
{
    try 
    {
        // This will load the MySQL driver, each DB has its own driver
        Class.forName("com.mysql.jdbc.Driver");
        // Setup the connection with the DB
        connection =     DriverManager.getConnection("jdbc:mysql://url/team_staging?"
                        + "user=X&password=X");
    }
    catch (ClassNotFoundException ex) 
    {
        Logger.getLogger(DbConnection.class.getName()).log(Level.SEVERE, null, ex);
    } 
    catch (SQLException ex) 
    {
        Logger.getLogger(DbConnection.class.getName()).log(Level.SEVERE, null, ex);
    }
}

有人可以在这里指出正确的方向吗? 我不想使用任何ORM。

我发现很难在netbeans中没有休眠或自动生成的REST服务的情况下找到好的示例。

我的问候,Axl

我认为您避免使用ORM解决方案的本能很好。

您正在编写一个Web服务,这意味着它至少部署在Servlet / JSP引擎(例如Tomcat)或完整的Java EE应用服务器上。 我将学习如何为您的应用服务器创建JNDI连接池。

您想外部化连接参数(例如驱动程序,URL等)

我看不到该连接的班级成员。 退出控制器时会发生什么? 是否超出范围? 那将解释NPE。

我会这样写:

package persistence;

public class DatabaseUtils {
    private DatabaseUtils() {}

    public static Connection getConnection(String driver, String url, String username, String password) throws Exception {
        Class.forName(driver);
        return DriverManager.getConnection(url, username, password);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM