Skip to main content


Showing posts from April, 2007

Weekend hiking in Lake Serene

Lake Serene hike, the 7 miles round trip with 2000 feet elevation, probably takes a whole afternoon. The trail is strenuous, dangerous and out of maintenance for years. However, the stunning view from the summit of Mt. Index makes every drop of sweat count. Direction: Take highway 2 from Monroe heading east, exit at milepost 35 for Mt. Index Rd. Map Album (74 photos)

Reference from

One of the bellevue downtown photos is used by recently.

Maven Book, Maven: The Definitive Guide (1.0 Alpha 1)

It's also downloadable from Why a Book? You may ask "Why a Maven book? There are plenty of documents online, right?". The problem of diving into any new software project is the problem of where to begin. Yes, there is a growing wealth of information pertaining to the Maven project - but it is scattered and piecemeal. They make great reference materials (we even used some docs for this book) - but many developers, myself included, desire a narrative - a jolly stroll through the growing Maven metropolis - a place to see the grand sites without being overwhelmed - where does the yellow-brick road begin? Here. Read more ...

Customize IdGenerator in JPA, gap between Hibernate and JPA annotations

JPA annotation is like a subset of Hibernate annotation, this means people will find something available in Hibernate missing in JPA. One of the important missing features in JPA is customized ID generator. JPA doesn't provide an approach for developer to plug in their own IdGenerator. For example, if you want the primary key of a table to be BigInteger coming from sequence, JPA will be out of solution. Assume you don't mind the mixture of Hibernate and JPA Annotation and your JPA provider is Hibernate, which is mostly the case, a solution before JPA starts introducing new Annotation is, to replace JPA @SequenceGenerator with Hibernate @GenericGenerator. Now, let the code talk. /** * Ordinary JPA sequence. * If the Long is changed into BigInteger, * there will be runtime error complaining about the type of primary key */ @Id @Column(name = "id", precision = 12) @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "XyzIdGenerator") @SequenceGe

Mount Little Si, North Bend

Five miles to the summit, with 1200 feet elevation. The two hour hiking in Mount Little Si became perfect activity for Cloudy Saturday. Most part of the trail hides deeply inside the dark silent forest. This is not the trail where people can walk, chat, enjoy and relax. This is a hard, secret and spooky kind which make people sweat.