Category: Java

The Java Tutorial: A Short Course on the Basics (5th Edition)

My image
  • Author: Sharon Biocca Zakhour, Sowmya Kannan, Raymond Gallardo
  • Format: online HTML, epub, mobi
  • Price: free

The Java Tutorial, Fifth Edition, is based on Release 7 of the Java Platform Standard Edition. This revised and updated edition introduces the new features added to the platform, including a section on NIO.2, the new file I/O API, and information on migrating legacy code to the new API.

The deployment coverage has also been expanded, with new chapters such as “Doing More with Rich Internet Applications” and “Deployment in Depth,” and a section on the fork/join feature has been added to the chapter on concurrency.

Information reflecting Project Coin developments, including the new try-with-resources statement, the ability to catch more than one type of exception with a single exception handler, support for binary literals, and diamond syntax, which results in cleaner generics code, has been added where appropriate.
The chapters covering generics, Java Web Start, and applets have also been updated.

In addition, if you plan to take one of the Java SE 7 certification exams, this guide can help. A special appendix, “Preparing for Java Programming Language Certification,” lists the three exams available, details the items covered on each exam, and provides cross-references to where more information about each topic appears in the text.

All of the material has been thoroughly reviewed by members of Oracle Java engineering to ensure that the information is accurate and up to date.

The free version of the book is broken up into chunks. Link for obtaining the epub or mobi versions are at the bottom, as well as a link to purchase or rent a paperback version from Amazon.

Chapters include:

Epub and Mobi downloads

Buy or rent the paperback from Amazon

Bleeding at the Keyboard: A Guide to Modern Programming with Java

My image
  • Author: Gregory J. E. Rawlins
  • Format: online HTML
  • Price: free

Creating a Java program is a bit like making a movie or putting on a play. Every theatrical production needs actors (in Java these are objects), roles the actors play (classes), and scenes the actors play out (methods). In a movie or play, actors step into one of their scenes when given a cue; in a Java program, objects enter one of their methods when cued to do so by another object. The Java interpreter, which runs each Java program, is like a combination stage manager and producer—it creates the set, casts the actors, and teaches them their roles. We, as Java programmers, are like playwrights (or screenwriters) and directors put together, we specify the roles the actors will play. Our program’s users are the audience.

Just as a stage manager and a producer read a play or movie script to find out what sets to create and what kinds of actors to audition, the Java interpreter reads each of the classes that we as programmers write to find out how objects of that class must behave (their role). Unlike temperamental actors, however, each Java object does exactly as its class tells it, so each object is the personification of a single role.

Real actors can play many roles; Java objects are all role. A play’s script usually specifies the actions of many characters in lots of different roles: butlers, tycoons, girl scouts, lone gunmen. A Java class, however, only specifies the actions of one quite specific type of character; that is, one role. So a simple Java program might be the equivalent of an extremely boring play about a butler forever polishing silverware, or a snoozer about a tennis pro playing exactly one round of a game of tennis. A complex program, however, might describe a universe of thousands of roles for its objects to play, all working together to run a sophisticated game, a nuclear power station, a national telephone service, or an orbital telescope.

Chapters include:

  • Setting the Stage
  • Introducing the Players
  • Behind the Scenes
  • Character Study
  • Stage Direction
  • All Together Now
  • It Takes All Types
  • What’s in a Name?
  • Think Like an Object
  • Let the Games Begin
  • The Play’s the Thing
  • Networking
  • Defensive Programming
  • Design Patterns
  • Navel Gazing
  • Satori
  • Avoiding Style Crime
  • Java’s Flaws
  • Book Recommendations
  • The Rest of Java

http://www.roxie.org/books/bleeding/tableofcontents.html

Blackfish SQL Developers Guide

  • Author: Steven T. Shaughnessy, Jens Ole Lauridsen
  • Format: archived PDF
  • Price: free

Blackfish SQL is a high-performance, small-footprint, transactional database that  was originally implemented as an all-Java database called JDataStore. This is now called Blackfish SQL for Java.
Blackfish SQL was then ported from Java to C#. The C# implementation is called Blackfish SQL for Windows.

This book is intended for developers implementing Blackfish SQL database applications and system administrators responsible for installing, deploying, and maintaining Blackfish SQL databases.

A CodeGear Developer Network membership is needed in order to download the .zip file. Registration is free.

Chapters include:

  • Overview
  • System Architecture
  • Establishing Connections
  • Administering Blackfish SQL
  • Using Blackfish SQL Security
  • Using Stored Procedures and User Defined Functions
  • Using Triggers in Blackfish SQL Tables
  • Stored Procedures Reference
  • SQL Reference
  • Optimizing Blackfish SQL Applications
  • Deploying Blackfish SQL Database Applications
  • Troubleshooting

http://cc.embarcadero.com/Item/24980

Java Application Development on Linux

My image
  • Author: Carl Albing, Michael Schwarz
  • Format: PDF
  • Price: free

Linux is the fastest-growing Java development platform because it saves money and time by serving as a platform for both development and deployment. But developers face significant platform-specific challenges when managing and deploying Java applications in a controlled production environment.
Written for Java and Linux developers alike, Java Application Development on Linux is the hands-on guide to the full Java application development lifecycle on Linux.

Determined to spare other developers hours of trial and error, Albing and Schwarz demonstrate the platform, tools, and application development by showing realistic, easy-to-follow examples. After a simple command-line application introduces basic tools, this program leads readers through business-logic object analysis, database design, Java servlet UIs, Java Server Pages (JSP) UIs, Swing GUIs, and Standard Widget Toolkit (SWT) GUIs. Scaling up to the enterprise level provides the opportunity to use both the JBoss Application Server and the Apache Geronimo Application Servers, and Enterprise JavaBeans (EJB).

The authors conclude by demonstrating how a hierarchy of budgets can be created, tracked, and shared with Concurrent Versions System (CVS).

A companion Website includes all source code and a link to each tool described.

Java Application Development on Linux can propel you from a standing start to the full-speed development and deployment of Java applications on Linux.

Chapters include:

  • An Embarrassment of Riches: The Linux Environment
  • An Embarrassment of Riches: Editors
  • An Experienced Programmer’s Introduction to Java
  • Where Am I? Execution Context
  • The Sun Microsystems Java Software Development Kit
  • The IBM Developer Kit for Linux, Java 2 Technology Edition
  • The GNU Compiler for Java (gcj)
  • Know What You Have: CVS
  • Ant: An Introduction
  • Integrated Development Environments
  • Balancing Acts: An Imaginary Scenario
  • Analysis and Design: Seeking the Objects
  • JUnit: Automating Unit Testing
  • Storing the Data
  • Accessing the Data: An Introduction to JDBC
  • Getting in the Swing of Things: Designing a GUI for BudgetPro
  • Other Ways: Alternatives to Swing
  • Servlets: Java Pressed into Service
  • JSP: Servlets Turned Inside Out
  • Open Source Web Application Servers
  • Introduction to Enterprise JavaBeans
  • Building an EJB
  • Deploying EJBs
  • Parting Shots

http://www.phptr.com/content/images/013143697X/downloads/013143697X_book.pdf

Apache Jakarta Commons: Reusable Java Components

My image
  • Author: Will Iverson
  • Format: PDF
  • Price: free

Using the Apache Jakarta Commons reusable Java components, you can leverage the work of the global open-source community to solve common programming problems reliably, quickly, and inexpensively.

But, to use the Commons libraries effectively, you need far more guidance than the official documentation offers. In Apache Jakarta Commons: Reusable Java Components, Will Iverson covers what Java developers need to know to take full advantage of Jakarta Commons—starting right now.

Iverson begins with a definitive overview of the Commons project: goals, installation, and getting started with Commons components. Next, he presents example-rich chapters on the twelve most useful Commons packages, covering topics ranging from HTTP FileUpload to database connectivity. Iverson provides detailed code samples for every component he describes. After you’ve mastered the core Jakarta Commons packages, you’ll constantly rely on this book’s handy seventy-five page quick-reference.

Whether you’re building code for front-end Web applications, client-side software, or back-end servers, learning Jakarta Commons will make you far more efficient. Apache Jakarta Commons is the fastest way to master and get results with Commons.

Chapters include:

  • Overview
  • FileUpload
  • HttpClient
  • Net
  • Pool
  • DBCP (Database Connection Pool)
  • BeanUtils
  • JXPath
  • Logging
  • Lang
  • Collections
  • Codec
  • CLI (Command-Line Interface)
  • Other Projects
  • Lang Reference

http://www.phptr.com/content/images/0131478303/downloads/Iverson_book.pdf
Download source code examples