Copy Link
Add to Bookmark
Report
Java Coffee Break Newsletter Volume 1 Issue 02
Java Coffee Break Newsletter Vol 1, Issue 2
ISSN 1442-3790
Welcome to the second Java Coffee Break Newsletter! This issue comes
a little early, due to the large number of subscribers in the last
week, and because of the new tutorial that is now available.
- - - - - - - - - - - - - - - - - - - - - - - -
Java Coffee Break Updates
* New tutorial
* JDK 1.2 Booklist
* Free access to the latest resources from Sun
1. New tutorial
Learn the basics of network programming in Java, with the latest in
our series of tutorials aimed at beginners. Network programming can
be easy, and this tutorial will show you how to write Java clients.
A brief excerpt from the tutorial is included later in the
newsletter.
If networking is a little too advanced for now, try some of the
other tutorials, which teach Java right from the beginning.
All our Java tutorials can be found at
http://www.davidreilly.com/jcb/tutorials.html
2. JDK 1.2 Booklist
If you haven't been following the latest news from Sun, you may
not be aware that a new version of the Java Developers Kit (JDK)
is coming. JDK1.2 includes many new features, including support
for servlets, swing, collections and more.
If you're interested in getting up to speed with these
technologies, I've put together a booklist of some JDK1.2 titles.
You can find the list at
http://www.davidreilly.com/jcb/books/jdk1.2/
3. Free access to the latest resources from Sun
Sun's Java Developer Connection (JDC) offers developers early
access to software and toolkits (including early betas of JDK).
It's free, and helps you keep up to date.
Join JDC at http://java.sun.com/jdc/
- - - - - - - - - - - - - - - - - - - - - - - -
Java 109 - Networking with Java
In this tutorial, we'll cover networking with Java. Don't worry if
you're not familiar with networking - this will be only a brief
introduction. We'll examine some of the classes in the java.net
package, and show you how to write a simple network client in Java.
First, however, we need to cover some background theory.
How do computers talk to each other via the Internet?
The Internet is composed of millions of computers, located all across
the globe, communicating and transmitting information over a variety
of computing systems, platforms, and networking equipment. Each of
these computers (unless they are connecting via an intranet) will
have a unique IP address.
IP addresses are 32-bit numbers, containing four octets (8 bit numbers)
separated by a full stop. Each computer with a direct internet
connection will have a unique IP address, (e.g. 207.68.156.61). Some
computers have temporary addresses, such as when you connect to your
ISP through a modem. Others have permanent addresses, and some even
have their own unique domain names (e.g. www.microsoft.com).
An IP address allows us to uniquely identify a device or system
connected to the Internet. If I wanted to connect to a specific IP
address, and send a message, I could do so. Without an IP address, my
message would have no way of reaching its destination - a bit like
leaving the address off a letter or parcel.
Internet Addressing with Java
Handling internet addresses (domain names, and IP addresses) is made
easy with Java. Internet addresses are represented in Java by the
InetAddress class. InetAddress provides simple methods to convert
between domain names, and numbered addresses.
We start by importing the java.net package, which contains a set of
pre-written networking classes (including InetAddress).
import java.net.*;
Next, we declare a new variable of type InetAddress, which we assign
the value of the local host machine (for machines not connected to a
network, this should represent 127.0.0.1). Due to the fact that
InetAddresses can generate exceptions, we must place this code between
a try .. catch UnknownHostException block.
// Obtain the InetAddress of the computer on which this program
// is running
InetAddress localaddr = InetAddress.getLocalHost();
The InetAddress class has methods that return the IP address as an
array of bytes (which can be easily converted into a string), as well
as a string representation of its domain name (e.g. mydomain.org ). We
can print out the InternetAddress, as well as the domain name of the local
address.
System.out.println ("Local IP Address : " + localaddr );
System.out.println ("Local hostname : " + localaddr.getHostName());
The full tutorial, including downloadable source code, is available at
http://www.davidreilly.com/jcb/java109/java109.html
- - - - - - - - - - - - - - - - - - - - - - - -
The Java Coffee Break Newsletter is only sent out to email subscribers
who have requested it. If you no longer wish to receive the JCB
Newsletter, please unsubscribe using the WWW form located at
http://www.davidreilly.com/jcb/newsletter/unsubscribe.html