Based on your requirements, I think [JetBrains Xodus](http://jetbrains.github.io/xodus) is a very choice of database. It has three types of database- a key-value storage, an entity-store and a database for files and streams.
 
**#1**: It is very easy to start using. If you are using maven just add one or two [dependencies](https://github.com/JetBrains/xodus/wiki/Managing-Dependencies). Or you can also import `.jar` files directly into your project.

No need to create any server. Just create an instant of `Environment` and you are ready to go. And you can give it your folder name to store data.

    final Environment env = Environments.newInstance("/Users/me/.myAppData");

**#2**: Instead of managing tables you can just store entities. It is very similar to relational tables, but a lot more easier. Take a look [here](https://github.com/JetBrains/xodus/wiki/Entity-Stores) to know how to do it.

    final Entity user = txn.newEntity("User");
    user.setProperty("login", loginName);
    user.setProperty("fullName", fullName);
    user.setProperty("email", email);
    final String salt = MessageDigestUtil.sha256(Double.valueOf(Math.random()).toString());
    user.setProperty("salt", salt);
    user.setProperty("password", MessageDigestUtil.sha256(salt + password)); 

**#3**: More lightweight than any other non-relational database avaiable. See their [benchmark test](http://jetbrains.github.io/xodus/#features).