小编Joe*_*Joe的帖子

正确JNDI @Resource(名称)

我有以下类用于获取JDBC连接:

package util;

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

import javax.annotation.Resource;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class OracleConnection implements AutoCloseable{

private final String oracle_DS_CTX = "java:jboss/oracleDS"; 

    //  @Resource(name="java:jboss/oracleDS")
    //  private DataSource ds; //doesn't work   

    private Connection _conn;   

    public OracleConnection() throws SQLException, NamingException{

            Context ctx = new InitialContext();
            DataSource ds = (DataSource) ctx.lookup(oracle_DS_CTX);
            _conn = ds.getConnection();
    }

    @Override
    public void close() throws Exception {
            if(_conn != null){
                    _conn.close();
            }
    }

    public Connection getConnection() throws SQLException {
            return _conn;
    } …
Run Code Online (Sandbox Code Playgroud)

java jboss jndi

4
推荐指数
1
解决办法
1万
查看次数

JS eventListener点击消失

我创造了简单的fidlle

var cnt = 1;
function add() {
    var root = document.getElementById('root')    
    root.innerHTML += '<br /><a id= "a_' +cnt + '" href="#">click</a>'
    var a = document.getElementById("a_"+cnt)
    a.addEventListener('click', function(event) {
        alert('click:a_'+cnt)
    })
    cnt++
}
Run Code Online (Sandbox Code Playgroud)

添加新链接后单击"添加"按钮,单击此链接后会出现警报.

当使用"添加"按钮添加更多链接时,只有最后一个链接有效(其他链接根据开发工具没有单击事件侦听器).

为什么只有最后一个链接工作,如何使所有链接工作?

javascript

4
推荐指数
1
解决办法
1127
查看次数

使用 boost::asio::io_service 作为类成员字段

我有一个使用 boost asio 库的课程:

\n\n

标题:

\n\n
class TestIOService {\n\npublic:\n    void makeConnection();\n    static TestIOService getInst();\n\nprivate:\n    TestIOService(std::string address);\n    std::string address;\n    // boost::asio::io_service service;\n};\n
Run Code Online (Sandbox Code Playgroud)\n\n

实现:

\n\n
#include <boost/asio/ip/address.hpp>\n#include <boost/asio/ip/udp.hpp>\n#include "TestIOService.h"\n\nvoid TestIOService::makeConnection() {\n    boost::asio::io_service service;\n    boost::asio::ip::udp::socket socket(service);\n    boost::asio::ip::udp::endpoint endpoint(boost::asio::ip::address::from_string("192.168.1.2"), 1234);\n    socket.connect(endpoint);\n    socket.close();\n}\n\nTestIOService::TestIOService(std::string address) : address(address) { }\n\nTestIOService TestIOService::getInst() {\n    return TestIOService("192.168.1.2");\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

以及主要:

\n\n
int main(void)\n{\n    TestIOService service = TestIOService::getInst();\n    service.makeConnection();\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我使用以下行在 makeConnection 方法中定义服务时:

\n\n
boost::asio::io_service service;\n
Run Code Online (Sandbox Code Playgroud)\n\n

没有问题,但是当我将它作为类字段成员(在代码中注释掉)时,我收到此错误:

\n\n
\n

注意: \xe2\x80\x98TestIOService::TestIOService(TestIOService&&)\xe2\x80\x99 被隐式删除\n,因为默认定义格式不正确:\n class TestIOService {

\n
\n

c++ boost boost-asio

3
推荐指数
1
解决办法
3358
查看次数

标签 统计

boost ×1

boost-asio ×1

c++ ×1

java ×1

javascript ×1

jboss ×1

jndi ×1