MAC INFO TECHNOLOGIES Java Programming Language (Core Java-J2SDK 1.6) The Java Programming Language course provides students with information about the syntax of the Java programming language; object-oriented programming with the Java programming language; creating graphical user interfaces (GUIs), exceptions, file input/output (I/O), and threads; and networking. Programmers familiar with objectoriented concepts can learn how to develop Java technology applications. The course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and utilizes the Java SE Development Kit 6 (JDK 6) product. The students perform the course lab exercises using the NetBeans Integrated Development Environment (IDE) 6.7. Who Can Benefit Students who can benefit from this course are programmers who are interested in adding the Java programming language to their list of skills and students who are preparing for the Sun Certified Programmer for Java examination. Skills Gained Upon completion of this course, students should be able to: 1. Create Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism,abstraction 2. Execute a Java technology application from the command line 3. Use Java technology data types and expressions 4. Use Java technology flow control constructs 5. Use arrays and other data collections 6. Implement error-handling techniques using exception handling 7. Create an event-driven graphical user interface (GUI) using Swing components: panels, buttons, labels, text fields, and text areas 8. Implement input/output (I/O) functionality to read from and write to data and text files and understand advanced I/O streams 9. Create a simple Transmission Control Protocol/Internet Protocol (TCP/IP) networked client that communicates with a server through sockets 10. Create multi-threaded programs MAC INFO TECHNOLOGIES Course Content Module 1 - Getting Started Examine Java technology Analyze a simple Java technology application Execute a Java technology application Module 2 - Object-Oriented Programming Define modeling concepts: abstraction, encapsulation, and packages Discuss Java technology application code reuse Define class, member, attribute, method, constructor, and package Use the access modifiers private and public as appropriate for the guidelines of encapsulation Invoke a method on a particular object Use the Java technology API online documentation Module 3 - Identifiers, Keywords, and Types Use comments in a source program Distinguish between valid and invalid identifiers Recognize Java technology keywords List the eight primitive types Define literal values for numeric and textual types Define the terms primitive variable and reference variable Declare variables of class type Construct an object using new Describe default initialization Describe the significance of a reference variable State the consequence of assigning variables of class type Module 4 - Expressions and Flow Control Distinguish between instance and local variables Describe how to initialize instance variables Recognize, describe, and use Java software operators Distinguish between legal and illegal assignments of primitive types Identify boolean expressions and their requirements in control constructs Recognize assignment compatibility and required casts in fundamental types Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program Module 5 - Arrays Declare and create arrays of primitive, class, or array types Explain why elements of an array are initialized Explain how to initialize the elements of an array Determine the number of elements in an array Create a multidimensional array Write code to copy array values from one array to another MAC INFO TECHNOLOGIES Module 6 - Class Design Define inheritance, polymorphism, overloading, overriding, and virtual method invocation Use the access modifiers protected and the default (package-friendly) Describe the concepts of constructor and method overloading Describe the complete object construction and initialization operation Module 7 - Advanced Class Features Create static variables, methods, and initializers Create final classes, methods, and variables Create and use enumerated types Use the static import statement Create abstract classes and methods Create and use an interface Module 8 - Exceptions and Assertions Define exceptions Use try, catch, and finally statements Describe exception categories Identify common exceptions Develop programs to handle your own exceptions Use assertions Distinguish appropriate and inappropriate uses of assertions Enable assertions at runtime Module 9 - Collections and Generics Framework Describe the general purpose implementations of the core interfaces in the Collections framework Examine the Map interface Examine the legacy collection classes Create natural and custom ordering by implementing the Comparable and Comparator interfaces Use generic collections Use type parameters in generic classes Refactor existing non-generic code Write a program to iterate over a collection Examine the enhanced for loop Module 10 - I/O Fundamentals Write a program that uses command-line arguments and system properties Examine the Properties class Construct node and processing streams, and use them appropriately Serialize and deserialize objects Distinguish readers and writers from streams, and select appropriately between them Module 11 - Console I/ O and File I/O Read data from the console Write data to the console Describe files and file I/O MAC INFO TECHNOLOGIES Module 12 - Building Java GUIs Using the Swing API Describe the JFC Swing technology Define Swing Identify the Swing packages Describe the GUI building blocks: containers, components, and layout managers Examine top-level, general-purpose, and special-purpose properties of container Examine components Examine layout managers Describe the Swing single-threaded model Build a GUI using Swing components Module 13 - Handling GUI-Generated Events Define events and event handling Examine the Java SE event model Describe GUI behavior Determine the user action that originated an event Develop event listeners Describe concurrency in Swing-based GUIs and describe the features of the SwingWorker class Module 14 - GUI-Based Applications Describe how to construct a menu bar, menu, and menu items in a Java GUI Understand how to change the color and font of a component Module 15 - Threads Define a thread Create separate threads in a Java technology program, controlling the code and data that are used by that thread Control the execution of a thread and write platform-independent code with threads Describe the difficulties that might arise when multiple threads share data Use wait and notify to communicate between threads Use synchronized to protect data from corruption Module 16 - Networking Develop code to set up the network connection Understand TCP/IP Use ServerSocket and Socket classes to implement TCP/IP clients and servers MAC INFO TECHNOLOGIES Web Component Development (Servlet and Jsp , J2EE 1.5) Who Can Benefit Students who can benefit from this course are programmers who are interested in Developing Enterprise Application (J2EE 1.5 Platform) and students who are preparing for the Sun Certified Web Component Developer (SCWCD)examination. Skills Gained Upon completion of this course, students should be able to: Write servlets using the Java™ programming language (Java servlets) Create robust web applications using Struts, session management, filters, and database integration Write pages created with the JavaServer Pages™ technology (JSP™ pages) Create easy to maintain JSP pages using the Expression Language, JSP Standard Tag Library (JSTL), and the Struts framework Create robust web applications that integrate Struts and JSP pages Course Content Module 1 – Introduction to Web Application Technologies Describe web applications Describe Java Platform, Enterprise Edition 5 (Java EE 5) Describe web application program execution methods and the advantages and disadvantages of each Describe Java servlet technology Describe Java Server Pages technology Define three-tier architecture Define Model-View-Controller (MVC) architecture Module 2 – Developing a View Components Design a view component Describe the Hypertext Transfer Protocol Describe the web container behavior Develop a simple HTTP servlet Configure and deploy a servlet MAC INFO TECHNOLOGIES Module 3 – Developing Controller Components Design a controller component Create an HTML form Describe how HTML form data is sent in the HTTP request Develop a controller servlet Dispatch from a controller servlet to a view servlet Module 4 – Developing Dynamic Forms Describe the servlet life cycle Customize a servlet with initialization parameters Explain error reporting within the web form Repopulating the web form Module 5 – Sharing Application Resource Using Servlet Context Describe the purpose and features of the servlet context Develop a servlet context listener to initialize a shared application resource Module 6 – Developing Web Application Using Session Management Describe the purpose of session management Design a web application that uses session management Develop servlets using session management Describe the cookies implementation of session management Describe the URL-rewriting implementation of session management Module 7 – Using Filters in Web Applications Describe the web container request cycle Describe the Filter API Develop a filter class Configure a filter in the web.xml file Module 8 – Integrating Web Application With Database Map sample data structure into database entities Design a web application to integrate with a DBMS Configure a DataSource and Java Naming and Directory Interface™ (JNDI) API Module 9 – Developing Jsp pages Describe JSP technology Write JSP code using scripting elements Write JSP code using the page directive Write JSP code using standard tags Write JSP code using the Expression Language (EL) Configure the JSP environment in the web.xml file MAC INFO TECHNOLOGIES Module 10 – Developing Jsp pages Using Custom tags Describe the Java EE job roles involved in web application development Design a web application using custom tags Use Java Server Pages Tag Library (JSTL) tags in a JSP Page Module 11 – Developing Business Tier Describe the Analysis model Design entity components Design service components Application Development Using Struts and Hibernate Course Content Module 1 – Getting Started with Struts. Define Struts Design MVC Design Pattern Describe View,Controller and Struts Setup Development Environment List Struts Components Introduce the Struts Action class , Action Form class Test struts-blank.jar Module 2 – Using the Validator Framework with Struts Define Validator Framework with struts Jakarta Commons Validator , List the Benefits of Using Validator Describe Validator Components Validators Resource Bundle Jsp Custom Tags Validator Form classes Configuration Files validator-rules.xml validation.xml Describe client-side vs server-side Validation Design a Validation Example Module 3 –Examples of Struts Design and Implement a Login Form using Struts Design and Implement a Action From with Validation using Struts MAC INFO TECHNOLOGIES Module 4 – Best Practices for Struts Build best performing large applications Reuse Data Across multiple Action Forms Use Action class to handle requests Use Action Form to work on Session data Handle Exception Effectively Module 5 –Introduction To Hibernate Introduction to ORM Tool Hibernate -Introduction Hibernate -Alternative Hibernate Architecture and API Installing and Configuring Hibernate Why is Hibernate Better than JDBC Module 6 – Working with Hibernate Working with Session Interface Select Program Update Program Delete Program Module 7 – Java EE Hibernate Query Language Why to use HQL,Building Hql queries Using From,Select,Where,Order By,Group By and Having Clause Association and Joins,Aggregate Functions,Expression,Bulk updates,Deletes Module 8 – Building Full fledge Enterprise Application Using Struts Framework,Hibernate Develop a Banking Application MAC INFO TECHNOLOGIES Oracle 9i Course Content Module 1 - Introduction 1. List the features of Oracle9i 2. Discuss the theoretical and physical aspects of a relational database 3. Describe the Oracle implementation of the RDBMS and ORDBMS Module 2 - Writing Basic SQL SELECT Statements List the capabilities of SQL SELECT statements Execute a basic SELECT statement Differentiate between SQL statements and iSQL*Plus commands Module 3 - Restricting and Sorting Data Limit the rows retrieved by a query Sort the rows retrieved by a query Module 4 - Single-Row Functions Describe various types of functions available in SQL Use character, number, and date functions in SELECT statements Describe the use of conversion functions Module 5 - Displaying Data from Multiple Tables Write SELECT statements to access data from more than one table using equality and non quality joins View data that generally does not meet a join condition by using outer joins Join a table to itself by using a self join Module 6 - Aggregating Data Using Group Functions Identify the available group functions Describe the use of group functions Group data using the GROUP BY clause Include or exclude grouped rows by using the HAVING clause Module 7 - Subqueries Describe the types of problem that subqueries can solve Define subqueries List the types of subqueries Write single-row and multiple-row subqueries MAC INFO TECHNOLOGIES Module 8 - Manipulating Data Describe each DML statement Insert rows into a table Update rows in a table Delete rows from a table Merge rows in a table Control transactions Module 9 - Creating and Managing Tables Describe the main database objects Create tables Describe the data types that can be used when specifying column definition Alter table definitions Drop, rename, and truncate tables Module 10 - Including Constraints Describe constraints Create and maintain constraints