He received a Bachelor of Science degree from Sam Houston State University in 1966 and attended the University of Houston Law Center and the South Texas College of Law.
He served as a member of the Texas House of Representatives for the fifth district from 1967 to 1973 and worked in private practice in Lufkin from 1971 to 1973.
He was a district attorney in Angelina County from 1973 to 1975 and was legal counsel to Common Cause of Texas in 1975, returning to private practice in Lufkin from 1975 to 1977.
He was the United States Attorney for the Eastern District of Texas from 1977 to 1981 and again worked in private practice in Lufkin from 1981 to 1991.
Hannah died suddenly of a heart attack on December 4, 2003, while attending a judicial conference in West Palm Beach, Florida.