- Back to Home »
- Mongo DB - (DBManager and CRUD)
DBManager
* @author Lakshika
*/
public class DBManager {
private static DB database;
public static DB getDatabase() {
if(database == null) {
MongoClient mongo;
try {
mongo = new MongoClient("localhost", 27017);
database = mongo.getDB("usermanager");
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return database;
}
}
=======================================================================
User Class
public class User {
private int id;
private String firstName;
private String lastName;
private String email;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
=================================================================
AddUser Interface
private static DBObject createDBObject(User user) {
BasicDBObjectBuilder docBuilder = BasicDBObjectBuilder.start();
docBuilder.append("_id", user.getId());
docBuilder.append("firstName", user.getFirstName());
docBuilder.append("lastName", user.getLastName());
docBuilder.append("Email", user.getEmail());
return docBuilder.get();
}
AddUser Buttn Click
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // Add User
// TODO add your handling code here:
User newUser = new User();
newUser.setId(Integer.parseInt(jTextField1.getText()));
newUser.setFirstName(jTextField2.getText());
newUser.setLastName(jTextField3.getText());
newUser.setEmail(jTextField4.getText());
DBObject doc = createDBObject(newUser);
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
WriteResult result = col.insert(doc);
JOptionPane.showMessageDialog(rootPane, "User Insert SucessFully...!");
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}
=======================================================================
View User Details in jTable
public void printmongData()
{
DefaultTableModel model = new DefaultTableModel();
model.addColumn("ID");
model.addColumn("First Name");
model.addColumn("Last Name");
model.addColumn("Email");
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
DBCursor cursor = col.find();
while (cursor.hasNext()) {
DBObject user=(DBObject) cursor.next();
model.addRow(new Object[] {user.get("_id"),user.get("firstName"),user.get("lastName"),user.get("Email")});
}
jTable1.setModel(model);
}
///////////////////// Call the Method ---------------
private void formWindowOpened(java.awt.event.WindowEvent evt) {
// TODO add your handling code here:
printmongData();
}
=====================================================================
Load UserID to ComboBox
public void fillID() {
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
DBCursor cursor = col.find();
while (cursor.hasNext()) {
DBObject user = (DBObject) cursor.next();
jComboBox1.addItem(user.get("_id"));
}
}
//////////////// Call it in WindowOpened Event
private void formWindowOpened(java.awt.event.WindowEvent evt) {
// TODO add your handling code here:
fillID();
}
=================================================================
Get Selected ComboBox Value
private void jComboBox1ItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO add your handling code here:
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
DBCursor cursor = col.find();
while (cursor.hasNext()) {
DBObject user = (DBObject) cursor.next();
int seletedID = Integer.parseInt(jComboBox1.getSelectedItem().toString());
// JOptionPane.showMessageDialog(rootPane, user.get("_id").toString());
// JOptionPane.showMessageDialog(rootPane, jComboBox1.getSelectedItem().toString());
if(user.get("_id").toString().equals(jComboBox1.getSelectedItem().toString()))
{
jTextField1.setText(user.get("_id").toString());
jTextField2.setText(user.get("firstName").toString());
jTextField3.setText(user.get("lastName").toString());
jTextField4.setText(user.get("Email").toString());
}
}
===============================================================
Update User (btnClick)
try {
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
BasicDBObject query = new BasicDBObject("_id", new BasicDBObject("$eq", Integer.parseInt(jTextField1.getText())));
BasicDBObject newDocument = new BasicDBObject();
newDocument.put("firstName", jTextField2.getText());
newDocument.put("lastName", jTextField3.getText());
newDocument.put("Email", jTextField4.getText());
BasicDBObject updateObj = new BasicDBObject();
updateObj.put("$set", newDocument);
col.update(query, updateObj, false, true);
JOptionPane.showMessageDialog(rootPane, "User Update SucessFully...!");
} catch (Exception e) {
JOptionPane.showMessageDialog(rootPane, "Please Select User");
}
===============================================================
Delete User (btnClick)
try {
DB userDB = DBManager.getDatabase();
DBCollection col = userDB.getCollection("user");
BasicDBObject query = new BasicDBObject("_id", new BasicDBObject("$eq", Integer.parseInt(jTextField1.getText())));
col.remove(query);
JOptionPane.showMessageDialog(rootPane, "User Delete SucessFully...!");
this.setVisible(false);
this.dispose();
ManageUsers mange= new ManageUsers();
mange.setVisible(true);
} catch (Exception e) {
JOptionPane.showMessageDialog(rootPane, "Please Select User");
}
Test Comment for EAD :P :P
ReplyDelete