2

将 REST 服务与 Apache Tomcat 7 和 Jersey Jars 一起使用。

我正在开发一个android应用程序,它通过java中的REST服务获取并在服务器上发布一些数据。对于来自android客户端的每个请求,REST服务器打开数据库连接,执行查询,返回结果并关闭数据库连接..

public String postPerson(
            MultivaluedMap<String, String> personParams
            ) {

                 EmployeeData empD=new EmployeeData();
                 //Connecting with database on empty constructor

                 int id = personParams.getFirst(EMPLOYEE_ID);


                String employeeDepartment=empD.getDepartment(id);
                //Getting department name 

                empD.disconnectDb();

                return(empD);                                     
    }

上述场景运行良好,但响应时间不高。现在我想在 REST 服务启动时创建数据库连接,以减少对 android 客户端的响应时间。我怎样才能做到这一点????

4

2 回答 2

4

查看以下链接。我希望这些链接能解决您的问题,但请记住,永远不要在同一个数据库连接上执行并发事务。通过遵循该过程,您还可以在服务启动时建立与星号管理界面的连接。

http://www.programcreek.com/2009/07/put-database-connection-to-servletcontextlistener/

http://docs.oracle.com/cd/B15904_01/web.1012/b14017/filters.htm#i1000654

于 2013-02-20T21:28:59.920 回答
1

您需要使用连接池来增加响应时间,因为动态创建连接的成本很高。

Apache DBCP是一个很好的连接池库。

这是一个关于如何使用 Apache DBCP 使用连接池的示例

于 2013-02-01T06:33:00.220 回答