I'd start by nailing down the requirements of what you want it to have in the first iteration. You might look at an existing Java blog software -like Pebble, which is used here on JavaRanch- for ideas, but any blog site/software will do. Once you know the features you can derive the required data items from those, and from that the DB schema. Then you can start to define which pages or page views you'll need, and which roles there will be (blogger, blog owner, admin, ...) and what each can do/access.
One of the things that I've been playing with is the blogger API that Google seems quite excited about. You can create a very vast blogger site, use Goggle's blogger.com site as your datastore, and allow comments and authentication for anyone coming to the site that has a google username and password that might be tied to a Gmail, adwords or YouTube account.
The API itself is, of course, in Java, so you can put together a great blog site, and learn to code against an excellent API. Much of the grovel work of html and other stuff will be eliminated, and you can focus on integration of good Java techniques and technologies.