1

您好,我正在尝试使用 jersey 实现宁静的 Web 服务。我想在其中建立与远程数据库的连接并进行一些DML操作。在这里我附上我的代码。请帮我为它创建客户端。我不知道我应该如何VO在任何客户那里处理这个问题。我想用这个连接对象来执行DML。是仅包含一个变量 ConnectionDbConnectioVO的简单变量,它是and 。先谢谢了。抱歉英语不好。如果需要,请向我询问更多信息。VOgetterssetters

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

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.Produces; 
import javax.ws.rs.core.MediaType;

import com.java.vo.DbConnectionVO;

import oracle.jdbc.pool.OracleDataSource;


@Path("/db")
public class DbConnection {

@Path("/conn")
@PUT
@Produces(MediaType.APPLICATION_JSON)
@Consumes({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})
public DbConnectionVO dbConnect(DbConnectionVO dbVO) throws Exception{

    try {
        Connection conn=null;
        String serverName = "12.36.25.21";
        String protocol="tcp";
        String sid="12";
        int portNo=1111;
        String userName="user";
        String password="pwd";
        OracleDataSource dataSource = null;

        Class.forName("oracle.jdbc.OracleDriver");

        dataSource = new OracleDataSource();
        dataSource.setDriverType("thin"); // type of driver
        dataSource.setServerName(serverName); // database server name
        dataSource.setNetworkProtocol(protocol); // network protocol
        dataSource.setDatabaseName(sid); // Oracle SID
        dataSource.setPortNumber(portNo); // listener port number
        dataSource.setUser(userName); // username
        dataSource.setPassword(password); // password
        conn = dataSource.getConnection();
        conn.setAutoCommit(false);


        dbVO.setConnection(conn);

    } catch (SQLException e) {
        throw e;
    } catch (Exception e) {
        throw e;
    }
    return dbVO;
}
}
4

0 回答 0