Matt RaibleMatt Raible is a Web Developer and Java Champion. Connect with him on LinkedIn.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.

10+ YEARS


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

RE: While I'm choosing Hibernate over JDO ... for now

Now I will talk to you about the dealbreaker - the one thing about JDO that pushed me pretty rapidly over to the Hibernate camp: the query language. The JDO query language is just poor, very poor and of a syntax that only the designer could appreciate.

Class gameObjectClass = com.foo.GameObject.class;
Extent oldObjects = pm.getExtent (gameObjectClass, false);
String filter = "age > 25";
Query q = pm.newQuery (gameObjectClass, oldObjects, filter);
Collection oldGameObjects = q.execute ();


This unfortunately gets more and more complex as you have to introduce other variables into the query. This is a major failing of JDO IMO. Hibernate was just so much easier to deal with from the query perspective (and since that's what you'll be spending most of your time doing...).

List oldObjects = sess.find( "from obj in class com.foo.GameObjects where age > 25" );

Big difference in both presentation, LOC and generally understandability in my opinion. [Nation of Greg :: Redux]

I have to agree with Greg here. Hibernate's query language (HQL) is extremely easy to use. In fact, I've been amazed at how I've been able to guess the syntax and get it right 9 times out of 10! It's the best of SQL and OQL. If you think HQL is good - wait until you checkout the Query by Criteria syntax (very cool IMO). There's supposed to be a Hibernate 2.0 Final this weekend... only 26 hours left in my neck of the woods. will they make it?

Posted in Java at Jun 07 2003, 09:53:49 PM MDT 6 Comments

Nice Trail

Bear Lake Park (near our house)

Bear Lake Park (near our house)

Posted in General at Jun 07 2003, 06:20:56 PM MDT Add a Comment

Infecting Myself with BugBear

I've gotten two e-mails with the BugBear virus this morning - both from my alter ego. Actually they were from "[email protected]", which doesn't exist. Strangely, it's a response to an e-mail I sent to the struts-user mailing list. I've received them so far on Yahoo and my Comcast e-mail, both of which have webmail interfaces, and therefore, no problems have ensued. In case you get an e-mail from me (or rather [email protected]) with the subject Re: Is it possible to change the base tile on the fly, kindly delete it.

I'm slapping this sucker in my Java category in order to reach a greater audience. Hope you don't mind.

Posted in Java at Jun 07 2003, 07:48:42 AM MDT Add a Comment

Big Horn Sheep

At Waterton Canyon on Wednesday.

At Waterton Canyon on Wednesday.

At Waterton Canyon on Wednesday.

Posted in General at Jun 07 2003, 06:28:58 AM MDT 1 Comment

w.bloggar problems with Roller

I've been trying to post to this site with w.bloggar with morning. It's been working, however, w.bloggar doesn't think it is. When I click "Post", it gives me a w.bloggar: 500 dialog that states: HTTP POST failed. The error number is returned HTTP status code. I upgraded this site to use the latest snapshot of Roller from CVS, but no luck, I still get the same error. I don't normally use w.bloggar, so it's not a big deal. However, moblogger is also failing.

As for the Roller upgrade, the only noticeable changes are 1) the "Editor" menu has changed from showing tabs/sublinks to just sublinks on my Weblog page, and 2) it seems to ping weblogs.com after I update. There are some issues behind the scenes, but they don't seem to be affecting anything too badly. I guess I'd better turn off e-mail notification of errors - I've received 80 since I upgraded!

Posted in Roller at Jun 07 2003, 06:19:14 AM MDT 2 Comments