Last day of the training and I am glad it is over…this stuff is draining

Here is what was covered today

Network Programming

Low Level TCP/IP Protocols

IPv4 and IPv6

UDP Multicast

TCP/IP

Message Based protocols

HTTP

Connections framework using URL (Unified Resource Locator)

Remote Objects

RMI (Remote Method Invocation)

CORBA (Common Object Request Broker Architecture)

Optional packages supporting additional protocols

SOAP, Mail etc etc

We talked about port numbers, here are some common ones that you might know

20 & 21: File Transfer Protocol (FTP)

22: Secure Shell (SSH)

23: Telnet remote login service

25: Simple Mail Transfer Protocol (SMTP)

53: Domain Name System (DNS) service

80: Hypertext Transfer Protocol (HTTP)

110: Post Office Protocol (POP3)

119: Network News Transfer Protocol (NNTP)

143: Internet Message Access Protocol (IMAP)

161: Simple Network Management Protocol (SNMP)

443: HTTP Secure (HTTPS)

Threads

In an operating process, each running program is basically a process

The operating system schedules processes for execution

Each process has its own (virtual) address space

Communications between processes is hampered by context switching

A thread is a flow of execution within a java process

The JVM schedules therads for execution

Threads share access to java objects

Communication between threads is quick

On multi-CPU/multi-core machines, several threads can execute at the same time

Executing with threads

One thread is started automatically to execute main()

The main() method may start additional threads

Single threaded applications run until main() terminates

Multi threaded applications run until all threads have terminated or if one of the threads calls System.exit()

Static methods manipulate the current thread

currentThread() returns a refernce to the thread that is currently executing

yield() pauses the currently executing thread

sleep(int ms) blocks the currently executing thread for a specific milliseconds

Instance methods that manipulate a particular thread

start() starts thread execution

getName() gets the name of the thread

interrupt() throws an exception or sets the interrupt status

join() waits for the thread to die

setPriority set the priority for a thread

The run() method will hold the code to be executed by a thread

The stop(), suspend() and resume() methods are deprecated

Local variables are never shared between threads, threads can share memory on the heap like static variables, instance variables and members of arrays

We covered synchronization, thread scheduling

JDBC

WE covered the regular DB related stuff, how to connect to a DB, explanation what the 4 type of jdbc drivers are, executing, statements, prepared statements and stored procedures

Web programming

We covered servlets, JSP, javabeans, struts, mvc…pretty much similar stuff I was doing in 2001 but now we have many more frameworks to makes things easier