Java Transaction Design Strategies

by Mark Richards

ISBN: 978-1-4116-9591-7
Publisher: Lulu.com
Rights Owner: Floyd Marinescu
Copyright: © 2006 C4Media Inc. Standard Copyright License
Language: English
Country: Canada
Edition: First Edition
  • Download $18.15
  • Paperback book $25.00
Download: 1 documents, 756 KB

Printed: 116 pages, 6" x 9", perfect binding, black and white interior ink

Description:

Understanding how transaction management works in Java and developing an effective transaction design strategy can help to avoid data integrity problems in your applications and databases and ease the pain of inevitable system failures. This book is about how to design an effective transaction management strategy using the transaction models provided by Java-based frameworks such as EJB and Spring. Techniques, best practices, and pitfalls with each transaction model will be described. In addition, transaction design patterns will bring all these concepts and techniques together and describe how to use these models to effectively manage transactions within your EJB or Spring-based Java applications. The book covers: - The local transaction model - The programmatic transaction model - The declarative transaction model - XA Transaction Processing - Transaction Design Patterns


Stats:

Lulu Sales Rank: 740
Average customer rating:
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
6 votes
Please log in or sign up to rate this item.

Reviews:

Please log in or sign up to post a review.

Show all replies to reviews

Great book on the transaction subject
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
11 Mar 2007
the best material on this subject I have ever read, clear and concise
A must have for anyone doing anything with Java and databases [ No Rating ] 10 Aug 2006
This is a very concise book that you can read quickly but one of those books you'll want to keep on your shelf as a reference. If you are a Java developer and you do anything with databases then you need this book. Transactions are one of things that everybody uses but often don't have complete understanding of because it just seems so complicated. But after reading this book you'll realize that nothing can be farther from the truth, transactions now will see easy! Mark does a fantastic job making the seemingly complex into a very easy to understand guide. But at the same time this ain't no guide for dummies either. You'll appreciate the thorough description of the three transaction models: Local, Programmatic, and Declarative and XA transaction processing. You'll also learn when each should be used and some of the common pitfalls. The rest of the book covers some design patterns that you'll use in designing your applications. One of the strong points of this book are the examples. Just about every example is shown in EJB 3.0 and in Spring. Both were new to me when I read this book but every single one of them made sense to me. But I can tell you I really can't wait to get going with EJB 3.0 and now I am intrigued to learn more about Spring.

So the bottom line is that I highly recommend this book for anyone that does anything with Java and databases.
From The Author
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
12 Jul 2006
Java Transaction Design Strategies came about as a result of my experiences (and those of my close colleagues) with problems surrounding data integrity and data inconsistencies in EJB and Spring-based applications. During the past several years I have given talks on Java Transaction Management at the NFJS Software Symposium Conferences (www.nofluffjuststuff.com). The transaction sessions were very well received, and I was encouraged by many of the attendees and NFJS speakers to write a book on the topic. Floyd Marinescu, author of EJB Design Patterns and creator of The ServerSide.com and InfoQ.com, agreed to publish the book in late 2005.

While writing the book I relied on the wisdom, advice, and reviews of many industry experts including Floyd Marinescu, Dr. Mark Little of JBoss (author of Java Transaction Processing), Stuart Dabbs Halloway (NFJS Speaker and author of Component Development for the Java Platform), Alan Beaulieu, (author of three best-selling books on SQL and Oracle), and many others in the technical and writing field. The book also went through a thorough editing and review process through Floyd Marinescu’s professional editing and publishing team.

The book is purposely short and concise so that the reader is not bogged down by details that are not directly applicable to his or her role as a developer or architect. Most developers and architects do not have the time to sit down and read a 400 page technical book, let alone find detailed information quickly in a large text. The book is structured as follows: after a brief introduction, I describe in detail (using coding examples in both EJB and Spring) the three transaction models supported by Java (local, programmatic, and declarative). I then go into details about XA transactions and when they are needed. After these chapters I then bring everything together by describing three transaction design patterns using UML and code examples in both EJB and Spring.

There have been several malicious reviews posted about my book with regards to bad grammar, lack of UML, and other such nonsense. These non-constructive reviews are meant only to hurt me and confuse prospective readers (most have been removed, but the malicious reviewer still continues to post from time to time). I would encourage you to ignore these reviews and focus on the more constructive ones. If you have comments or suggestions about the book, please write an honest, constructive, and truthful review of what you think.

For those of you who would like to view a free sample of the book, you can download the non-printable PDF version from Floyd Marinescu’s InfoQ website (www.infoq.com).

I hope you enjoy the book.

Mark Richards
Where's the UML?
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
11 Jul 2006
Although there are some very noticeable grammatical and sentence structure issues in the first few pages, for the most part, these issues are resolved around page 11.

In my brief scan of the book, I saw classes and methods mentioned in paragraphs. And when I saw the diagrams it was clear what class owned what responsibilities. However, when the author mentions the need to call certain methods based on certain conditions, I expected to see some UML. I saw instances where class diagrams, activity diagrams and sequence diagrams could have been extremely useful … and simple to put together. When I read the back of the book and saw Mr. Richards' credentials, I was even more confused about why a Senior IT Architect at IBM would not use UML diagrams. As a supposed leader in his field, should he not be setting an example for the use of standards? I feel, given the author’s substantial background, that this book could use some improvement not only grammatically, but also with additional diagrams.

Also, since this book was published on or around May 30, 2006, I would like to pose a question to the reviewer who indicates that he/she implemented Mr. Richards' design pattern(s) within 5 or 6 weeks. Maybe you're dealing with a small non-critical system. However, the systems that I have worked with in the past required that a change in the architecture necessitated a full analysis and design including risk assessment. This usually took a few months at minimum. All is dependent on the size of the system, but implementation could take another month or 6 months. Given the nature of the deployment (database transaction related), deployment may require a system shutdown. As we all know, system shutdowns are not easily coordinated in a large organization or with internet-based applications. Since the content of this book seems to be geared towards larger, enterprise applications / systems, I am wondering how you managed to get all this work done and debugged within 4-5 weeks?
Excellent Book!
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
10 Jul 2006
This book is concise, well written, and should be required reading for anyone dealing with transactions and Java. Using the information contained in this book we were quickly able to solve some serious issues in our current application. Thankfully it is short (118 pages) and well organized. The best part of the book is the last three chapters which describe various transaction scenarios and patterns. We were quickly able to identify with these patterns and apply them to our application. Thanks to this book our application is now running without errors. The book first introduces the various transaction types used by Java. The author used just the right amount of depth for a developer to understand. The chapter on XA is a bit dry, but on the otherhand I now understand XA! I learned of this book from a friend of mine who found it as the book of the month on JavaWorld. I would highly recommend this book without reservation.
Lacks effective writing
  1. *
  2. *
  3. *
  4. *
  5. *
  6. *
9 Jul 2006
This book has the typical trademarks of technical manuals that are laced with technical details yet lack effective writing. Mr. Richards' grammar and sentence structure make the reader wonder what he/she has just read. This usually results in re-reading sentences or even full paragraphs. I have some suggestions for Mr. Richards’ to improve his writing skills. When beginning a new paragraph, Mr. Richards needs to pay more attention to placing the main idea in the first sentence. Also, reduce the use of excessive subordination and run on sentences. Eliminate the word "there" where the use of a noun will make sentences clearer. For example: "Fortunately, there is something we can do about system failures." could be restructured to "Fortunately, we can do something about system failures." Some sentences do not have a subject and the incorrect use of punctuation makes it difficult to understand meaning. I found inconsistent subjects in some sentences. This sentence is an example: "Although I will be going into details about each transaction model, those particular chapters...” This sentence first introduces "I" as the subject, then out of the blue, with no transition, introduces "those particular chapters" as another subject. Also, I believe that "going into details" is incorrect grammar. An even more concise version of this sentence might be: "I will be detailing each transaction model". However, I do not know if my version of that sentence is the true meaning that Mr. Richards was trying to convey. I also do not believe that the use of the contraction "isn't" should be used in professional writing. "Isn't" may work well for a third grade storybook, but not for college level writing. Mr. Richards' third grade grammar is so distracting in this book that I found myself guessing quite a bit. Remember that your audience is probably well educated and reads at least at an 8th grade level. I would suggest a basic writing course and work your way up to college writing. And from your notes, it appears that you need a new reviewer for your initial manuscript.

[Click the preview to close]

Share or Bookmark This Item

Fill out this form to send an e-mail to your friend telling them about this page on Lulu.com:

We respect your privacy. The names and e-mail addresses you enter are used only for sending this message. Please read our Privacy Pledge.

Your Friend's Name:
Your Friend's Email:
Your Name:
Your E-mail:
Your Message:
(max. 1024 characters)
 
Lulu is an advocate for global consumer privacy rights, protection and security.
Member Agreement   |   Privacy Pledge