Hey there!
Yes both of these scenerios is possible. Each annotation is just a JS class, so you can assign any properties you like to it. If you need to serialize that data into XFDF, its a bit more involved but definitely possible - let me know if you need help doing this.
For drawing annotations from data in a database, here is a couple resources to get you started.
Basically you just need to load your data from your database, create a the corresponding annotation class, and set its properties based on your database data.
I hope this helps! Let me know if you have any more questions.
Thanks,
Logan