用同一个sql语句查询。
100个数据库里面的表的结构都是相同的。
我现在要做的就是::需要同时链接100个数据库进行查询。查出一条符合 条件的就显示一条。。
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://192.168.20.236:3306/express001","root" ,"123456");
ps=conn.prepareStatement("select * from sf where f29=? or f30=? or f40=? or f41=?");
这是连接1个数据库的时候。。。
有什么好办法可以解决嘛
多线程能解决吗??我没有接触过多线程,,如果可以,还请麻烦给点提示 谢谢。。。
아직 테스트 안해봤으니 한번 해보세요
으아아아멀티스레딩으로 해결할 수 있을 것 같은데...그렇지 않으면 동기적으로 실행될 것입니다.
하나씩 연결하는 좋은 방법이 없을까요? 스레드 수는 CPU 코어 수만큼 되어야 합니다. 너무 많으면 리소스가 낭비됩니다. 스레드 풀을 사용하십시오.
100개의 라이브러리를 운영하려면 당연히 100개의 다양한 연결이 필요합니다. 이는 어려운 조건입니다.
포스터에 Dangdang.com의 오픈소스 프로젝트를 제공하세요.
sharding-jdbc
오라클이라면 dblink를 사용하면 되고, 원본이 아닌 경우에는 mysql을 사용하면 100개 정도의 데이터베이스만 연결하여 별도로 쿼리할 수 있을 것입니다. 여러 스레드를 사용하여 이 100개의 데이터베이스를 개별적으로 쿼리하는 경우 집계 중 스레드 안전 문제에 주의해야 합니다