从mongodb向jlist java添加价值
我正在尝试将所有数据库都列在jlist中,它工作正常,只是我无法将问题列在jlist中从mongodb向jlist java添加价值,java,arrays,mongodb,jlist,Java,Arrays,Mongodb,Jlist,我正在尝试将所有数据库都列在jlist中,它工作正常,只是我无法将问题列在jlist中 private void dblist() throws UnknownHostException { MongoClient mongo = new MongoClient("localhost", 27017); java.util.List<String> dbs = mongo.getDatabaseNames();
private void dblist() throws UnknownHostException {
MongoClient mongo = new MongoClient("localhost", 27017);
java.util.List<String> dbs = mongo.getDatabaseNames();
for (String a : dbs) {
System.out.println(a); // here i am already getting value
// just need to add into jlist
System.out.println(a);
jlist.add(a); // adding value into Jlist but its giving
// me error
}
}
}
private void dblist()引发UnknownHostException{
MongoClient mongo=新的MongoClient(“本地主机”,27017);
java.util.List dbs=mongo.getDatabaseNames();
for(字符串a:dbs){
System.out.println(a);//这里我已经得到了值
//只需要添加到jlist中
系统输出打印项次(a);
jlist.add(a);//为jlist增加价值,但它的给予
//我的错误
}
}
}
你能试试这个来转换它吗
String[] x = new String[dbs.size()];
JList<String> list = new JList<>(dbs.toArray(x));
更新2:
这个代码正在工作,为什么你不这样尝试
MongoClient mongo = new MongoClient("localhost", 27017);
MongoCursor<String> dbs = mongo.listDatabaseNames().iterator();
while(dbs.hasNext()) {
System.out.println(dbs.next());
}
MongoClient mongo=新的MongoClient(“localhost”,27017);
MongoCursor dbs=mongo.listDatabaseNames().iterator();
while(dbs.hasNext()){
System.out.println(dbs.next());
}
我已经解决了这个问题,所以将来如果有人想问这个问题,他们可以参考这个答案
使用mongodb java驱动程序3.4.2
mongodb到java jlist
try{
String host=hname.getText();
String port=spport.getValue().toString();
Integer pt = Integer.valueOf(port);
try (MongoClient mongoClient = new MongoClient(new
ServerAddress(host, pt),
MongoClientOptions.builder()
.serverSelectionTimeout(2000)
.build())) {
DB db = mongoClient.getDB( jlist.getSelectedValue().toString());
DBbtn.setText("DB Connected");
DBbtn.setBackground (new Color(109,184,0));
DBbtn.setForeground(Color.WHITE);
Set<String> colls = db.getCollectionNames();
DefaultListModel listModel = new DefaultListModel();
colls.stream().map((s) -> {
listModel.addElement(s);
return s;
}).forEach((s) -> {
System.out.println(s);
});
collectionss.setModel(listModel); // collectionss is jlist name
}
} catch (Exception e) {
}
试试看{
String host=hname.getText();
字符串端口=spport.getValue().toString();
整数pt=整数。值of(端口);
try(MongoClient-MongoClient=newmongoclient(new
服务器地址(主机,pt),
mongoclientations.builder()
.serverSelectionTimeout(2000)
.build()){
DB DB=mongoClient.getDB(jlist.getSelectedValue().toString());
DBbtn.setText(“DB连接”);
DBbtn.setBackground(新颜色(109184,0));
设置前景(颜色为白色);
Set colls=db.getCollectionNames();
DefaultListModel listModel=新的DefaultListModel();
colls.stream().map((s)->{
listModel.addElement;
返回s;
}).forEach((s)->{
系统输出打印项次;
});
Collections.setModel(listModel);//Collections是jlist名称
}
}捕获(例外e){
}
从java jlist插入到MongoDb
try{
String logid="Log-"+logname.getText();
JList dataList=(loglist);
int sixe=dataList.getModel().getSize();
ArrayList arrayList = new ArrayList();
for (int i = 0; i <sixe; i++) {
arrayList.add(dataList.getModel().getElementAt(i));
server.total.setText("Total Log-"+i);
}
System.out.println(arrayList);
Iterator itr = arrayList.iterator();
String host=hname.getText();
String port=spport.getValue().toString();
MongoClient mongoClient = new MongoClient(asList( new ServerAddress(host+":"+port)),
singletonList(MongoCredential.createCredential(uname.getText(),
dbname.getText(),
pass.getText().toCharArray())),
MongoClientOptions.builder().serverSelectionTimeout(2000).build());
DB db = mongoClient.getDB( jlist.getSelectedValue().toString());
DBCollection bookCollection =
db.getCollection(collectionss.getSelectedValue().toString());
BasicDBObject doc = new BasicDBObject(logid, arrayList);
bookCollection.insert(doc);
server.consolelog.setText("INFO: Data is inserted succsesfully");
}catch(Exception e){
server.consolelog.setText(e.toString());
}
试试{
字符串logid=“Log-”+logname.getText();
JList数据列表=(日志列表);
int-sixe=dataList.getModel().getSize();
ArrayList ArrayList=新的ArrayList();
对于(int i=0;我仍然给我一个错误,java.lang.NullPointerException@MuratGünerror不再存在,但列表似乎是空的@MuratGüneri更新了mongoDB驱动程序,现在它可以工作了,但问题仍然存在,我如何添加到jlist中。感谢兄弟帮助我:)这给了我与旧驱动程序相同的结果。在这里显示System.out.println(dbs.next())的结果;我想在jlist@MuratGüneryourJlist=new jlist(dbs.toArray())中显示;这现在应该可以工作了,伙计。顺便说一句,你的问题中没有指定:)jlist
。请尝试显示一个
try{
String logid="Log-"+logname.getText();
JList dataList=(loglist);
int sixe=dataList.getModel().getSize();
ArrayList arrayList = new ArrayList();
for (int i = 0; i <sixe; i++) {
arrayList.add(dataList.getModel().getElementAt(i));
server.total.setText("Total Log-"+i);
}
System.out.println(arrayList);
Iterator itr = arrayList.iterator();
String host=hname.getText();
String port=spport.getValue().toString();
MongoClient mongoClient = new MongoClient(asList( new ServerAddress(host+":"+port)),
singletonList(MongoCredential.createCredential(uname.getText(),
dbname.getText(),
pass.getText().toCharArray())),
MongoClientOptions.builder().serverSelectionTimeout(2000).build());
DB db = mongoClient.getDB( jlist.getSelectedValue().toString());
DBCollection bookCollection =
db.getCollection(collectionss.getSelectedValue().toString());
BasicDBObject doc = new BasicDBObject(logid, arrayList);
bookCollection.insert(doc);
server.consolelog.setText("INFO: Data is inserted succsesfully");
}catch(Exception e){
server.consolelog.setText(e.toString());
}