public class Tester { private static Morphia morphia = new Morphia().mapPackage("com.foo.bar.Issue"); public static void main(String args[]) { Datastore ds = morphia.createDatastore(new MongoClient(), "test-db"); // Create a new issue Issue i1 = new Issue(); i1.setDesc("Sample Description for Issue 1"); // Save the issue ds.save(i1); System.out.println("Issue saved with ID : " + i1.getId()); /* Create and save same more, if you like! */ // List and Iterate through issues List<Issue> issues = ds.createQuery(Issue.class).asList(); for(Issue issue: issues) { System.out.println("Issue ID : " + issue.getId() + ", Desc : " + issue.getDesc()); } // Note: Since I have defined the @Id as String, to get a single object based on @Id, you will have to // Issue i2 = ds.get(Issue.class, new ObjectId("ID_HERE")); } }