SlideShare a Scribd company logo
1 of 57
Download to read offline
1
STUDENT INDUSTRIAL WORK EXPERIENCE SCHEME (SIWES)
REPORT ON WORK EXPERIENCE UNDERTAKEN AT AMERICAN
UNIVERSITY OF NIGERIA (AUN) YOLA, DEPARTMENT OF
INFORMATION SYSTEM/SOFTWARE SUPPORT UNIT
ADAMAWA STATE
BY
IBRAHIM IBRAHIM HARUNA
CSC/15D/5205
BEING A TECHNICAL REPORT SUBMITTED TO THE
DEPARTMENT OF COMPUTER SCIENCE, MODIBBO ADAMA
UNIVERSITY OF TECHNOLOGY YOLA IN PARTIAL FULFILMENT
OF THE REQUIREMENT FOR THE AWARD OF BACHELOR OF
TECHNOLOGY (B.TECH.) DEGREE IN COMPUTER SCIENCE
MAY, 2019
2
DEDICATION
This report is dedicated to Almighty Allah for his protection, wisdom, knowledge, and
understanding throughout the period of the industrial training. Special dedication also goes to
my ever Guardians Mal. Usman Aminu Tukur, Mal. Mahmud Ibrahim and Mal Muhammed
Haruna Ibrahim and his family respectively for their financial and moral support, love and
encouragement.
I would also like to dedicate it to Software Support Unit AUN and the entire Information
System Department crew for bringing out the best in me and to my Mother, Sisters and Friends
for their love and support and everyone else that contributed towards making my Industrial
Training a fun and successful one.
3
ACKNOWLEDGMENT
The completion of this training work could have been possible with continued & dedicated
efforts & guidance of large staff members of the institute. I acknowledge my gratitude to all of
them. The acknowledgement however will be incomplete without specific mention as follows.
I wish to acknowledge my deep gratitude to my industry based supervisor Mr. Mansur Bashir,
Senior Software Support Engineer at the Software Support Unit AUN for his cooperation and
guidance. I am also thankful to rest of the staff at the Software Support Unit that provided
staunch support throughout this training and helped me to complete the training successfully.
Furthermore I would also like to acknowledge with much appreciation the crucial role of the
Team lead Software Support Unit Mrs. Amal Babangida Sabo for her tireless support, devotion
and encouragement throughout my Industrial Training.
I would like to say that I am indebted to my Guardians Mal. Mahmud Ibrahim and Mal. Usman
Aminu Tukur for everything that they have done for me. All of this would have been impossible
without their constant support. And I also thank to Almighty Allah for being kind to me and
driving me through this journey.
I wish to thank all the lecturers of my Department Prof G. M. Wajiga, Dr N.D. Oye, Dr E. J.
Garba, Mr D. I. Sajoh, Mr Y.M. Malgwi, Mr Danjuma Joro, Mrs Asabe Mamman, and Mr A.
U. Atiku and many others whom I did not mentioned their names that have done a tremendous
job of impacting knowledge and experience on me.
Finally I appreciate the effort of my colleagues for their moral support during the training.
4
ABSTRACT
This industrial report presents the experience gained during my six (6) months of industrial
training undertaken at AUN IT Place 98 Lamido Zubairu Way Yola Bypass. My training was
on Back end Development.
I acquired practical knowledge on how to create a dynamic web site using Back end
programming language PHP and MySQL and also learn how to add and manage records in a
database using SQL and how to write the basic programs of Java. This report discusses the
technical skills gained during the training period and justifying the relevance of the scheme in
equipping students with needed technical competence to thrive in the real world.
5
TABLE OF CONTENTS
Title Page
Cover Page------------------------------------------------------------------------------------------------1
Dedication-------------------------------------------------------------------------------------------------2
Acknowledgement----------------------------------------------------------------------------------------3
Abstract----------------------------------------------------------------------------------------------------4
Table of Contents-----------------------------------------------------------------------------------------5
Chapter One
1.0 Introduction------------------------------------------------------------------------------9
1.1. About Student Industrial Work Experience Scheme--------------------------------9
1.2. Aims and Objectives of SIWES-------------------------------------------------------9
1.3. Brief History of SIWES---------------------------------------------------------------10
1.3.1 Funding-------------------------------------------------------------------------10
1.3.2 Beneficiaries of SIWES------------------------------------------------------10
1.3.3 Duration of SIWES Program------------------------------------------------10
1.4. Role of ITF on SIWES----------------------------------------------------------------11
1.5. Benefit of Industrial Training---------------------------------------------------------11
1.6. Brief History of American University of Nigeria Yola----------------------------12
1.7. Objectives and Vision of AUN-------------------------------------------------------12
1.8. Department in the office of Technology Support AUN---------------------------13
1.9. Office of Technology Support Chart AUN-----------------------------------------13
Chapter Two
2.0. Industrial Experience---------------------------------------------------------------------14
2.1. Definition of Terms-----------------------------------------------------------------------14
2.2. PHP and its Properties-------------------------------------------------------------------16
2.2.1. Server-side Scripting----------------------------------------------------------16
2.2.2. Common Uses of PHP-------------------------------------------------------16
2.2.3. Features of PHP---------------------------------------------------------------17
2.2.4. Environmental Set Up--------------------------------------------------------17
2.2.5. PHP Files-----------------------------------------------------------------------17
6
2.2.6. How Does PHP Work-------------------------------------------------------17
2.2.7. Basic PHP Syntax------------------------------------------------------------18
2.2.7.1. PHP Embedded in HTML----------------------------------------18
2.2.8. PHP Echo and Print Statement----------------------------------------------19
2.2.9. PHP Variable-------------------------------------------------------------------19
2.2.9.1 Creating PHP Variable---------------------------------------------20
2.2.9.2 PHP Variable Scope-----------------------------------------------20
2.2.10. PHP Data Types-------------------------------------------------------------21
2.2.11. PHP Arrays-------------------------------------------------------------------22
2.2.12. PHP Operator-----------------------------------------------------------------22
2.2.12.1. PHP Arithmetic Operators--------------------------------------23
2.2.12.2. PHP String Operators-------------------------------------------23
2.2.13. PHP Conditional Statement----------------------------------------------24
2.2.13.1 If Else Statement-------------------------------------------------24
2.2.14. PHP Form Handling-------------------------------------------------------24
2.2.14.1. PHP Get Form----------------------------------------------------24
2.2.14.2. PHP Post Form---------------------------------------------------25
2.2.15. PHP and My-SQL ----------------------------------------------------------26
2.2.15.1 My-SQL Database Connection --------------------------------27
2.2.15.2 Creating Database and Table in PHP My admin------------27
2.2.15.3 Connecting PHP And Inserting Data into Database--------28
2.3. Structured Query Language (SQL) and its Properties-----------------------------28
2.3.1 Definition of SQL------------------------------------------------------------28
2.3.2 What SQL Does--------------------------------------------------------------29
2.3.3 What is Database-------------------------------------------------------------29
2.3.3.1 What is RDBMS and DBMS------------------------------------29
2.3.3.2. Definition of Tables, Record (Rows), Field and Column---30
2.3.4 Component of SQL-----------------------------------------------------------30
2.3.5 SQL Syntax--------------------------------------------------------------------31
2.3.6 SQL Command----------------------------------------------------------------31
7
2.3.7 SQL Data Types---------------------------------------------------------------31
2.3.8 SQL Operators-----------------------------------------------------------------32
2.3.8.1 SQL Logical Operators--------------------------------------------32
2.3.9 SQL Constraint---------------------------------------------------------------33
2.3.10 SQL Statement (Query)------------------------------------------------------33
2.3.10.1 SQL Create, Use, and Drop Database Statement--------------33
2.3.10.2 SQL Create, Drop and Truncate Table Statement------------34
2.3.10.3 SQL Insert Statement--------------------------------------------35
2.3.10.4 SQL Select Statement--------------------------------------------35
2.3.10.5 SQL Update Statement-------------------------------------------36
2.3.10.6 SQL Delete Statement-------------------------------------------37
2.3.10.7 SQL Alter Table Statement-------------------------------------38
2.4. Java Programming and its Properties---------------------------------------------------38
2.4.1 Java Features------------------------------------------------------------------39
2.4.2 Java History-------------------------------------------------------------------39
2.4.3 Java Virtual Machine--------------------------------------------------------39
2.4.4 Java Runtime Environment Vs. Java Development Kit----------------40
2.4.5 Java Installation--------------------------------------------------------------40
2.4.5.1 Java Environment Set Up----------------------------------------40
2.4.5.2 Downloading and Installing JDK-------------------------------40
2.4.5.3 Java JDK Edition--------------------------------------------------41
2.4.5.4 Setting up Path in Windows-------------------------------------41
2.4.6 Write Compile and Run First Java Program-----------------------------41
2.4.6.1 Parameters Used in First Java Program------------------------42
2.4.7 Basic syntax of Java---------------------------------------------------------42
2.4.8 Java variable------------------------------------------------------------------43
2.4.9 Java Data Types--------------------------------------------------------------44
2.4.10 Java Operators----------------------------------------------------------------45
2.4.11 Control Structures in Java---------------------------------------------------46
2.4.11.1 Syntaxes of Repetition Statement-----------------------------47
8
2.4.12 Java Method and Constructors--------------------------------------------48
2.4.13 Java Classes and Objects---------------------------------------------------49
2.4.13.1 Access Method with Object-------------------------------------50
Chapter Three
3.0 Technical Skills Acquired--------------------------------------------------------------51
3.1 Personal Input to the Institute (AUN) Yola------------------------------------------51
3.2 Challenges Encountered----------------------------------------------------------------51
3.3 Web Application Developed-----------------------------------------------------------52
Chapter Four
4.0 Summary------------------------------------------------------------------------------------56
4.1 Conclusion----------------------------------------------------------------------------------56
4.2 Recommendation---------------------------------------------------------------------------56
Reference-------------------------------------------------------------------------------------------------57
9
CHAPTER ONE
1.0 INTRODUCTION
This chapter gives a brief history of SIWES, its aims and objectives and that of the organization
which I did my industrial training that is American University of Nigeria (AUN) Yola.
1.1 ABOUT STUDENTS INDUSTRIAL WORK EXPERIENCE SCHEME
The student industrial work experience scheme (SIWES) is a worldwide program practiced in
countries like Japan, Australia, USA, Europe, and in African countries too. It is popularly
known as co-operative education and referred to as sandwich in Europe. It is a six (6) months
students industrial work experience scheme (SIWES) taken in the third year of the degree
program for a four years course, and in a fourth year of a degree for a five years course, where
the students go to various establishments related to their course of study.
One of the key functions of the Industrial Training Funds (ITF) is to work as cooperative body
with industry and commerce where students in institutions of higher learning can undertake
mid-career work experience attachment in industries which are compatible with student’s area
of study. The students Industrial Work Experience Scheme (SIWES) is a skill Training
program designed to expose and prepare students for the Industrial work situation which they
are likely to meet after graduation. Participation in SIWES has become a necessary pre-
condition for the award of diploma and degree certificate in specific disciplines in most
institutions of higher learning in the country in accordance with the education policy of
government.
1.2 AIMS AND OBJECTIVES OF SIWES
SIWES is aimed at promoting the much-desired technological know-how for the advancement
of the nation by exposing students to machines and equipment, professional work methods and
ways of safeguarding the work area as well as the workers in industries and other organizations.
The objective of SIWES is:
i. Prepare student for business carrier by merging their analytical power with self-
reliance.
ii. Update student’s knowledge on new industrial innovation
10
iii. To expose and prepare students in planning engineering technology and related
disciplines for industrial working situations, they are likely to meet after
graduation.
iv. To make transition from the tertiary institution to the world of work easier
v. To provide student an opportunity to apply their theoretical knowledge in real work
situation practically.
1.3 BRIEF HISTORY OF SIWES
Student Industrial Work Experience Scheme (SIWES) is a programme which was established
by ITF in 1973 under the direct coordination of the Nigeria Universities Commission (NUC),
National Commission for College of Education (NCCE), and National Board for Technical
Education (NBTE) to solve the problem of lack of adequate practical skills required for
employment in industries by Nigerian graduates of tertiary institutions.
The ITF was charged with the responsibility of training low and middle level man power for
sustainable industrialization. However when the federal government observed that the training
of student who are still in school would be easier and cheaper to assume any responsibility to
their related field of study, that is what make the SIWES to be introduced under ITF.
1.3.1 FUNDING
The SIWES programme is funded by federal government of Nigeria under the auspices of
industrial training fund (ITF).
1.3.2 BENEFICIARIES OF SIWES
The beneficiaries of SIWES programme are undergraduate student of the following:
Agriculture, Engineering, Technology, Environmental, Science, Education, Medical Science
and Pure and Applied Sciences.
1.3.3 DURATION OF SIWES PROGRMME
The duration of student industrial work experience scheme is divided in two (4) four months
for polytechnic and colleges of education and (6) six months for the universities.
11
1.4 ROLE OF ITF ON SIWES
i. Supervise students on attachment in different organization across the country.
ii. Provide fund for payment of student on attachment and lecturers supervisory
allowance.
iii. Coordinate, direct and finance the SIWES programme.
iv. Liaise with the SIWES agencies to ensure prompt recipient and processing of
placement list.
v. Ensure that all institution concern summit to ITF office at the end of programme
report
1.5 BENEFITS OF INDUSTRIAL TRAINING:
Experts identified industrial experience as necessity for proper job preparation. This is because
productivity is enhanced by experience graduate or new entrance into the world of work really
needs and early exposure to the value and skills of the industry. Therefore, without appropriate
skills and experiences young graduates are not properly trained on work, norms and role
behavior among others, these components will ensure success at the job place. Today
Information and Communication Technology (ICT) is changing the way many jobs are
performed, thus altering the knowledge and skills required of workers. Consequently, a new
level of competency is required of our students. This cannot be sufficiently met by training
facilities in our education institutions hence, the need for collaborative effort between
institutions and industrial sector. The major benefits accruing to students who participate
conscientiously in industrial training are the skills and competencies they acquire. These
relevant production skills (RPSs) remain a part of the recipients of industrial training as lifelong
assets which cannot be taken away from them. This is because the knowledge and skills
acquired through training are internalized and become relevant when required to perform jobs
or functions. Several other benefits can accrue to students who participate in industrial training.
Provision of an enabling environment where students can develop and enhance personal
attributes such as critical thinking, creativity, initiative, resourcefulness, leadership, time
management, presentation skills and interpersonal skills, amongst others.
12
1.6 BRIEF HISTORY OF AMERICAN UNIVERSITY OF NIGERIA
The American University of Nigeria (AUN) was established in 2004 by Nigeria’s former Vice
President His Excellency, Atiku Abubakar along with other local and international statesmen
and academic leaders. The institution was conceived as Africa’s first Development University.
Its mission is to pioneer service learning and build leaders who will be prepared to tackle
societal concerns. Located in Yola, Adamawa State, the University is a world-class career-
oriented institution missioned to be an agent of change in the development of the region. AUN
has a strong commitment to providing the skills and the leadership essential to solving the
continent’s critical social and economic problems.
The University offers an American-style education modelled after the curriculum of American
universities with corresponding approaches to teaching and students assessment. The first
entering class of 124 students and 20 professors was enrolled in September 2005. The
University started on temporary buildings at the AUN Academy located directly opposite the
AUN campus. In seven years, AUN is fast becoming a model for other universities in Nigeria
and West Africa.
AUN is a completely wireless University, which is highly focused on IT. Computers, the
internet and other critical IT facilities are key tools in teaching. These facilities are deployed
in classes and completion of course assignments with great emphasis on small classes.
At Office of Technology Support (OTS) AUN, there are some of the smartest, most engaging
and dedicated professionals helping the university students, faculty and staff in the use of
technology in their everyday activities.
1.7 OBJECTIVES AND VISION OF AUN
The objectives of AUN is to train the future leaders of Africa and to serve as both a stimulus
and agent of economic development throughout the region.
The vision of AUN is to become a great center of learning and research for Nigeria and Africa,
and a catalyst for development in the entire world. In the words of its Founder, it sees its role
as a "Development University". Thus, the University will honor the traditional university roles
of repository and transmitter of culture and knowledge, and center for the creation of new
knowledge.
13
1.8 DEPARTMENTS IN THE OFFICE OF TECHNOLOGY SUPPORT AUN
The Office of Technology Support has two departments, The Department of Information
Technology (DIT) led by a Director and charged with the responsibility for planning,
designing, deployment and supporting of IT infrastructure within the University. The
Department of Information Systems (DIS) supervised by a Director and charged with the
responsibility for planning, development and deployment of the ERP application as well as all
other applications used in the university.
Department of Information Systems (DIS) is structured into three units: Software Support Unit
(SSU), Instructional Technology Unit (ITU) and Software Development Unit (SDU). The
Software Support Unit (SSU), led by Amal Babangida Sabo, she is responsible for developing,
sourcing, customizing, deploying and supporting a variety of software applications related to
student learning and faculty teaching for the university and her associated auxiliary units which
includes all user support issues related to Banner, OpenERP, canvas, online-classes Assist
students and faculty members in downloading eBooks and readers.
1.9 OFFICE OF TECHNOLOGY SUPPORT CHART AUN
Chief Information Officer
Director
Information Technology
Director
Information System
Team Lead
Software Development
Team Lead
Software Support
Team Lead
Instructional
Technology
Staffs
I.T Student
Staffs
Staffs
Fig 1. The Office of Technology Support Chart (AUN)
14
CHAPTER TWO
2.0 INDUSTRIAL EXPERIENCE
During my six months SIWES programme at Software Support Unit (AUN), all lectures and
practical works took place online via some website such as w3schools, javatpoint, tutorialpoint
and videos from youtube channel. The activities undertaken during the period of attachment in
Software Support Unit can be divided into three (3) distinct parts, they are:
i. Back end Development using PHP and MySQL,
ii. Structured Query Language (SQL),
iii. Java Programming Language.
2.1 DEFINITION OF TERMS
INTERNET
Internet is network of machines (servers, clients, routers, switches, etc.) connected by media
(fiber, wifi, etc.) that allows communication among devices.
WORLD WIDE WEB (WWW)
World Wide Web is an application on the Internet that combines many protocols to allow for
communication and transfer of data between machines
WEBSITE
A website is a set of related webpages containing content such as texts, images, videos, audios,
etc. A website is hosted on at least one web server, accessible via a network such as the internet
or a private LAN through an internet address known as a URL. A publicly accessible websites
collectively constitutes the World Wide Web (WWW).
WEB
Web is composed of documents that are logically linked to each other. The Web is known as a
client-server system. Your computer is the client and the remote computers that store electronic
files are the servers.
HTTP
HTTP stands for Hypertext Transfer Protocol. This is the protocol being used to transfer
hypertext documents that makes the World Wide Web possible.
15
URL stands for Uniform Resource Locator, and is used to specify addresses on the World Wide
Web. A URL is the fundamental network identification for any resource connected to the web
(e.g., hypertext pages, images, and sound files).
WEB SERVER
Every Website sits on a computer known as a Web server. This server is always connected to
the internet. Every Web server that is connected to the Internet is given a unique address made
up of a series of four numbers between 0 and 256 separated by periods. For example,
68.178.157.132 or 68.122.35.127.
BACK END DEVELOPMENT
Backend development refers to the server site of an application and anything that communicate
between database and the browser. The back end or the “server-site” is basically how the site
works, update and changes in addition to monitoring functionality of the site. This type of web
development usually consist of three parts: a server, an application and a database. Back end
development are required to create dynamic site.
DYNAMIC SITE
A dynamic site is a site that is constantly changing and updating in real time. There is a simple
way to determine if site is dynamic if we can interact with it is dynamic site. So most of the
site we visit are dynamic site e.g. twitter, facebook. The way we can interact with the site is
just clicking a link within the site just like commenting on a post, creating user profile, updating
status etc. A dynamic site has a communication system to do the interaction between the
browser and database. Dynamic site is written using server-side scripting language such as
PHP, ASP etc.
BACK END PROGRAMMING LANGUAGES
Back end developers uses server-side languages such as PHP, JAVA, PYTHON etc. Since they
need to work with something the database understand. These language are used to create
dynamic site which are different from static site. In that these type of website store database
information and the content on the site is constantly changing and updating example facebook,
twitter etc. thus a back end developers create the backbone of the website which require back
end services that contains dynamic data for example users submitting a form with personal data
such as creating account or saving an article for your blog page.
16
2.2 PHP AND ITS PROPERTIES
PHP stands for PHP: Hypertext Preprocessor. It was Developed by Rasmus Lerdorf in 1994
and It is a powerful server-side scripting language for creating dynamic and interactive
websites also It is an open source software, which is widely used and free to download and use
(PHP is FREE to download from the official PHP resource: www.php.net). It is an efficient
alternative to competitors such as Microsoft's ASP. PHP is perfectly suited for Web
development and can be embedded directly into the HTML code. The PHP syntax is very
similar to JavaScript, Perl and C. PHP is often used together with Apache (web server) on
various operating systems and supports many databases (MySQL, Informix, Oracle, Sybase, 
Solid, PostgreSQL, Generic ODBC, etc.)
2.2.1 SERVER-SIDE SCRIPTING
A “script” is a collection of program or sequence of instructions that is interpreted or carried
out by another program rather than by the computer processor
In server-side scripting, (such as PHP, ASP) the script is processed by the server Like: Apache
on Windows. And the Client-side scripting such as Javascript runs on the web browser.
ADVANTAGES OF SERVER-SIDE SCRIPTING
i. Dynamic content.
ii. Computational capability.
iii. Database and file system access.
iv. Network access (from the server only).
v. Built-in libraries and functions.
vi. Security improvements
2.2.2 COMMON USES OF PHP
i. PHP can generate dynamic page content
ii. PHP can create, open, read, write, delete, and close files on the server
iii. PHP can collect form data
iv. PHP can send and receive cookies
v. PHP can add, delete, modify data in your database
vi. PHP can restrict users to access some pages on your website
vii. PHP can encrypt data
17
2.2.3 FEATURES OF PHP
i. Performance: Script written in PHP executes much faster than those scripts written
in other languages such as JSP & ASP.
ii. Open Source Software: PHP source code is free available on the web, you can
developed all the version of PHP according to your requirement without paying any
cost.
iii. Platform Independent: PHP are available for WINDOWS, MAC, LINUX &
UNIX operating system. A PHP application developed in one OS can be easily
executed in other OS also.
iv. Compatibility: PHP is compatible with almost all local servers used today like
Apache, IIS etc.
v. Embedded: PHP code can be easily embedded within HTML tags and script.
2.2.4 ENVIRONMENTAL SETUP
In order to develop and run PHP web pages, three (3) vital components have to be installed on
your computer system.
i. Web Server: PHP will work with virtually all web server software, including Microsoft
Internet Information Server (IIS) and xampp server.
ii. Database: PHP will work with virtually all database software, including MySQL,
Oracle.
iii. PHP Parser: In order to process PHP script instructions, a parser must be installed to
generate HTML output that can be sent to the Web Browser
2.2.5 PHP FILES
PHP files can contain text, HTML, CSS, JavaScript, and PHP code. PHP code are executed on
the server, and the result is returned to the browser as plain HTML. PHP files have extension
".php".
2.2.6 HOW DOES PHP WORK
Client make request, server run PHP, query database if needed, load other files if needed and
result is sent back to the client. With PHP you can perform task such as storing and retrieving
login information.
18
2.2.7 BASIC PHP SYNTAX
A PHP is a script language that is executed on the server and the plain HTML result is sent
back to the browser. We have the following three ways of writing PHP syntax.
i. Standard Tags: Recommended
<?php
Code goes here
?>
ii. Short tags:
<?
Code goes here
?>
iii. HTML or script tags:
<script language = “php”>
code goes here
</script>
2.2.7.1 PHP EMBEDDED IN HTML
CODE VIEW (index.php) DESIGN VIEW
Fig 2. How PHP Work
19
2.2.8 PHP ECHO AND PRINT STATEMNT
In PHP there are two basic ways to get output: echo and print. The PHP echo and print is a
language construct, and both can be used with or without parentheses: echo or echo(), print or
print().
echo and print are more or less the same. They are both used to output data to the screen. The
differences are small: echo has no return value while print has a return value of 1 so it can be
used in expressions. echo can take multiple parameters (although such usage is rare) while print
can take one argument. Print does not differ to echo except is an older way and is slower to
use. echo is marginally faster than print. Example of echo: echo “Hello”, example of print:
print “welcome’.
2.2.9 PHP VARIABLE
A variable is a representation of a particular value, such as hello or 8726. By assigning a value
to a variable, you can reference the variable in other places in your script, and that value will
always remain the same (unless you change it). Variables are "containers" for storing
information. PHP variables can be used to hold values (x=5) or expressions (z=x+y). A
variable can have a short name (like x and y) or a more descriptive name (age, carname,
total_volume).
Rules for PHP variables:
i. A variable starts with the $ sign, followed by the name of the variable.
ii. A variable name must start with a letter or the underscore character.
iii. A variable name cannot start with a number.
iv. A variable name can only have alpha-numeric characters and underscores (A-z, 0-9,
and _ ).
v. A variable names are case sensitive ($y and $Y are two different variables).
vi. A variables can, but do not need, to be declared before assignment.
vii. A variables are assigned with the = operator, with the variable on the left-hand side
and the expression to be evaluated on the right.
20
2.2.9.1 CREATING PHP VARIABLE
PHP has no command for declaring a variable. A variable is created the moment you first
assign a value to it:
<?php
$txt = “Hello world!”;
$x = 5;
$y = 10.5;
?>
After the execution of the statements above, the variable txt will hold the value Hello world!,
the variable x will hold the value 5, and the variable y will hold the value 10.5 In the example
above, notice that we did not have to tell PHP which data type the variable is that is because
PHP is a loosely type language it automatically converts the variable to the correct data type,
depending on its value.
2.2.9.2 PHP VARIABLE SCOPE
Scope can be defined as the range of availability a variable has to program in which it is
declared. PHP variables can be one of four scope types.
i. Local Variables: A variable declared in a function is considered local, i.e. it can be
referenced solely in that function. Note that any assignment outside of that function will
be considered to be entirely different variable from the one contained in the function.
ii. Global Variables: In contrast to local variables, a global variable can be accessed in
any part of the program. However, in order to be modified, a global variable must be
explicitly declared to be global in the function in which it is to be modified.
iii. Static Variable Normally, when a function is completed/executed, all of its variables
are deleted. However, sometimes we want a local variable NOT to be deleted. We need
it for a further job. To do this, use the static keyword.
iv. Function parameter: are declared after the function name and inside parentheses.
They are declared much like a typical variable would be.
21
2.2.10 PHP DATA TYPES
PHP has a total of eight data types which we use to construct our variables:
i. Integers: are whole numbers, without a decimal point, like 4195.
ii. Doubles: are floating-point numbers, like 3.14159 or 49.1.
iii. Booleans: have only two possible values either true or false.
iv. NULL: is a special type that only has one value: NULL.
v. Strings: are sequences of characters, like 'PHP supports string operations.'
vi. Arrays: are named and indexed collections of other values.
vii. Objects: are instances of programmer-defined classes, which can package up both
other kinds of values and functions that are specific to the class.
viii. Resources: are special variables that hold references to resources external to PHP (such
as database connections).
The first five are simple types, and the next two (arrays and objects) are compound - the
compound types can package up other arbitrary values of arbitrary type, whereas the simple
types cannot.
DATA TYPES EXAMPLE
CODE VIEW DESIGN VIEW
22
2.2.11 PHP ARRAYS
An array stores multiple values in one single variable. An array is a special variable, which can
hold more than one value at a time. If you have a list of items (a list of car names, for example),
storing the cars in single variables could look like this:
$cars1 = "Volvo";
$cars2 = "BMW";
$cars3 = "Toyota";
However, what if we want to loop through the cars and find a specific one? And what if you
had not 3 cars, but 300? The solution is to create an array!
An array can hold many values under a single name, and you can access the values by referring
to an index number.
In PHP, the array() function is used to create an array: array();
2.2.12 PHP OPERTOR
Operators are used to perform operations on variables and values.
PHP divides the operators in the following groups:
i. Arithmetic operators
ii. Assignment operators
iii. Comparison operators
iv. Increment/Decrement operators
v. Logical operators
vi. String operators
vii. Array operators
CODE VIEW DESIGN VIEW
23
2.2.12.1 PHP ARITHMETIC OPERTOR
The PHP arithmetic operators are used with numeric values to perform common arithmetical
operations, such as addition, subtraction, multiplication etc.
Operator Name Example Description Result
+ Addition $x + $y Sum of $x and $y 15
- Subtraction $x - $y Difference of $x and $y 5
* Multiplication $x * $y Product of $x and $y 50
/ Division $x / $y Quotient of $x and $y 2
% Modulus $x % $y Remainder of $x divided by
$y
0
** Exponentiation $x ** $y Result of raising $x to the
$y'th power (Introduced in
PHP 5.6)
100000
2.2.12.2 PHP STRING OPERTOR
PHP has two operators that are specially designed for strings.
Operator Name Example Result
.
Concatenation $txt1= “Hello”
$txt2 = $txt1. “Guys”
Now $txt2 contains “Hello Guys”
.=
Concatenation
assignment
$txt1= “Hello”
$txt1 .= “Guys”
Now $txt1 contain “Hello Guys”
Arithmetic Operators ($x = 10, $y = 5)
Table 1. PHP Arithmetic Operators
Table 2. PHP Srting Operators
24
2.2.13 PHP CONDITIONAL STATEMENT
Conditional statements are used to perform different actions based on different conditions.
Very often when you write code, you want to perform different actions for different decisions.
You can use conditional statements in your code to do this.
In PHP we have the following conditional statements:
i. if statement - executes some code only if a specified condition is true
ii. if...else statement - executes some code if a condition is true and another code if the
condition is false
iii. if...elseif....else statement - selects one of several blocks of code to be executed
iv. switch statement - selects one of many blocks of code to be executed
2.2.13.1 IF ELSE STATEMENT
The if....else statement is used to execute some code if a condition is true and another code if
the condition is false.
Syntax:
if (condition) {code to be executed if condition is true; }
else {code to be executed if condition is false; }
2.2.14 PHP FORM HANDLING
We can create and use forms in PHP. To get form data, we need to use PHP superglobals
$_GET and $_POST. The form request may be get or post. To retrieve data from get request,
we need to use $_GET, and for post request $_POST.
2.2.14.1 PHP GET FORM
Get request is the default form request. The data passed through get request is visible on the
URL browser so it is not secured. It sends the encoded user information appended to the page
CODE VIEW DESIGN VIEW
25
request. Before the browser sends the information, it encodes it using a scheme called URL
encoding. In this scheme, name/value pairs are joined with equal signs and different pairs are
separated by the ampersand. e.g. name1=value1&name2=value&name3=value3. Spaces are
removed and replaced with the + character and any other non-alphanumeric characters are
replaced with a hexadecimal values after the information is encoded. GET also has limit on the
amount of information to send
2.2.14.2 PHP POST FORM
Post request is widely used to submit form that have large amount of data such as file upload,
image upload, login form, registration form etc. The data passed through post request is not
visible on the URL browser so it is secured. All names/values are embedded within the body
of the HTTP request) and has no limits on the amount of information to send. You can send
large amount of data through post request.
CODE VIEW (form1.php) CODE VIEW (welcome.php)
DESIGN VIEW (form1.php) DESIGN VIEW (welcome.php)
26
2.2.15 PHP AND MYSQL
MySQL is a database system used on the web and runs on a server. MySQL is ideal for both
small and large applications and is very fast, reliable, and easy to use. MySQL uses standard
SQL and compiles on a number of platforms. MySQL is free to download and use. It is
developed, distributed, and supported by Oracle Corporation. MySQL is named after co-
founder Monty Widenius's daughter: My
The data in a MySQL database are stored in tables. A table is a collection of related data, and
it consists of columns and rows. Databases are useful for storing information categorically. A
company may have a database with the following tables: Employees, product, customers,
orders etc. PHP combined with MySQL are cross-platform (you can develop in Windows and
serve on a Unix platform)
Database Queries
A query is a question or a request. We can query a database for specific information and have
a record set returned. Look at the following query (using standard SQL): SELECT LastName
CODE VIEW (form1.php) CODE VIEW (login.php)
DESIGN VIEW (form1.php) DESIGN VIEW (login.php)
27
FROM Employees. This query selects all the data in the "LastName" column from the
"Employees" table.
2.2.15.1 MYSQL DATABASE CONNECTION
Before you can access and work with data in a database you must create a connection to the
database. One of the ways you can do that in PHP is with mysql_connect() function. The syntax
is: mysql_connect(server name, username, password); the server name default value is
“localhost” and the username default value is “root” and the password default value is empty
(“”). closing database is done with mysql_close() function. It return true or false.
2.2.15.2 CREATING DATABASE AND TABLE IN PHPMYADMIN
To create database Start by logging onto phpMyAdmin, when you are logged on, simply type
a name for the database and press the button "Create". To create the table write this code in
SQL.
Create table info (
id integer not null primary key auto_increment,
Firstname varchar (25) not null,
Lastname varchar (25) not null,
Phonenumber varchar (11) not null
);
CODE VIEW (db_connect.php) DESIGN VIEW (db_connect.php)
28
2.2.15.3 CONNECTING PHP AND INSERTING DATA INTO DATABASE
2.3 STRUCTURED QUERY LANGUAGE (SQL) AND ITS PROPERTIES
SQL (Structured Query Language) is used to perform operations on the records stored in
database such as updating records, deleting records, creating and modifying tables, views etc.
SQL is just a query language, it is not a database. To perform SQL queries, you need to install
any database for example Oracle, MySQL, MongoDB, PostGre SQL, SQL Server, DB2 etc.
2.3.1 DEFINITION OF SQL
SQL stands for Structured Query Language It is designed for managing data in a relational
database management system (RDBMS) It is pronounced as S-Q-L or sometime See-Qwell.
SQL is a database language, it is used for database creation, deletion, fetching rows and
modifying rows etc. SQL is based on relational algebra and tuple relational calculus. All
DBMS like MySQL, Oracle, MS Access, and SQL Server use SQL as standard database
language.
CODE VIEW (config.php) DESIGN VIEW (register.php)
DESIGN VIEW (register.php) DATA INSERTED IN A DATABASE
29
2.3.2 WHAT SQL DOES
i. With SQL, we can query our database in a numbers of ways, using English-like
statements.
ii. With SQL, user can access data from relational database management system.
iii. It allows user to describe the data.
iv. It allows user to define the data in database and manipulate it when needed.
v. It allows user to create and drop database and table.
vi. It allows user to create view, stored procedure, function in a database.
vii. It allows user to set permission on tables, procedure and view.
2.3.3 WHAT IS DATABASE
A database is an organized collection of data. Database handlers create database in such a way
that only one set of software program provide access of data to all the users. The main purpose
of database is to operate large amount of information by storing, retrieving and managing.
There are many dynamic websites on the world wide web now a days which are handled
through databases. For example, a model to checks the availability of rooms in a hotel. It is an
example of dynamic website that uses database. There are many database available like
MySQL, Sybase, Oracle, Mango DB, Informix, Postgre, SQL Server etc.
2.3.3.1 WHAT IS RDBMS AND DBMS
RDBMS stands for Relational Database Management Systems. All modern database
management systems like SQL, MS SQL Server, My-SQL and Microsoft Access are based on
RDBMS. It is called Relational Data Base Management System (RDBMS) because it is based
on relational model introduced by E.F. Codd. Data is represented in terms of tuples (rows) in
RDBMS. Relational database is most commonly used database. It contains number of tables
and each table has its own primary key. Due to a collection of organized set of tables, data can
be accessed easily in RDBMS.
DBMS: stands for Database Management System is a software through which we execute SQL
queries. Oracle, My-SQL, SQL Server etc. are popular DBMS. Therefore the DBMS provide
user with a systematic way to manage data.
30
2.3.3.2 DEFINITION OF TABLES, RECORD (ROWS), FIELD AND COLUMN
A Table is a collection of related data entries which contains rows and columns to store data.
The A table is the simplest example of data storage in RDBMS.
Example of student table
Id Name Age Course
1 Aliyu 24 Accounting
2 Ibrahim 20 Economics
3 Musa 21 Computer Science
4 Usman 22 Physics
5 Alex 26 Statistics
A Record of a table is also called row. It contains the specific information of each individual
entry in the table. It is a horizontal entity in the table. For example: The above table contains 5
records.
A Field is a column in a table that is supposed to provide specific information about all the
records in the table e.g id, name, age and course are all fields.
A Column is a vertical entity in a table that contains information associated with a specific
field.
2.3.4 COMPONENT OF SQL
SQL component can be classified into the following groups based on their nature:
i. DDL- Data Definition Language is used to define data and create structures. DDL has
the following command (CREATE, ALTER and DROP).
ii. DML- Data Manipulation Language is used to manipulate data, insert data into your
database. DML command are (SELECT, INSERT, UPDATE and DELETE).
iii. DCL- Data Control Language is used to control data in a database. DCL command are
(GRANT and REVOKE).
Table 3. Student Table
31
2.3.5 SQL SYNTAX
SQL follows some unique set of rules and guidelines called syntax. Here, are the basic SQL
syntax.
i. SQL is not case sensitive. Generally SQL keywords are written in uppercase.
ii. SQL statements are dependent on text lines. We can place a single SQL statement on
one or multiple text lines.
iii. You can perform most of the action in a database with SQL statements.
iv. SQL depends on relational algebra and tuple relational calculus.
2.3.6 SQL COMMAND
SQL command is a query or instruction that is telling database such as My-SQL to do. These
are the some important SQL command are:
i. SELECT: it extracts data from a database.
ii. UPDATE: it updates data in database.
iii. DELETE: it deletes data from database.
iv. CREATE TABLE: it creates a new table.
v. ALTER TABLE: it is used to modify the table.
vi. DROP TABLE: it deletes a table.
vii. CREATE DATABASE: it creates a new database.
viii. ALTER DATABASE: It is used to modify a database.
ix. INSERT INTO: it inserts new data into a database.
x. CREATE INDEX: it is used to create an index (search key).
xi. DROP INDEX: it deletes an index.
2.3.7 SQL DATA TYPES
The SQL data type defines a kind of value that a column can contain. In a database table, every
column is required to have a name and a data type. Data Type varies from database to database.
For example, MySQL supports INT but Oracle supports NUMBER for integer values.
Data-type Syntax Explanation
Integer INTEGER The integer data type is used to specify an
integer value.
Smallint SMALLINT The smallint data type is used to specify small
integer value.
32
Numeric NUMERIC(P,S) It specifies a numeric value. Here 'p' is precision
value and 's' is scale value.
Real REAL The real integer is used to specify a single
precision floating point number.
Decimal DECIMAL(P,S) It specifies a decimal value. Here 'p' is precision
value and 's' is scale value.
Float FLOAT(P) It specifies floating-point value e.g. 12.3, 4.5 etc.
Here, 'p' is precision value.
Character CHAR(X) Here, 'x' is the character's number to store.
Character
varying
VARCHAR2(X) Here, 'x' is the character's number to store
Date DATE It stores year, month and days values.
Time TIME It stores hour, minute and second values
Timestamp TIMESTAMP The timestamp data type is used to store year,
month, day, hour, minute and second values.
2.3.8 SQL OPERATORS
SQL statements generally contain some reserved words or characters that are used to perform
operations such as comparison and arithmetical operations etc. These reserved words or
characters are known as operators. Generally there are three types of operators in SQL:
i. SQL Arithmetic Operators
ii. SQL Comparison Operators
iii. SQL Logical Operators
2.3.8.1 SQL LOGICAL OPERATORS
This is the list of logical operators used in SQL.
Operator Description
ALL This is used to compare a value to all values in another value set.
AND This operator allows the existence of multiple conditions in an SQL
statement.
ANY This operator is used to compare the value in list according to the
condition.
BETWEEN This operator is used to search for values, that are within a set of values
IN This operator is used to compare a value to that specified list value
NOT The NOT operator reverse the meaning of any logical operator
OR This operator is used to combine multiple conditions in SQL statements
Table 4. SQL Data Types
33
EXISTS The EXISTS operator is used to search for the presence of a row in a
specified table
LIKE This operator is used to compare a value to similar values using
wildcard operator
2.3.9 SQL CONSTRAINT
You can place constraints to limit the type of data that can go into a table. Such constraints can
be specified when the table is first created via the CREATE TABLE statement, or after the
table is already created via the ALTER TABLE statement.
Common types of constraints include the following:
i. NOT NULL Constraint: Ensures that a column cannot have NULL value.
ii. DEFAULT Constraint: Provides a default value for a column when none is specified.
iii. UNIQUE Constraint: Ensures that all values in a column are different.
iv. CHECK Constraint: Makes sure that all values in a column satisfy certain criteria.
v. Primary Key Constraint: Used to uniquely identify a row in the table.
vi. Foreign Key Constraint: Used to ensure referential integrity of the data.
2.3.10 SQL STATEMENT (QUERY)
In SQL When a user wants to perform an action or get some information from a database file,
he can issue a query. A query is a user request to retrieve data or information with a certain
condition. There are various queries to use in SQL below are some of them.
2.3.10.1 SQL CREATE, USE AND DROP DATABASE STATEMENT
The SQL CREATE DATABASE statement is used by a developer to create a new database.
Syntax of SQL CREATE DATABASE: CREATE DATABASE database_name;
The SQL USE statement is used to select any existing database in the SQL schema. USE
statement is used when you have multiple database in your schema so that all operation would
be performed on the particular selected database. Syntax of SQL USE statement: USE
database_name;
The SQL DROP DATABASE statement is used to delete an existing SQL database from the
schema. The Syntax of SQL DROP DATABASE statement: DROP DATABASE
database_name;
Table 5. SQL Logical Operators
34
2.3.10.2 SQL CREATE, DROP AND TRUNCATE TABLE STATEMENT
SQL CREATE TABLE statement is used to create table in a database. If you want to create a
table, you should name the table and define its column and each column's data type. Syntax to
create the table.
CREATE TABLE table_name (
Col 1 data type,
Col 2 data type,
Col 3 data type,
.
.
.
Col n data type
Primary key (column)
);
Example to create a STUDENTS table with ID as primary key and NOT NULL constraint
CREATE TABLE students (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR (20) NOT NULL,
age INT NOT NULL,
address CHAR (25),
PRIMARY KEY (ID)
);
You can verify it, if you have created the table successfully by looking at the message displayed
by the SQL Server, else you can use DESC command as follows:
SQL> DESC students;
A SQL DROP TABLE statement is used to delete a table definition and all data from a table.
This is very important to know that once a table is deleted all the information available in the
table is lost forever. The command to drop a table from the MySQL database: DROP TABLE
table_name;
35
A SQL TRUNCATE statement is used to remove all rows (complete data) from a table and
not the table itself. Syntax to truncate the table from the database: TRUNCATE TABLE
table_name;
2.3.10.3 SQL INSERT STATEMENT
SQL INSERT statement is a SQL query. It is used to insert a single or a multiple records in a
table.
There are two ways to insert data in a table:
i. By SQL insert into statement
i. By specifying column names
ii. Without specifying column names
ii. By SQL insert into select statement
INSERTING DATA DIRECTLY INTO A TABLE: You can insert a row in the table by
using SQL INSERT INTO command. But there are 2 ways to do this. You can specify or ignore
the column names while using INSERT INTO statement. To insert partial column values, you
must have to specify the column names. But if you want to insert all the column values, you
can specify or ignore the column names. If you specify the column names, Syntax of the insert
into statement will be as follows:
INSERT INTO TABLE_NAME
[(col1, col2, col3,.... col N)]
VALUES (value1, value2, value 3, .... Value N);
Here col1, col2, col3, .... colN are the columns of the table in which you want to insert data.
But, If you ignore the column names, syntax of the insert into statement will be as follows:
INSERT INTO TABLE_NAME
VALUES (value1, value2, value 3, .... Value N);
2.3.10.4 SQL SELECT STATEMENT
The most commonly used SQL command is SELECT statement. It is used to query the
database and retrieve selected data that follow the conditions you want. In simple words, the
select statement is used to query or retrieve data from a table in the database. The syntax of
SELECT statement:
SELECT expressions
FROM tables
WHERE conditions;
36
Here expression is the column that we want to retrieve. Tables indicate the tables, we want to
retrieve records from.
Optional clauses in SELECT statement: There are some optional clauses in SELECT
statement:
[WHERE Clause]: It specifies which rows to retrieve.
[GROUP BY Clause]: Groups rows that share a property so that the aggregate function can be
applied to each group.
[HAVING Clause]: It selects among the groups defined by the GROUP BY clause.
[ORDER BY Clause]: It specifies an order in which to return the rows.
For example, let a database table: student_details;
From the above example, select the first name, last name of all the students. To do so, query
should be like this: SELECT first_name, last_name FROM student_details;
2.3.10.5 SQL UPDATE STATEMENT
SQL UPDATE statement is used to change the data of the records held by tables. Which rows
is to be update, it is decided by a condition. To specify condition, we use WHERE clause. The
UPDATE statement can be written in following form:
UPDATE table_name SET [column_name1= value1,... column_nameN = valueN] [WHERE
condition]
37
The Syntax:
UPDATE table_name
SET column_name = expression
WHERE conditions
Example: here we are going to update an entry in the employee table.
SQL statement:
UPDATE employee
SET username = 'sheik'
WHERE Id = '1';
The result after updating value:
2.3.10.6 SQL DELETE STATEMENT
The SQL DELETE statement is used to delete rows from a table. Generally DELETE
statement removes one or more records from a table. The Syntax for the SQL DELETE
statement:
DELETE FROM table_name [WHERE condition];
Here table_name is the table which has to be deleted. The WHERE clause in SQL DELETE
statement is optional here and it identifies the rows in the column that gets deleted. WHERE
clause is used to prevent the deletion of all the rows in the table, If you don't use the WHERE
clause you might loss all the rows.
SQL DELETE Example: Let us take a table, named staff table.
38
Example of Delete with WHERE clause is given below:
DELETE FROM staff WHERE id=107;
Resulting table after the query:
2.3.10.7 SQL ALTER TABLE STATEMENT
The ALTER TABLE statement work with the structure of the table it is used to add, modify
or delete columns in an existing table. It is also used to rename a table. You can also use SQL
ALTER TABLE command to add and drop various constraints on an existing table.
If you want to add columns in SQL table, the SQL alter table syntax is given below:
ALTER TABLE table_name
ADD column_name datatype
2.4 JAVA PROGRAMMING LANGUAGE AND ITS PROPERTIES
Java is an object oriented programming language developed by Sun Microsystem. It was
modeled after C++ along with some characteristic of small tack. It was designed to be simple,
robust and portable across platforms and operating systems both at the source and at the binary
level. Which means that java programs can run on any machine that has the java virtual
machine installed, which is an interpreter that execute the machine language instruction to
produce result.
Though it was originally intended as a language for programming embedded systems, it has
become very popular because of it natural applicability to programming network software for
world wide web (www). Java is now used to develop large scale enterprise application to
39
enhance the functionality of web servers (computer that provide the content we see in the web
browsers) such as mobile, smart cart, robotics, games etc.
2.4.1 JAVA FEATURES
Java has some characteristics that make it the fastest growing programming language in the
world and a suitable language for novices and expert programmers to efficiently and effectively
solve the increasing and dynamic programming problems.
i. Java is an object oriented programming: is a programming approach in which the data
and the code that operate on the data are arranged into a single data structure called
object.
ii. Java is robust: Robust simply means strong. Java is robust because it uses strong
memory management also there is a lack of pointers that avoids security problems.
iii. Java is secure: because its programs are easy to protect from viruses and tempering.
iv. Java is a platform independent: because it can be run on variety of platforms (the
underlying hardware and software for system).
v. Java is portable: It has bytecode which can be carry to any other platform.
vi. Java has a high performance: It has a high performance than c, c++, because these are
compile language and java is interpreted language.
vii. Java is multithreaded: in java is possible to run any number of task at one time. The
main advantage of using multithreaded is that it allow you to run any number of task at
one time by sharing one memory you do not need to separate memory.
2.4.2 JAVA HISTORY
Java was developed by James Gosling and his green team in the year 1991 in June. It was
named as ‘oak’ after an oak tree that stood outside Gosling’s office also went by name ‘green’
and ended up later being renamed as java from a list of random word. Sun released the first
public implementation as java 1.0 in 1995. It promised write once, Run anywhere (WORA).
On 13 nov, 2006 sun released much of java as free and open source software under the terms
of General Public License (GPL) on May 8th
2007 sun finished the process making all of java’s
core code free and open source. Today we have the latest version as SE 8.
2.4.3 JAVA VIRTUAL MACHINE
The Java virtual machine (JVM) is a software implementation of a computer that executes
programs like a real machine. The Java virtual machine is written specifically for a specific
40
operating system, e.g. for Linux a special implementation is required as well as for Windows.
Java programs are compiled by the Java compiler into bytecode and the Java virtual machine
interprets this bytecode and executes the Java program.
2.4.4 JAVA RUNTIME ENVIRONMENT VS. JAVA DEVELOPMENT KIT
A Java distribution comes typically in two flavors, the Java Runtime Environment (JRE) and
the Java Development Kit (JDK). The Java runtime environment (JRE) consists of the JVM
and the Java class libraries and contains the necessary functionality to start Java programs. The
JDK contains in addition the development tools (core libraries and compiler) necessary to
create Java programs it is distributed by Oracle. The JDK consists therefore of a Java compiler,
the Java virtual machine, and the Java class libraries.
2.4.5 JAVA INSTALLATION
Java might already be installed on your machine. You can test this by opening a console (if you
are using Windows: Win+R, enter cmd and press Enter) and by typing in the following
command: javac
If Java is correctly installed, you should see some information about your Java installation. If
the command line returns the information that the program could not be found, you have to
install Java.
2.4.5.1 JAVA ENVIRONMENT SET UP
Below are the properties or specification you need to run a java program
i. A Pentium 200 MHZ computer with a minimum of 64MB of RAM (128 MB of RAM
recommended)
ii. Linux 7 |or Windows xp|7|8 operating system
iii. Microsoft notepad, eclipse or any other text editor.
iv. Java JDK
2.4.5.2 DOWNLOADING AND INSTALLING JDK
To download the JDK, go to
http://www.oracle.com/technetwork/java/javase/downloads/index.html. Click on "JDK with
NetBeans Bundle". Follow the instructions for downloading the JDK installation file
Windows: If you are running Windows, simply run the executable file and follow the
installation instructions.
41
2.4.5.3 JAVA JDK EDITION
i. Java Standard Edition (JSE): it is the most widely used for developing program. It also
help us to deploy portable application it consist of virtual machine which allow us to
execute our java program
ii. Java Enterprise Edition (JEE) – This edition is mainly for developing and running
distributed multitier architecture Java applications, based largely on modular software
components running on an application server.
iii. Java Micro Edition (JME) – This edition is primarily for developing programs or build
up and embedded application such as mobile application.
2.4.5.4 SETTING UP PATH IN WINDOWS
i. Right click on my computer and select properties
ii. Click on environment variables under advance tab
iii. Alter the path variable so that it also contains the path to the java executable Example
if the path is currently set up to ‘C:WindowsSystem32’; change the path to
‘C:WindowsSystem32;C:Programs FilesJavajdk-11.0.1;’
2.4.6 WRITE, COMPILE AND RUN A FIRST JAVA PROGRAM
Write source code:
The following Java program is developed under Windows using a text editor (Notepad)
Compile and run your Java program
Open a window command prompt. Switch to the Java directory with the command cd . Then
locate the directory via the cd Java command. Use the dir command to verify that the source
file is in the directory. Compile your Java source file into a class file with the following
command. javac Simple.java Afterwards list again the content of the directory with the dir
This source code is saved in Java directory
with the Simple.java filename. The name of a
Java source file must always equals the class
name (within the source code) and end with
the .java extension. In this example the
filename must be Simple.java because the
class is called Simple.
42
command. The directory contains now a file "Simple.class". If you see this file you have
successfully compiled your first Java source code into bytecode. You can now start your
compiled Java program. Ensure that you are still in the Java directory and enter the following
command to start your Java program. “java Simple” The system should write "Hello Java" on
the command prompt.
2.4.6.1 PARAMETERS USED IN FIRST JAVA PROGRAM
Let's see what is the meaning of class, public, static, void, main, String[], System.out.println().
i. class keyword is used to declare a class in java.
ii. public keyword is an access modifier which represents visibility. It means it is visible
to all.
iii. static is a keyword. If we declare any method as static, it is known as the static method.
The core advantage of the static method is that there is no need to create an object to
invoke the static method. The main method is executed by the JVM, so it doesn't require
to create an object to invoke the main method. So it saves memory.
iv. void is the return type of the method. It means it doesn't return any value.
v. main represents the starting point of the program.
vi. String[] args is used for command line argument.
vii. System.out.println() is used to print statement.
2.4.7 BASIC SYNTAX OF JAVA
In order to write the java programming you need to understand the basic syntax how do you
write, what are the meaning convention, how do you declare variable etc. About java
programming it is very important to keep in mind the following points.
43
i. Case Sensitivity: Java is case sensitive, which means identifier Hello and hello would
have different meaning in java
ii. Class Names: for all class names the first letter should be in upper case and follow by
lowercase. Example Class MyFisttJavaClass.
iii. Method Names: all method name should start with a lowercase example public void
myMethod(). If severals word are used to form name then each inner word first letter
should be upper.
iv. Program File Name: name of the program file should exactly match the class name.
v. All identifies such as name of variables, methods, classes, interface and package should
begin with a letter (A to Z or a to z), _(underscore) or $ currency symbol.
vi. A keyword such as class, static, etc. cannot be used as identifier as they have predefined.
vii. White space and blank line are totally ignore by java compiler. Eg. int age;
viii. Comments in java are nothing but better explanatory or information of a program e.g.
why is this program, what the program does etc.it can be single line or multiline
comment.
//This is single comment.
/* This is a multiline comment
it is a simple java program */
2.4.8 JAVA VARIABLE
A variable is a container which holds the value while the java program is executed. A variable
is assigned with a datatype. Variable is name of reserved area allocated in memory. In other
words, it is a name of memory location. It is a combination of "vary + able" that means its
value can be changed. There are three types of variables in java:
i. Local variable
ii. Instance variable
iii. Static variable
Local Variable: A variable declared inside the body of the method is called local variable.
You can use this variable only within that method and the other methods in the class aren't even
aware that the variable exists. A local variable cannot be defined with "static" keyword.
Instance Variable: A variable declared inside the class but outside the body of the method, is
called instance variable. It is not declared as static. It is called instance variable because its
value is instance specific and is not shared among instances.
44
Static variable: A variable which is declared as static is called static variable. It cannot be
local. You can create a single copy of static variable and share among all the instances of the
class. Memory allocation for static variable happens only once when the class is loaded in the
memory.
Example to understand the type of variable in java:
class Variable{
int data=50;//instance variable
static int m=100;//static variable
void method(){
int n=90;//local variable
}
}//end of class
2.4.9 JAVA DATA TYPES
Data types specify the different sizes and values that can be stored in the variable. There are
two types of data types in Java:
i. Primitive data types: The primitive data types include boolean, char, byte, short, int,
long, float and double.
ii. Non-primitive data types: The non-primitive data types include Classes, Interfaces, and
Arrays.
Java Primitive Data Types: In Java language, primitive data types are the building blocks of
data manipulation. These are the most basic data types available in Java language. Java is a
statically-typed programming language. It means, all variables must be declared before its use.
That is why we need to declare variable's type and name.
There are 8 types of primitive data types which includes: boolean data type, byte data type ,
char data type , short data type , int data type , long data type , float data type and double data
type.
Fig. 3 Java Data Types
45
Data
Type
Default
Value
Default
size
Min Max
boolean false 1 bit __ __
char u0000 2 byte u0000 uffff
byte 0 1 byte -128 127
short 0 2 byte -32,768 32,767
int 0 4 byte -2,147,483,648 2,147,483,647
long 0L 8 byte -9,223,372,036,854,775,808L 9,223,372,036,854,775,807L
float 0.0f 4 byte 3.4e−038f 3.4e+038f
double 0.0d 8 byte 1.7e−308d 1.7e+038d
2.4.10 JAVA OPERATORS
Operators are used to perform operations on variables and values. The value is called an
operand, while the operation (to be performed between the two operands) is defined by
an operator.
Example: int x = 100 + 50;
In the example above, the numbers 100 and 50 are operands, and the + sign is
an operatorJava divides the operators into the following groups:
i. Arithmetic operators
ii. Assignment operators
iii. Comparison operators
iv. Logical operators
v. Bitwise operators
Arithmetic operator perform mathematics calculation
Operator Meaning Example Result
+ Addition 5+6 11
- Subtraction 8-5 3
* Multiplication 2*3 6
/ Division 21/7 3
% Modulus 18%4 2
Table. 6 Java Data Types
Table. 7 Java Arithmetic Operators
46
Assignment operators (=): It is use to assign values or result of an expression to a variable or
other expression.
Expression Meaning
x += y x= x + y
x -= y x= x - y
x *= y x= x * y
x /= y x= x / y
Comparison operators: are used to test equality and magnitude, or to compare between two
things. The expression that uses them return a Boolean, value that is true or false.
Logical Operators: expressions that result in Boolean values (for example the comparison
operators) can be combined by using logical operators that represent the logical combination
AND, OR, XOR and logical NOT.
2.4.11 CONTROL STRUCTURES IN JAVA
Control structures are statements that are used to control the order in which statements in a
program should be executed, in order to avoid the inherent sequential execution of programs.
Some of the control structures are:
i. SELECTION STATEMENT: Java program use selection statements to choose among
alternative courses of action. We have:
i. If statement
ii. If…else statement
iii. if-else-if ladder statement
iv. nested if statement
v. Switch case statement.
Operator Meaning Example
== Equal x==3
!= Not equal x!=3
< Less than x<3
> Greater than x>3
<= Less than or equal to x<=3
>= Greater than or equal to x>=3
Table. 8 Java Assignment Operators
Table. 9 Java Comparison Operators
47
ii. REPETITION STATEMENT also called looping statement or loop allows the
programmer to specify that a program should repeat on action while some condition(s)
remain true. Java provide three repetition statement, they are:
i. While loop
ii. do…while
iii. for loop
2.4.11.1 SYNTAXES OF REPETITION STATEMENTS
While Loop syntax
while (Boolean_expression) {
//statements
}
The loop first test the condition, if the condition evaluate to true it executes the entire
statement, then test the condition again if it remains true it repeat the execution of the statement
until the condition become false.
Do…while syntax
do {
// statements
}
while(Boolean_expression);
The do while loop is similar to while loop, except that a do while loop is guaranteed to execute
at least one time. Notice that the Boolean expression appear at the end of the loop, so the
statement in the loop execute once before the Boolean is tested. If Boolean expression is true,
control jumps back up to do statement in the loop execute again until is false.
For loop
For (initialization; Boolean_expression; update){
//statement
}
The for loop consist of four part an initialization expression, a Boolean condition expression,
the iteration (update) expression and the executing parts. The third expression usually updates
the loop variable initialized in first expression. A for loop is useful when you know how many
times a task is to be repeated.
48
2.4.12 JAVA METHOD AND CONSTRUCTORS
A method is a block of code which only runs when it is called on the object. You can pass
data, known as parameters, into a method and has return value. Methods are used to perform
certain actions, and they are also known as functions.
A method must be declared within a class. It is defined with the name of the method, followed
by parantheses (). Java provides some pre-defined methods, such as System.out.println() but
you can also create your own methods to perform certain actions:
Example create a method inside my class
public class MyClass {
static void myMethod() {
// code to be executed
System.out.println("Hello World");
}
}
Example Explained
i. myMethod() is the name of the method
ii. static means that the method belongs to the MyClass class and not an object of the
MyClass class.
iii. void means that this method does not have a return value.
Call a Method
To call a method in Java, write the method's name followed by two parantheses () and a
semicolon; In the following example, myMethod() is used to print a text (the action), when it
is called inside main method:
public class MyClass {
static void myMethod() {
System.out.println("I just got executed!");
}
public static void main(String[] args) {
myMethod();
}
}
// Outputs "I just got executed!"
A method can also be called multiple times, if you want.
49
Java Constructors: is a special method that is used to initialize objects. The constructor is
called when an object of a class is created. It can be used to set initial values for object attributes
(variable).
Example: Create a constructor:
// Create a MyClass class
public class MyClass {
int x; // Create a class attribute
// Create a class constructor for the MyClass class
public MyClass() {
x = 5; // Set the initial value for the class attribute x
}
public static void main(String[] args) {
// Create an object of class MyClass (This will call the constructor)
MyClass myObj = new MyClass();
System.out.println(myObj.x); // Print the value of x
}
}
// Outputs 5
Note that the constructor name must match the class name, and it cannot have a return type
(like void). Also note that the constructor is called when the object is created. All classes have
constructors by default: if you do not create a class constructor yourself, Java creates one for
you. However, then you are not able to set initial values for object attributes.
2.4.13 JAVA CLASSES AND OBJECTS
Java is an object-oriented programming language. Everything in Java is associated with classes
and objects, along with its attributes and methods. For example: in real life, a car is an object.
The car has attributes, such as weight and color, and methods, such as drive and brake.S
A Class is like an object constructor, or a "blueprint" for creating objects. A class contain data
and method.
To create a class, use the keyword class: Create a class called "MyClass" with a variable x:
public class MyClass {
int x = 5;
}
50
Remember from the Java Syntax chapter that a class should always start with an uppercase first
letter, and that the name of the java file should match the class name.
In Java, Object is a copy of class or instance of class. An object is created from a class. We
have already created the class named MyClass, so now we can use this to create objects. To
create an object of MyClass, specify the class name, followed by the object name, and use the
keyword new:
Example
Create an object called "myObj" and print the value of x:
public class MyClass {
int x = 5;
public static void main(String[] args) {
MyClass myObj = new MyClass();
System.out.println(myObj.x);
}
}
//Output: 5
2.4.13.1 ACCESS METHODS WITH OBJECTS
// Create a Car class
public class Car {
// Create a fullThrottle() method
public void fullThrottle() {
System.out.println("The car is going as fast as it can!");
}
// Create a speed() method and add a parameter
public void speed(int maxSpeed) {
System.out.println("Max speed is: " + maxSpeed);
}
// Inside main, call the methods on the myCar object
public static void main(String[] args) {
Car myCar = new Car(); // Create a myCar object
myCar.fullThrottle(); // Call the fullThrottle() method
myCar.speed(200); // Call the speed() method
}
}
Output:
The car is going as fast as it can
Max speed is: 200
51
CHAPTER THREE
3.0 TECHNICAL SKILLS ACQUIRED
Below are list of skills i acquired during my Industrial Training (SIWES) at AUN YOLA
i. Basic knowledge in understanding back end development and database maintenance.
ii. Ability to create a dynamic websites such as contact form, blog post, registration form,
login form etc. with the help of PHP and MySQL together with HTML, CSS and
Bootstrap.
iii. Ability of Installing Web server (xampp) on windows and linking PHP to the Database.
iv. Ability to install java IDE (Netbeans) and setting up java environment path in windows
v. Ability to Insert, Update, Select, Delete records in the Database using SQL and also
Importing and Exporting database file from one local server to another.
vi. I learnt how to write some basic Java programs and some rules governing it.
3.1 PERSONAL INPUT TO THE INSTITUTE (AUN YOLA)
i. Assisting students through their ebooks (such as, installing a kindle reader, reset of pin).
ii. Assist faculty in connecting their system to a projector when they have classes
iii. Assist student in connecting their system to a projector when making a presentation.
iv. Connecting online classes via skype, webEx and zoom
v. Book conference room for faculty or student for meetings, seminar or workshop.
3.2 CHALLENGES ENCOUNTERD
i. Difficulty in seeking for IT attachment.
ii. Lack of transportation fee.
iii. Lack of feeding fee.
iv. Lack of facilitator that would taught me web design (front end and back end
development).
v. Too much of hours spent daily from Mondays to Fridays 8:30am to 5:30pm.
vi. Self-leaning through online such as w3schools, edx, code academy etc. and videos from
youtube channel.
52
3.3 WEB APPLICATION DEVELOPED
During the period of my I.T, after i got a basic knowledge about back end development which
is the real life work in the field I did my training, i was able to develop a dynamic web
application using PHP and My-SQL and a front-end programing language such as html and css
which i create Employee Record Management System. The purpose of this application is to
enable the admin add employee data, manage employee data (search, update and delete) of an
organization in such a way that we can have the data and information of employee saved in the
database and this will make the access of employee data to be easy whenever needed unlike
the traditional way of keeping data which is done manually.
LOGIN FORM
When you first launched the web application the first thing would appear is a login form. This
form has two input fields with a placeholder of username and password and one button, Login.
For admin to have access to the web application he must enter his password and username in
these input fields and then click of Login button or press of Enter key to access the site.
HOME PAGE
Once the admin log in successfully the home page would appear with the navigation keys for
admin to switch to different environments which include Home, Search, View Data, Add User,
View User and Logout. This Home page contain the section which the employee data would
be added to database, which include First Name, Last Name, Phone Number, age etc.
53
SEARCH PAGE
The Search Page is use to search data or information of a particular employee whenever his
data is needed by entering his first name in the input field for First Name and then click search
or enter to find out if the employee exist or not
In the above screenshot we want to check whether there is an employee whose first name is
Alkhalil that exist in the database and the below shows there is one employee that exist.
54
VIEW DATA PAGE
The View Data Page is used to view all the data of employee that exist in the database.
EDIT AND DELETE LINK
The edit link enable the admin to edit or update a particular data of employee as shown below
Similarly the Delete link is used to delete data of a particular employee from the database.
55
ADD USER PAGE
The Add User Page is used to add a user who will handle or manage the web application for
the employee record management system with a username and password.
VIEW USER PAGE
The View User Page is used to view all the users that are added in the database with their
username and password.
The admin can delete a particular user of the web application by clicking the delete link above.
The user of the web application has a limited features to handle in the application unlike admin.
The above are the features of the users of the employee record management system they can
add employee, search employee, delete or update employee but cannot add users, view users
or delete users from the web application system.
LOGOUT BUTTON
The Logout Button is used to logout admin / user from the web application back to Login page.
56
CHAPTER FOUR
4.0 SUMMARY
During my IT I learned back end development and its programming language which include
PHP and My-SQL in which I develop some dynamic site which include blog post, I also learned
about SQL and some basic java programs using Netbeans IDE.
I was able to develop a dynamic web application that would manage and maintain the record
of employee of organization in such a way that the admin would add employee, view employee,
update or delete employee and search a particular employee. The application was developed
using PHP and My-SQL and a front end programming language which include HTML and
CSS.
4.1 CONCLUSION
The industrial work experience scheme (SIWES) has played a vital role in ensuring that
students in tertiary institutions obtained industrial skills before their graduation. This bridges
the gap between theory and practical aspect of their field of study and also enable students to
acquaint themselves with the area of the real world application of their field of study.
My training at AUN has given me a broader view to the importance and relevance of Computer
Science (Back end development and its programming language) in the immediate society and
the world as a whole, as i now look forward to impacting it positively after graduation. I have
also been able to improve my communication and skills and thereby developed good
relationship with my fellow colleagues at work. I have also been able to appreciate the
connection between my course of study and other disciplines in producing a successful result.
4.2 RECOMMENDATION
As an IT student who have just finished his attachment and experienced many things, I have
the following recommendations:
i. SIWES should ensure active participation of student on attachment.
ii. Allowances should be paid to students during their IT just like NYSC and not after.
This would help them to handle some financial problems during their training
course.
iii. Students should utilize their IT period to prepare themselves for employment after
graduation.
57
REFERENCE
TEXTBOOKS
 Joseph P, Russel (2001). Java Programming for the absolute beginner; Prima
Publishing Inc Rosevlle califonia.
 Larry Rockoff (2017). The Language of SQL second edition; Pearson Education, Inc.
Printed in the United States of America.
 Robin Nixon (2014). Learning PHP, MySQL,Javascript, CSS & HTML5 (3rd
Edition)
published by O’ Reilly media Inc, 1005 Gravenstein High way North Sebastopol
(USA).
LINK
 http://www.w3schools.com
 http://www.tutorialpoint.com
 http://www.javatpoint.com
 http://www.w3schools.com
 http://www.commonlounge.com
 http://www.codecademy.com
 http://www.freecodecamp.com
 http://www.edx.org
 http://udacity.com

More Related Content

What's hot

Computer Basics - A SIWES Report.
Computer Basics - A SIWES Report.Computer Basics - A SIWES Report.
Computer Basics - A SIWES Report.Abah Joseph Israel
 
Siwes report original
Siwes report originalSiwes report original
Siwes report originalBrightnyt Pun
 
Final Internship Report by kiyimba Bill (International University Of East Afr...
Final Internship Report by kiyimba Bill (International University Of East Afr...Final Internship Report by kiyimba Bill (International University Of East Afr...
Final Internship Report by kiyimba Bill (International University Of East Afr...Bill Kiyimba
 
SIWES TECHNICAL REPORT BY OLADEJI ADEOLA
SIWES TECHNICAL REPORT BY OLADEJI ADEOLASIWES TECHNICAL REPORT BY OLADEJI ADEOLA
SIWES TECHNICAL REPORT BY OLADEJI ADEOLAG_ade
 
Information technology Internship report
Information technology Internship reportInformation technology Internship report
Information technology Internship reportRodney kaweesa
 
Computer Science Student Final attachment Logbook
Computer Science Student Final attachment Logbook Computer Science Student Final attachment Logbook
Computer Science Student Final attachment Logbook Paullaster Okoth
 
Indusrial trainning Report presentation
Indusrial trainning Report presentationIndusrial trainning Report presentation
Indusrial trainning Report presentationAbdulafeez Fasasi
 
Computer science industrial training report carried out at web info net ltd ...
Computer science  industrial training report carried out at web info net ltd ...Computer science  industrial training report carried out at web info net ltd ...
Computer science industrial training report carried out at web info net ltd ...rashid muganga
 
Computer science/ IT Fianl attachment report
Computer science/ IT Fianl attachment reportComputer science/ IT Fianl attachment report
Computer science/ IT Fianl attachment reportPaullaster Okoth
 
Industrial Report - Ndlovu Kevin Mehluli
Industrial Report - Ndlovu Kevin MehluliIndustrial Report - Ndlovu Kevin Mehluli
Industrial Report - Ndlovu Kevin MehluliKevin Ndlovu
 

What's hot (20)

My SIWES report
My SIWES reportMy SIWES report
My SIWES report
 
Technical Report
Technical ReportTechnical Report
Technical Report
 
Siwes it report
Siwes it reportSiwes it report
Siwes it report
 
SIWES PRESENTATION
SIWES PRESENTATIONSIWES PRESENTATION
SIWES PRESENTATION
 
MY SIWES REPORT
MY SIWES REPORTMY SIWES REPORT
MY SIWES REPORT
 
Computer Basics - A SIWES Report.
Computer Basics - A SIWES Report.Computer Basics - A SIWES Report.
Computer Basics - A SIWES Report.
 
Siwes report original
Siwes report originalSiwes report original
Siwes report original
 
johnson pdf (3)_2N
johnson pdf (3)_2Njohnson pdf (3)_2N
johnson pdf (3)_2N
 
Final Internship Report by kiyimba Bill (International University Of East Afr...
Final Internship Report by kiyimba Bill (International University Of East Afr...Final Internship Report by kiyimba Bill (International University Of East Afr...
Final Internship Report by kiyimba Bill (International University Of East Afr...
 
It report
It reportIt report
It report
 
SIWES TECHNICAL REPORT BY OLADEJI ADEOLA
SIWES TECHNICAL REPORT BY OLADEJI ADEOLASIWES TECHNICAL REPORT BY OLADEJI ADEOLA
SIWES TECHNICAL REPORT BY OLADEJI ADEOLA
 
Information technology Internship report
Information technology Internship reportInformation technology Internship report
Information technology Internship report
 
SIWES REPORT SAMPLE
SIWES REPORT SAMPLESIWES REPORT SAMPLE
SIWES REPORT SAMPLE
 
KOHequity SIWES report
KOHequity SIWES reportKOHequity SIWES report
KOHequity SIWES report
 
Richard siwes report
Richard siwes reportRichard siwes report
Richard siwes report
 
Computer Science Student Final attachment Logbook
Computer Science Student Final attachment Logbook Computer Science Student Final attachment Logbook
Computer Science Student Final attachment Logbook
 
Indusrial trainning Report presentation
Indusrial trainning Report presentationIndusrial trainning Report presentation
Indusrial trainning Report presentation
 
Computer science industrial training report carried out at web info net ltd ...
Computer science  industrial training report carried out at web info net ltd ...Computer science  industrial training report carried out at web info net ltd ...
Computer science industrial training report carried out at web info net ltd ...
 
Computer science/ IT Fianl attachment report
Computer science/ IT Fianl attachment reportComputer science/ IT Fianl attachment report
Computer science/ IT Fianl attachment report
 
Industrial Report - Ndlovu Kevin Mehluli
Industrial Report - Ndlovu Kevin MehluliIndustrial Report - Ndlovu Kevin Mehluli
Industrial Report - Ndlovu Kevin Mehluli
 

Similar to Siwes Report on Back End Web Development

Report final
Report finalReport final
Report finalJim Kats
 
Field Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentField Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentAL-Khalil
 
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docSCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docbosed0737
 
student-data-management-1-2.doc
student-data-management-1-2.docstudent-data-management-1-2.doc
student-data-management-1-2.docJagaBehera1
 
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei
 
Online resort reservation system report (practicum)
Online resort reservation system report (practicum)Online resort reservation system report (practicum)
Online resort reservation system report (practicum)Sumaiya Ismail
 
PLAN B I.T DEFENCE.pptx
PLAN B I.T DEFENCE.pptxPLAN B I.T DEFENCE.pptx
PLAN B I.T DEFENCE.pptxoyelekanSamuel
 
Report on Industrial Attachment at Abanti Colour Tex Limited
Report on Industrial Attachment at Abanti Colour Tex LimitedReport on Industrial Attachment at Abanti Colour Tex Limited
Report on Industrial Attachment at Abanti Colour Tex LimitedAbu Hasnat Md. Shakik Prodhan
 
Online Attendance System
Online Attendance SystemOnline Attendance System
Online Attendance SystemAkash Kr Sinha
 
Industrial_Training_Report_docx.docx
Industrial_Training_Report_docx.docxIndustrial_Training_Report_docx.docx
Industrial_Training_Report_docx.docxKomeshKumar2
 
ANSYS - FEA / FEM Course
ANSYS - FEA / FEM CourseANSYS - FEA / FEM Course
ANSYS - FEA / FEM CourseSrishti Sikaria
 
Page 1 of 9 school of engineering uc lan cou
Page 1 of 9  school of engineering uc lan couPage 1 of 9  school of engineering uc lan cou
Page 1 of 9 school of engineering uc lan coussuser562afc1
 
Applying quality-standard (css)
Applying quality-standard (css)Applying quality-standard (css)
Applying quality-standard (css)Bong Bandola
 

Similar to Siwes Report on Back End Web Development (20)

Report final
Report finalReport final
Report final
 
Report docx
Report docxReport docx
Report docx
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Internship Report
Internship ReportInternship Report
Internship Report
 
FYP 2 REPORT AMIRUL ARIFF
FYP 2 REPORT AMIRUL ARIFFFYP 2 REPORT AMIRUL ARIFF
FYP 2 REPORT AMIRUL ARIFF
 
Field Work Report on Front End Web Development
Field Work Report on Front End Web DevelopmentField Work Report on Front End Web Development
Field Work Report on Front End Web Development
 
Print
PrintPrint
Print
 
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docSCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
 
student-data-management-1-2.doc
student-data-management-1-2.docstudent-data-management-1-2.doc
student-data-management-1-2.doc
 
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
 
Online resort reservation system report (practicum)
Online resort reservation system report (practicum)Online resort reservation system report (practicum)
Online resort reservation system report (practicum)
 
PLAN B I.T DEFENCE.pptx
PLAN B I.T DEFENCE.pptxPLAN B I.T DEFENCE.pptx
PLAN B I.T DEFENCE.pptx
 
Experience at WSO2 as an Intern
Experience at WSO2 as an InternExperience at WSO2 as an Intern
Experience at WSO2 as an Intern
 
Report on Industrial Attachment at Abanti Colour Tex Limited
Report on Industrial Attachment at Abanti Colour Tex LimitedReport on Industrial Attachment at Abanti Colour Tex Limited
Report on Industrial Attachment at Abanti Colour Tex Limited
 
Online Attendance System
Online Attendance SystemOnline Attendance System
Online Attendance System
 
Industrial_Training_Report_docx.docx
Industrial_Training_Report_docx.docxIndustrial_Training_Report_docx.docx
Industrial_Training_Report_docx.docx
 
ANSYS - FEA / FEM Course
ANSYS - FEA / FEM CourseANSYS - FEA / FEM Course
ANSYS - FEA / FEM Course
 
Page 1 of 9 school of engineering uc lan cou
Page 1 of 9  school of engineering uc lan couPage 1 of 9  school of engineering uc lan cou
Page 1 of 9 school of engineering uc lan cou
 
Applying quality-standard (css)
Applying quality-standard (css)Applying quality-standard (css)
Applying quality-standard (css)
 
Fyp report
Fyp reportFyp report
Fyp report
 

Recently uploaded

Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.
Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.
Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.Cherry
 
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIACURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIADr. TATHAGAT KHOBRAGADE
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learninglevieagacer
 
Concept of gene and Complementation test.pdf
Concept of gene and Complementation test.pdfConcept of gene and Complementation test.pdf
Concept of gene and Complementation test.pdfCherry
 
Pteris : features, anatomy, morphology and lifecycle
Pteris : features, anatomy, morphology and lifecyclePteris : features, anatomy, morphology and lifecycle
Pteris : features, anatomy, morphology and lifecycleCherry
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Cherry
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professormuralinath2
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryAlex Henderson
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.Cherry
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusNazaninKarimi6
 
Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.Cherry
 
ONLINE VOTING SYSTEM SE Project for vote
ONLINE VOTING SYSTEM SE Project for voteONLINE VOTING SYSTEM SE Project for vote
ONLINE VOTING SYSTEM SE Project for voteRaunakRastogi4
 
Taphonomy and Quality of the Fossil Record
Taphonomy and Quality of the  Fossil RecordTaphonomy and Quality of the  Fossil Record
Taphonomy and Quality of the Fossil RecordSangram Sahoo
 
Cot curve, melting temperature, unique and repetitive DNA
Cot curve, melting temperature, unique and repetitive DNACot curve, melting temperature, unique and repetitive DNA
Cot curve, melting temperature, unique and repetitive DNACherry
 
LUNULARIA -features, morphology, anatomy ,reproduction etc.
LUNULARIA -features, morphology, anatomy ,reproduction etc.LUNULARIA -features, morphology, anatomy ,reproduction etc.
LUNULARIA -features, morphology, anatomy ,reproduction etc.Cherry
 
Efficient spin-up of Earth System Models usingsequence acceleration
Efficient spin-up of Earth System Models usingsequence accelerationEfficient spin-up of Earth System Models usingsequence acceleration
Efficient spin-up of Earth System Models usingsequence accelerationSérgio Sacani
 
GBSN - Microbiology (Unit 5) Concept of isolation
GBSN - Microbiology (Unit 5) Concept of isolationGBSN - Microbiology (Unit 5) Concept of isolation
GBSN - Microbiology (Unit 5) Concept of isolationAreesha Ahmad
 
GBSN - Microbiology (Unit 4) Concept of Asepsis
GBSN - Microbiology (Unit 4) Concept of AsepsisGBSN - Microbiology (Unit 4) Concept of Asepsis
GBSN - Microbiology (Unit 4) Concept of AsepsisAreesha Ahmad
 
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.Cherry
 

Recently uploaded (20)

Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.
Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.
Genome Projects : Human, Rice,Wheat,E coli and Arabidopsis.
 
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIACURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learning
 
Concept of gene and Complementation test.pdf
Concept of gene and Complementation test.pdfConcept of gene and Complementation test.pdf
Concept of gene and Complementation test.pdf
 
Pteris : features, anatomy, morphology and lifecycle
Pteris : features, anatomy, morphology and lifecyclePteris : features, anatomy, morphology and lifecycle
Pteris : features, anatomy, morphology and lifecycle
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.
 
ABHISHEK ANTIBIOTICS PPT MICROBIOLOGY // USES OF ANTIOBIOTICS TYPES OF ANTIB...
ABHISHEK ANTIBIOTICS PPT MICROBIOLOGY  // USES OF ANTIOBIOTICS TYPES OF ANTIB...ABHISHEK ANTIBIOTICS PPT MICROBIOLOGY  // USES OF ANTIOBIOTICS TYPES OF ANTIB...
ABHISHEK ANTIBIOTICS PPT MICROBIOLOGY // USES OF ANTIOBIOTICS TYPES OF ANTIB...
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
 
Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.
 
ONLINE VOTING SYSTEM SE Project for vote
ONLINE VOTING SYSTEM SE Project for voteONLINE VOTING SYSTEM SE Project for vote
ONLINE VOTING SYSTEM SE Project for vote
 
Taphonomy and Quality of the Fossil Record
Taphonomy and Quality of the  Fossil RecordTaphonomy and Quality of the  Fossil Record
Taphonomy and Quality of the Fossil Record
 
Cot curve, melting temperature, unique and repetitive DNA
Cot curve, melting temperature, unique and repetitive DNACot curve, melting temperature, unique and repetitive DNA
Cot curve, melting temperature, unique and repetitive DNA
 
LUNULARIA -features, morphology, anatomy ,reproduction etc.
LUNULARIA -features, morphology, anatomy ,reproduction etc.LUNULARIA -features, morphology, anatomy ,reproduction etc.
LUNULARIA -features, morphology, anatomy ,reproduction etc.
 
Efficient spin-up of Earth System Models usingsequence acceleration
Efficient spin-up of Earth System Models usingsequence accelerationEfficient spin-up of Earth System Models usingsequence acceleration
Efficient spin-up of Earth System Models usingsequence acceleration
 
GBSN - Microbiology (Unit 5) Concept of isolation
GBSN - Microbiology (Unit 5) Concept of isolationGBSN - Microbiology (Unit 5) Concept of isolation
GBSN - Microbiology (Unit 5) Concept of isolation
 
GBSN - Microbiology (Unit 4) Concept of Asepsis
GBSN - Microbiology (Unit 4) Concept of AsepsisGBSN - Microbiology (Unit 4) Concept of Asepsis
GBSN - Microbiology (Unit 4) Concept of Asepsis
 
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
 

Siwes Report on Back End Web Development

  • 1. 1 STUDENT INDUSTRIAL WORK EXPERIENCE SCHEME (SIWES) REPORT ON WORK EXPERIENCE UNDERTAKEN AT AMERICAN UNIVERSITY OF NIGERIA (AUN) YOLA, DEPARTMENT OF INFORMATION SYSTEM/SOFTWARE SUPPORT UNIT ADAMAWA STATE BY IBRAHIM IBRAHIM HARUNA CSC/15D/5205 BEING A TECHNICAL REPORT SUBMITTED TO THE DEPARTMENT OF COMPUTER SCIENCE, MODIBBO ADAMA UNIVERSITY OF TECHNOLOGY YOLA IN PARTIAL FULFILMENT OF THE REQUIREMENT FOR THE AWARD OF BACHELOR OF TECHNOLOGY (B.TECH.) DEGREE IN COMPUTER SCIENCE MAY, 2019
  • 2. 2 DEDICATION This report is dedicated to Almighty Allah for his protection, wisdom, knowledge, and understanding throughout the period of the industrial training. Special dedication also goes to my ever Guardians Mal. Usman Aminu Tukur, Mal. Mahmud Ibrahim and Mal Muhammed Haruna Ibrahim and his family respectively for their financial and moral support, love and encouragement. I would also like to dedicate it to Software Support Unit AUN and the entire Information System Department crew for bringing out the best in me and to my Mother, Sisters and Friends for their love and support and everyone else that contributed towards making my Industrial Training a fun and successful one.
  • 3. 3 ACKNOWLEDGMENT The completion of this training work could have been possible with continued & dedicated efforts & guidance of large staff members of the institute. I acknowledge my gratitude to all of them. The acknowledgement however will be incomplete without specific mention as follows. I wish to acknowledge my deep gratitude to my industry based supervisor Mr. Mansur Bashir, Senior Software Support Engineer at the Software Support Unit AUN for his cooperation and guidance. I am also thankful to rest of the staff at the Software Support Unit that provided staunch support throughout this training and helped me to complete the training successfully. Furthermore I would also like to acknowledge with much appreciation the crucial role of the Team lead Software Support Unit Mrs. Amal Babangida Sabo for her tireless support, devotion and encouragement throughout my Industrial Training. I would like to say that I am indebted to my Guardians Mal. Mahmud Ibrahim and Mal. Usman Aminu Tukur for everything that they have done for me. All of this would have been impossible without their constant support. And I also thank to Almighty Allah for being kind to me and driving me through this journey. I wish to thank all the lecturers of my Department Prof G. M. Wajiga, Dr N.D. Oye, Dr E. J. Garba, Mr D. I. Sajoh, Mr Y.M. Malgwi, Mr Danjuma Joro, Mrs Asabe Mamman, and Mr A. U. Atiku and many others whom I did not mentioned their names that have done a tremendous job of impacting knowledge and experience on me. Finally I appreciate the effort of my colleagues for their moral support during the training.
  • 4. 4 ABSTRACT This industrial report presents the experience gained during my six (6) months of industrial training undertaken at AUN IT Place 98 Lamido Zubairu Way Yola Bypass. My training was on Back end Development. I acquired practical knowledge on how to create a dynamic web site using Back end programming language PHP and MySQL and also learn how to add and manage records in a database using SQL and how to write the basic programs of Java. This report discusses the technical skills gained during the training period and justifying the relevance of the scheme in equipping students with needed technical competence to thrive in the real world.
  • 5. 5 TABLE OF CONTENTS Title Page Cover Page------------------------------------------------------------------------------------------------1 Dedication-------------------------------------------------------------------------------------------------2 Acknowledgement----------------------------------------------------------------------------------------3 Abstract----------------------------------------------------------------------------------------------------4 Table of Contents-----------------------------------------------------------------------------------------5 Chapter One 1.0 Introduction------------------------------------------------------------------------------9 1.1. About Student Industrial Work Experience Scheme--------------------------------9 1.2. Aims and Objectives of SIWES-------------------------------------------------------9 1.3. Brief History of SIWES---------------------------------------------------------------10 1.3.1 Funding-------------------------------------------------------------------------10 1.3.2 Beneficiaries of SIWES------------------------------------------------------10 1.3.3 Duration of SIWES Program------------------------------------------------10 1.4. Role of ITF on SIWES----------------------------------------------------------------11 1.5. Benefit of Industrial Training---------------------------------------------------------11 1.6. Brief History of American University of Nigeria Yola----------------------------12 1.7. Objectives and Vision of AUN-------------------------------------------------------12 1.8. Department in the office of Technology Support AUN---------------------------13 1.9. Office of Technology Support Chart AUN-----------------------------------------13 Chapter Two 2.0. Industrial Experience---------------------------------------------------------------------14 2.1. Definition of Terms-----------------------------------------------------------------------14 2.2. PHP and its Properties-------------------------------------------------------------------16 2.2.1. Server-side Scripting----------------------------------------------------------16 2.2.2. Common Uses of PHP-------------------------------------------------------16 2.2.3. Features of PHP---------------------------------------------------------------17 2.2.4. Environmental Set Up--------------------------------------------------------17 2.2.5. PHP Files-----------------------------------------------------------------------17
  • 6. 6 2.2.6. How Does PHP Work-------------------------------------------------------17 2.2.7. Basic PHP Syntax------------------------------------------------------------18 2.2.7.1. PHP Embedded in HTML----------------------------------------18 2.2.8. PHP Echo and Print Statement----------------------------------------------19 2.2.9. PHP Variable-------------------------------------------------------------------19 2.2.9.1 Creating PHP Variable---------------------------------------------20 2.2.9.2 PHP Variable Scope-----------------------------------------------20 2.2.10. PHP Data Types-------------------------------------------------------------21 2.2.11. PHP Arrays-------------------------------------------------------------------22 2.2.12. PHP Operator-----------------------------------------------------------------22 2.2.12.1. PHP Arithmetic Operators--------------------------------------23 2.2.12.2. PHP String Operators-------------------------------------------23 2.2.13. PHP Conditional Statement----------------------------------------------24 2.2.13.1 If Else Statement-------------------------------------------------24 2.2.14. PHP Form Handling-------------------------------------------------------24 2.2.14.1. PHP Get Form----------------------------------------------------24 2.2.14.2. PHP Post Form---------------------------------------------------25 2.2.15. PHP and My-SQL ----------------------------------------------------------26 2.2.15.1 My-SQL Database Connection --------------------------------27 2.2.15.2 Creating Database and Table in PHP My admin------------27 2.2.15.3 Connecting PHP And Inserting Data into Database--------28 2.3. Structured Query Language (SQL) and its Properties-----------------------------28 2.3.1 Definition of SQL------------------------------------------------------------28 2.3.2 What SQL Does--------------------------------------------------------------29 2.3.3 What is Database-------------------------------------------------------------29 2.3.3.1 What is RDBMS and DBMS------------------------------------29 2.3.3.2. Definition of Tables, Record (Rows), Field and Column---30 2.3.4 Component of SQL-----------------------------------------------------------30 2.3.5 SQL Syntax--------------------------------------------------------------------31 2.3.6 SQL Command----------------------------------------------------------------31
  • 7. 7 2.3.7 SQL Data Types---------------------------------------------------------------31 2.3.8 SQL Operators-----------------------------------------------------------------32 2.3.8.1 SQL Logical Operators--------------------------------------------32 2.3.9 SQL Constraint---------------------------------------------------------------33 2.3.10 SQL Statement (Query)------------------------------------------------------33 2.3.10.1 SQL Create, Use, and Drop Database Statement--------------33 2.3.10.2 SQL Create, Drop and Truncate Table Statement------------34 2.3.10.3 SQL Insert Statement--------------------------------------------35 2.3.10.4 SQL Select Statement--------------------------------------------35 2.3.10.5 SQL Update Statement-------------------------------------------36 2.3.10.6 SQL Delete Statement-------------------------------------------37 2.3.10.7 SQL Alter Table Statement-------------------------------------38 2.4. Java Programming and its Properties---------------------------------------------------38 2.4.1 Java Features------------------------------------------------------------------39 2.4.2 Java History-------------------------------------------------------------------39 2.4.3 Java Virtual Machine--------------------------------------------------------39 2.4.4 Java Runtime Environment Vs. Java Development Kit----------------40 2.4.5 Java Installation--------------------------------------------------------------40 2.4.5.1 Java Environment Set Up----------------------------------------40 2.4.5.2 Downloading and Installing JDK-------------------------------40 2.4.5.3 Java JDK Edition--------------------------------------------------41 2.4.5.4 Setting up Path in Windows-------------------------------------41 2.4.6 Write Compile and Run First Java Program-----------------------------41 2.4.6.1 Parameters Used in First Java Program------------------------42 2.4.7 Basic syntax of Java---------------------------------------------------------42 2.4.8 Java variable------------------------------------------------------------------43 2.4.9 Java Data Types--------------------------------------------------------------44 2.4.10 Java Operators----------------------------------------------------------------45 2.4.11 Control Structures in Java---------------------------------------------------46 2.4.11.1 Syntaxes of Repetition Statement-----------------------------47
  • 8. 8 2.4.12 Java Method and Constructors--------------------------------------------48 2.4.13 Java Classes and Objects---------------------------------------------------49 2.4.13.1 Access Method with Object-------------------------------------50 Chapter Three 3.0 Technical Skills Acquired--------------------------------------------------------------51 3.1 Personal Input to the Institute (AUN) Yola------------------------------------------51 3.2 Challenges Encountered----------------------------------------------------------------51 3.3 Web Application Developed-----------------------------------------------------------52 Chapter Four 4.0 Summary------------------------------------------------------------------------------------56 4.1 Conclusion----------------------------------------------------------------------------------56 4.2 Recommendation---------------------------------------------------------------------------56 Reference-------------------------------------------------------------------------------------------------57
  • 9. 9 CHAPTER ONE 1.0 INTRODUCTION This chapter gives a brief history of SIWES, its aims and objectives and that of the organization which I did my industrial training that is American University of Nigeria (AUN) Yola. 1.1 ABOUT STUDENTS INDUSTRIAL WORK EXPERIENCE SCHEME The student industrial work experience scheme (SIWES) is a worldwide program practiced in countries like Japan, Australia, USA, Europe, and in African countries too. It is popularly known as co-operative education and referred to as sandwich in Europe. It is a six (6) months students industrial work experience scheme (SIWES) taken in the third year of the degree program for a four years course, and in a fourth year of a degree for a five years course, where the students go to various establishments related to their course of study. One of the key functions of the Industrial Training Funds (ITF) is to work as cooperative body with industry and commerce where students in institutions of higher learning can undertake mid-career work experience attachment in industries which are compatible with student’s area of study. The students Industrial Work Experience Scheme (SIWES) is a skill Training program designed to expose and prepare students for the Industrial work situation which they are likely to meet after graduation. Participation in SIWES has become a necessary pre- condition for the award of diploma and degree certificate in specific disciplines in most institutions of higher learning in the country in accordance with the education policy of government. 1.2 AIMS AND OBJECTIVES OF SIWES SIWES is aimed at promoting the much-desired technological know-how for the advancement of the nation by exposing students to machines and equipment, professional work methods and ways of safeguarding the work area as well as the workers in industries and other organizations. The objective of SIWES is: i. Prepare student for business carrier by merging their analytical power with self- reliance. ii. Update student’s knowledge on new industrial innovation
  • 10. 10 iii. To expose and prepare students in planning engineering technology and related disciplines for industrial working situations, they are likely to meet after graduation. iv. To make transition from the tertiary institution to the world of work easier v. To provide student an opportunity to apply their theoretical knowledge in real work situation practically. 1.3 BRIEF HISTORY OF SIWES Student Industrial Work Experience Scheme (SIWES) is a programme which was established by ITF in 1973 under the direct coordination of the Nigeria Universities Commission (NUC), National Commission for College of Education (NCCE), and National Board for Technical Education (NBTE) to solve the problem of lack of adequate practical skills required for employment in industries by Nigerian graduates of tertiary institutions. The ITF was charged with the responsibility of training low and middle level man power for sustainable industrialization. However when the federal government observed that the training of student who are still in school would be easier and cheaper to assume any responsibility to their related field of study, that is what make the SIWES to be introduced under ITF. 1.3.1 FUNDING The SIWES programme is funded by federal government of Nigeria under the auspices of industrial training fund (ITF). 1.3.2 BENEFICIARIES OF SIWES The beneficiaries of SIWES programme are undergraduate student of the following: Agriculture, Engineering, Technology, Environmental, Science, Education, Medical Science and Pure and Applied Sciences. 1.3.3 DURATION OF SIWES PROGRMME The duration of student industrial work experience scheme is divided in two (4) four months for polytechnic and colleges of education and (6) six months for the universities.
  • 11. 11 1.4 ROLE OF ITF ON SIWES i. Supervise students on attachment in different organization across the country. ii. Provide fund for payment of student on attachment and lecturers supervisory allowance. iii. Coordinate, direct and finance the SIWES programme. iv. Liaise with the SIWES agencies to ensure prompt recipient and processing of placement list. v. Ensure that all institution concern summit to ITF office at the end of programme report 1.5 BENEFITS OF INDUSTRIAL TRAINING: Experts identified industrial experience as necessity for proper job preparation. This is because productivity is enhanced by experience graduate or new entrance into the world of work really needs and early exposure to the value and skills of the industry. Therefore, without appropriate skills and experiences young graduates are not properly trained on work, norms and role behavior among others, these components will ensure success at the job place. Today Information and Communication Technology (ICT) is changing the way many jobs are performed, thus altering the knowledge and skills required of workers. Consequently, a new level of competency is required of our students. This cannot be sufficiently met by training facilities in our education institutions hence, the need for collaborative effort between institutions and industrial sector. The major benefits accruing to students who participate conscientiously in industrial training are the skills and competencies they acquire. These relevant production skills (RPSs) remain a part of the recipients of industrial training as lifelong assets which cannot be taken away from them. This is because the knowledge and skills acquired through training are internalized and become relevant when required to perform jobs or functions. Several other benefits can accrue to students who participate in industrial training. Provision of an enabling environment where students can develop and enhance personal attributes such as critical thinking, creativity, initiative, resourcefulness, leadership, time management, presentation skills and interpersonal skills, amongst others.
  • 12. 12 1.6 BRIEF HISTORY OF AMERICAN UNIVERSITY OF NIGERIA The American University of Nigeria (AUN) was established in 2004 by Nigeria’s former Vice President His Excellency, Atiku Abubakar along with other local and international statesmen and academic leaders. The institution was conceived as Africa’s first Development University. Its mission is to pioneer service learning and build leaders who will be prepared to tackle societal concerns. Located in Yola, Adamawa State, the University is a world-class career- oriented institution missioned to be an agent of change in the development of the region. AUN has a strong commitment to providing the skills and the leadership essential to solving the continent’s critical social and economic problems. The University offers an American-style education modelled after the curriculum of American universities with corresponding approaches to teaching and students assessment. The first entering class of 124 students and 20 professors was enrolled in September 2005. The University started on temporary buildings at the AUN Academy located directly opposite the AUN campus. In seven years, AUN is fast becoming a model for other universities in Nigeria and West Africa. AUN is a completely wireless University, which is highly focused on IT. Computers, the internet and other critical IT facilities are key tools in teaching. These facilities are deployed in classes and completion of course assignments with great emphasis on small classes. At Office of Technology Support (OTS) AUN, there are some of the smartest, most engaging and dedicated professionals helping the university students, faculty and staff in the use of technology in their everyday activities. 1.7 OBJECTIVES AND VISION OF AUN The objectives of AUN is to train the future leaders of Africa and to serve as both a stimulus and agent of economic development throughout the region. The vision of AUN is to become a great center of learning and research for Nigeria and Africa, and a catalyst for development in the entire world. In the words of its Founder, it sees its role as a "Development University". Thus, the University will honor the traditional university roles of repository and transmitter of culture and knowledge, and center for the creation of new knowledge.
  • 13. 13 1.8 DEPARTMENTS IN THE OFFICE OF TECHNOLOGY SUPPORT AUN The Office of Technology Support has two departments, The Department of Information Technology (DIT) led by a Director and charged with the responsibility for planning, designing, deployment and supporting of IT infrastructure within the University. The Department of Information Systems (DIS) supervised by a Director and charged with the responsibility for planning, development and deployment of the ERP application as well as all other applications used in the university. Department of Information Systems (DIS) is structured into three units: Software Support Unit (SSU), Instructional Technology Unit (ITU) and Software Development Unit (SDU). The Software Support Unit (SSU), led by Amal Babangida Sabo, she is responsible for developing, sourcing, customizing, deploying and supporting a variety of software applications related to student learning and faculty teaching for the university and her associated auxiliary units which includes all user support issues related to Banner, OpenERP, canvas, online-classes Assist students and faculty members in downloading eBooks and readers. 1.9 OFFICE OF TECHNOLOGY SUPPORT CHART AUN Chief Information Officer Director Information Technology Director Information System Team Lead Software Development Team Lead Software Support Team Lead Instructional Technology Staffs I.T Student Staffs Staffs Fig 1. The Office of Technology Support Chart (AUN)
  • 14. 14 CHAPTER TWO 2.0 INDUSTRIAL EXPERIENCE During my six months SIWES programme at Software Support Unit (AUN), all lectures and practical works took place online via some website such as w3schools, javatpoint, tutorialpoint and videos from youtube channel. The activities undertaken during the period of attachment in Software Support Unit can be divided into three (3) distinct parts, they are: i. Back end Development using PHP and MySQL, ii. Structured Query Language (SQL), iii. Java Programming Language. 2.1 DEFINITION OF TERMS INTERNET Internet is network of machines (servers, clients, routers, switches, etc.) connected by media (fiber, wifi, etc.) that allows communication among devices. WORLD WIDE WEB (WWW) World Wide Web is an application on the Internet that combines many protocols to allow for communication and transfer of data between machines WEBSITE A website is a set of related webpages containing content such as texts, images, videos, audios, etc. A website is hosted on at least one web server, accessible via a network such as the internet or a private LAN through an internet address known as a URL. A publicly accessible websites collectively constitutes the World Wide Web (WWW). WEB Web is composed of documents that are logically linked to each other. The Web is known as a client-server system. Your computer is the client and the remote computers that store electronic files are the servers. HTTP HTTP stands for Hypertext Transfer Protocol. This is the protocol being used to transfer hypertext documents that makes the World Wide Web possible.
  • 15. 15 URL stands for Uniform Resource Locator, and is used to specify addresses on the World Wide Web. A URL is the fundamental network identification for any resource connected to the web (e.g., hypertext pages, images, and sound files). WEB SERVER Every Website sits on a computer known as a Web server. This server is always connected to the internet. Every Web server that is connected to the Internet is given a unique address made up of a series of four numbers between 0 and 256 separated by periods. For example, 68.178.157.132 or 68.122.35.127. BACK END DEVELOPMENT Backend development refers to the server site of an application and anything that communicate between database and the browser. The back end or the “server-site” is basically how the site works, update and changes in addition to monitoring functionality of the site. This type of web development usually consist of three parts: a server, an application and a database. Back end development are required to create dynamic site. DYNAMIC SITE A dynamic site is a site that is constantly changing and updating in real time. There is a simple way to determine if site is dynamic if we can interact with it is dynamic site. So most of the site we visit are dynamic site e.g. twitter, facebook. The way we can interact with the site is just clicking a link within the site just like commenting on a post, creating user profile, updating status etc. A dynamic site has a communication system to do the interaction between the browser and database. Dynamic site is written using server-side scripting language such as PHP, ASP etc. BACK END PROGRAMMING LANGUAGES Back end developers uses server-side languages such as PHP, JAVA, PYTHON etc. Since they need to work with something the database understand. These language are used to create dynamic site which are different from static site. In that these type of website store database information and the content on the site is constantly changing and updating example facebook, twitter etc. thus a back end developers create the backbone of the website which require back end services that contains dynamic data for example users submitting a form with personal data such as creating account or saving an article for your blog page.
  • 16. 16 2.2 PHP AND ITS PROPERTIES PHP stands for PHP: Hypertext Preprocessor. It was Developed by Rasmus Lerdorf in 1994 and It is a powerful server-side scripting language for creating dynamic and interactive websites also It is an open source software, which is widely used and free to download and use (PHP is FREE to download from the official PHP resource: www.php.net). It is an efficient alternative to competitors such as Microsoft's ASP. PHP is perfectly suited for Web development and can be embedded directly into the HTML code. The PHP syntax is very similar to JavaScript, Perl and C. PHP is often used together with Apache (web server) on various operating systems and supports many databases (MySQL, Informix, Oracle, Sybase,  Solid, PostgreSQL, Generic ODBC, etc.) 2.2.1 SERVER-SIDE SCRIPTING A “script” is a collection of program or sequence of instructions that is interpreted or carried out by another program rather than by the computer processor In server-side scripting, (such as PHP, ASP) the script is processed by the server Like: Apache on Windows. And the Client-side scripting such as Javascript runs on the web browser. ADVANTAGES OF SERVER-SIDE SCRIPTING i. Dynamic content. ii. Computational capability. iii. Database and file system access. iv. Network access (from the server only). v. Built-in libraries and functions. vi. Security improvements 2.2.2 COMMON USES OF PHP i. PHP can generate dynamic page content ii. PHP can create, open, read, write, delete, and close files on the server iii. PHP can collect form data iv. PHP can send and receive cookies v. PHP can add, delete, modify data in your database vi. PHP can restrict users to access some pages on your website vii. PHP can encrypt data
  • 17. 17 2.2.3 FEATURES OF PHP i. Performance: Script written in PHP executes much faster than those scripts written in other languages such as JSP & ASP. ii. Open Source Software: PHP source code is free available on the web, you can developed all the version of PHP according to your requirement without paying any cost. iii. Platform Independent: PHP are available for WINDOWS, MAC, LINUX & UNIX operating system. A PHP application developed in one OS can be easily executed in other OS also. iv. Compatibility: PHP is compatible with almost all local servers used today like Apache, IIS etc. v. Embedded: PHP code can be easily embedded within HTML tags and script. 2.2.4 ENVIRONMENTAL SETUP In order to develop and run PHP web pages, three (3) vital components have to be installed on your computer system. i. Web Server: PHP will work with virtually all web server software, including Microsoft Internet Information Server (IIS) and xampp server. ii. Database: PHP will work with virtually all database software, including MySQL, Oracle. iii. PHP Parser: In order to process PHP script instructions, a parser must be installed to generate HTML output that can be sent to the Web Browser 2.2.5 PHP FILES PHP files can contain text, HTML, CSS, JavaScript, and PHP code. PHP code are executed on the server, and the result is returned to the browser as plain HTML. PHP files have extension ".php". 2.2.6 HOW DOES PHP WORK Client make request, server run PHP, query database if needed, load other files if needed and result is sent back to the client. With PHP you can perform task such as storing and retrieving login information.
  • 18. 18 2.2.7 BASIC PHP SYNTAX A PHP is a script language that is executed on the server and the plain HTML result is sent back to the browser. We have the following three ways of writing PHP syntax. i. Standard Tags: Recommended <?php Code goes here ?> ii. Short tags: <? Code goes here ?> iii. HTML or script tags: <script language = “php”> code goes here </script> 2.2.7.1 PHP EMBEDDED IN HTML CODE VIEW (index.php) DESIGN VIEW Fig 2. How PHP Work
  • 19. 19 2.2.8 PHP ECHO AND PRINT STATEMNT In PHP there are two basic ways to get output: echo and print. The PHP echo and print is a language construct, and both can be used with or without parentheses: echo or echo(), print or print(). echo and print are more or less the same. They are both used to output data to the screen. The differences are small: echo has no return value while print has a return value of 1 so it can be used in expressions. echo can take multiple parameters (although such usage is rare) while print can take one argument. Print does not differ to echo except is an older way and is slower to use. echo is marginally faster than print. Example of echo: echo “Hello”, example of print: print “welcome’. 2.2.9 PHP VARIABLE A variable is a representation of a particular value, such as hello or 8726. By assigning a value to a variable, you can reference the variable in other places in your script, and that value will always remain the same (unless you change it). Variables are "containers" for storing information. PHP variables can be used to hold values (x=5) or expressions (z=x+y). A variable can have a short name (like x and y) or a more descriptive name (age, carname, total_volume). Rules for PHP variables: i. A variable starts with the $ sign, followed by the name of the variable. ii. A variable name must start with a letter or the underscore character. iii. A variable name cannot start with a number. iv. A variable name can only have alpha-numeric characters and underscores (A-z, 0-9, and _ ). v. A variable names are case sensitive ($y and $Y are two different variables). vi. A variables can, but do not need, to be declared before assignment. vii. A variables are assigned with the = operator, with the variable on the left-hand side and the expression to be evaluated on the right.
  • 20. 20 2.2.9.1 CREATING PHP VARIABLE PHP has no command for declaring a variable. A variable is created the moment you first assign a value to it: <?php $txt = “Hello world!”; $x = 5; $y = 10.5; ?> After the execution of the statements above, the variable txt will hold the value Hello world!, the variable x will hold the value 5, and the variable y will hold the value 10.5 In the example above, notice that we did not have to tell PHP which data type the variable is that is because PHP is a loosely type language it automatically converts the variable to the correct data type, depending on its value. 2.2.9.2 PHP VARIABLE SCOPE Scope can be defined as the range of availability a variable has to program in which it is declared. PHP variables can be one of four scope types. i. Local Variables: A variable declared in a function is considered local, i.e. it can be referenced solely in that function. Note that any assignment outside of that function will be considered to be entirely different variable from the one contained in the function. ii. Global Variables: In contrast to local variables, a global variable can be accessed in any part of the program. However, in order to be modified, a global variable must be explicitly declared to be global in the function in which it is to be modified. iii. Static Variable Normally, when a function is completed/executed, all of its variables are deleted. However, sometimes we want a local variable NOT to be deleted. We need it for a further job. To do this, use the static keyword. iv. Function parameter: are declared after the function name and inside parentheses. They are declared much like a typical variable would be.
  • 21. 21 2.2.10 PHP DATA TYPES PHP has a total of eight data types which we use to construct our variables: i. Integers: are whole numbers, without a decimal point, like 4195. ii. Doubles: are floating-point numbers, like 3.14159 or 49.1. iii. Booleans: have only two possible values either true or false. iv. NULL: is a special type that only has one value: NULL. v. Strings: are sequences of characters, like 'PHP supports string operations.' vi. Arrays: are named and indexed collections of other values. vii. Objects: are instances of programmer-defined classes, which can package up both other kinds of values and functions that are specific to the class. viii. Resources: are special variables that hold references to resources external to PHP (such as database connections). The first five are simple types, and the next two (arrays and objects) are compound - the compound types can package up other arbitrary values of arbitrary type, whereas the simple types cannot. DATA TYPES EXAMPLE CODE VIEW DESIGN VIEW
  • 22. 22 2.2.11 PHP ARRAYS An array stores multiple values in one single variable. An array is a special variable, which can hold more than one value at a time. If you have a list of items (a list of car names, for example), storing the cars in single variables could look like this: $cars1 = "Volvo"; $cars2 = "BMW"; $cars3 = "Toyota"; However, what if we want to loop through the cars and find a specific one? And what if you had not 3 cars, but 300? The solution is to create an array! An array can hold many values under a single name, and you can access the values by referring to an index number. In PHP, the array() function is used to create an array: array(); 2.2.12 PHP OPERTOR Operators are used to perform operations on variables and values. PHP divides the operators in the following groups: i. Arithmetic operators ii. Assignment operators iii. Comparison operators iv. Increment/Decrement operators v. Logical operators vi. String operators vii. Array operators CODE VIEW DESIGN VIEW
  • 23. 23 2.2.12.1 PHP ARITHMETIC OPERTOR The PHP arithmetic operators are used with numeric values to perform common arithmetical operations, such as addition, subtraction, multiplication etc. Operator Name Example Description Result + Addition $x + $y Sum of $x and $y 15 - Subtraction $x - $y Difference of $x and $y 5 * Multiplication $x * $y Product of $x and $y 50 / Division $x / $y Quotient of $x and $y 2 % Modulus $x % $y Remainder of $x divided by $y 0 ** Exponentiation $x ** $y Result of raising $x to the $y'th power (Introduced in PHP 5.6) 100000 2.2.12.2 PHP STRING OPERTOR PHP has two operators that are specially designed for strings. Operator Name Example Result . Concatenation $txt1= “Hello” $txt2 = $txt1. “Guys” Now $txt2 contains “Hello Guys” .= Concatenation assignment $txt1= “Hello” $txt1 .= “Guys” Now $txt1 contain “Hello Guys” Arithmetic Operators ($x = 10, $y = 5) Table 1. PHP Arithmetic Operators Table 2. PHP Srting Operators
  • 24. 24 2.2.13 PHP CONDITIONAL STATEMENT Conditional statements are used to perform different actions based on different conditions. Very often when you write code, you want to perform different actions for different decisions. You can use conditional statements in your code to do this. In PHP we have the following conditional statements: i. if statement - executes some code only if a specified condition is true ii. if...else statement - executes some code if a condition is true and another code if the condition is false iii. if...elseif....else statement - selects one of several blocks of code to be executed iv. switch statement - selects one of many blocks of code to be executed 2.2.13.1 IF ELSE STATEMENT The if....else statement is used to execute some code if a condition is true and another code if the condition is false. Syntax: if (condition) {code to be executed if condition is true; } else {code to be executed if condition is false; } 2.2.14 PHP FORM HANDLING We can create and use forms in PHP. To get form data, we need to use PHP superglobals $_GET and $_POST. The form request may be get or post. To retrieve data from get request, we need to use $_GET, and for post request $_POST. 2.2.14.1 PHP GET FORM Get request is the default form request. The data passed through get request is visible on the URL browser so it is not secured. It sends the encoded user information appended to the page CODE VIEW DESIGN VIEW
  • 25. 25 request. Before the browser sends the information, it encodes it using a scheme called URL encoding. In this scheme, name/value pairs are joined with equal signs and different pairs are separated by the ampersand. e.g. name1=value1&name2=value&name3=value3. Spaces are removed and replaced with the + character and any other non-alphanumeric characters are replaced with a hexadecimal values after the information is encoded. GET also has limit on the amount of information to send 2.2.14.2 PHP POST FORM Post request is widely used to submit form that have large amount of data such as file upload, image upload, login form, registration form etc. The data passed through post request is not visible on the URL browser so it is secured. All names/values are embedded within the body of the HTTP request) and has no limits on the amount of information to send. You can send large amount of data through post request. CODE VIEW (form1.php) CODE VIEW (welcome.php) DESIGN VIEW (form1.php) DESIGN VIEW (welcome.php)
  • 26. 26 2.2.15 PHP AND MYSQL MySQL is a database system used on the web and runs on a server. MySQL is ideal for both small and large applications and is very fast, reliable, and easy to use. MySQL uses standard SQL and compiles on a number of platforms. MySQL is free to download and use. It is developed, distributed, and supported by Oracle Corporation. MySQL is named after co- founder Monty Widenius's daughter: My The data in a MySQL database are stored in tables. A table is a collection of related data, and it consists of columns and rows. Databases are useful for storing information categorically. A company may have a database with the following tables: Employees, product, customers, orders etc. PHP combined with MySQL are cross-platform (you can develop in Windows and serve on a Unix platform) Database Queries A query is a question or a request. We can query a database for specific information and have a record set returned. Look at the following query (using standard SQL): SELECT LastName CODE VIEW (form1.php) CODE VIEW (login.php) DESIGN VIEW (form1.php) DESIGN VIEW (login.php)
  • 27. 27 FROM Employees. This query selects all the data in the "LastName" column from the "Employees" table. 2.2.15.1 MYSQL DATABASE CONNECTION Before you can access and work with data in a database you must create a connection to the database. One of the ways you can do that in PHP is with mysql_connect() function. The syntax is: mysql_connect(server name, username, password); the server name default value is “localhost” and the username default value is “root” and the password default value is empty (“”). closing database is done with mysql_close() function. It return true or false. 2.2.15.2 CREATING DATABASE AND TABLE IN PHPMYADMIN To create database Start by logging onto phpMyAdmin, when you are logged on, simply type a name for the database and press the button "Create". To create the table write this code in SQL. Create table info ( id integer not null primary key auto_increment, Firstname varchar (25) not null, Lastname varchar (25) not null, Phonenumber varchar (11) not null ); CODE VIEW (db_connect.php) DESIGN VIEW (db_connect.php)
  • 28. 28 2.2.15.3 CONNECTING PHP AND INSERTING DATA INTO DATABASE 2.3 STRUCTURED QUERY LANGUAGE (SQL) AND ITS PROPERTIES SQL (Structured Query Language) is used to perform operations on the records stored in database such as updating records, deleting records, creating and modifying tables, views etc. SQL is just a query language, it is not a database. To perform SQL queries, you need to install any database for example Oracle, MySQL, MongoDB, PostGre SQL, SQL Server, DB2 etc. 2.3.1 DEFINITION OF SQL SQL stands for Structured Query Language It is designed for managing data in a relational database management system (RDBMS) It is pronounced as S-Q-L or sometime See-Qwell. SQL is a database language, it is used for database creation, deletion, fetching rows and modifying rows etc. SQL is based on relational algebra and tuple relational calculus. All DBMS like MySQL, Oracle, MS Access, and SQL Server use SQL as standard database language. CODE VIEW (config.php) DESIGN VIEW (register.php) DESIGN VIEW (register.php) DATA INSERTED IN A DATABASE
  • 29. 29 2.3.2 WHAT SQL DOES i. With SQL, we can query our database in a numbers of ways, using English-like statements. ii. With SQL, user can access data from relational database management system. iii. It allows user to describe the data. iv. It allows user to define the data in database and manipulate it when needed. v. It allows user to create and drop database and table. vi. It allows user to create view, stored procedure, function in a database. vii. It allows user to set permission on tables, procedure and view. 2.3.3 WHAT IS DATABASE A database is an organized collection of data. Database handlers create database in such a way that only one set of software program provide access of data to all the users. The main purpose of database is to operate large amount of information by storing, retrieving and managing. There are many dynamic websites on the world wide web now a days which are handled through databases. For example, a model to checks the availability of rooms in a hotel. It is an example of dynamic website that uses database. There are many database available like MySQL, Sybase, Oracle, Mango DB, Informix, Postgre, SQL Server etc. 2.3.3.1 WHAT IS RDBMS AND DBMS RDBMS stands for Relational Database Management Systems. All modern database management systems like SQL, MS SQL Server, My-SQL and Microsoft Access are based on RDBMS. It is called Relational Data Base Management System (RDBMS) because it is based on relational model introduced by E.F. Codd. Data is represented in terms of tuples (rows) in RDBMS. Relational database is most commonly used database. It contains number of tables and each table has its own primary key. Due to a collection of organized set of tables, data can be accessed easily in RDBMS. DBMS: stands for Database Management System is a software through which we execute SQL queries. Oracle, My-SQL, SQL Server etc. are popular DBMS. Therefore the DBMS provide user with a systematic way to manage data.
  • 30. 30 2.3.3.2 DEFINITION OF TABLES, RECORD (ROWS), FIELD AND COLUMN A Table is a collection of related data entries which contains rows and columns to store data. The A table is the simplest example of data storage in RDBMS. Example of student table Id Name Age Course 1 Aliyu 24 Accounting 2 Ibrahim 20 Economics 3 Musa 21 Computer Science 4 Usman 22 Physics 5 Alex 26 Statistics A Record of a table is also called row. It contains the specific information of each individual entry in the table. It is a horizontal entity in the table. For example: The above table contains 5 records. A Field is a column in a table that is supposed to provide specific information about all the records in the table e.g id, name, age and course are all fields. A Column is a vertical entity in a table that contains information associated with a specific field. 2.3.4 COMPONENT OF SQL SQL component can be classified into the following groups based on their nature: i. DDL- Data Definition Language is used to define data and create structures. DDL has the following command (CREATE, ALTER and DROP). ii. DML- Data Manipulation Language is used to manipulate data, insert data into your database. DML command are (SELECT, INSERT, UPDATE and DELETE). iii. DCL- Data Control Language is used to control data in a database. DCL command are (GRANT and REVOKE). Table 3. Student Table
  • 31. 31 2.3.5 SQL SYNTAX SQL follows some unique set of rules and guidelines called syntax. Here, are the basic SQL syntax. i. SQL is not case sensitive. Generally SQL keywords are written in uppercase. ii. SQL statements are dependent on text lines. We can place a single SQL statement on one or multiple text lines. iii. You can perform most of the action in a database with SQL statements. iv. SQL depends on relational algebra and tuple relational calculus. 2.3.6 SQL COMMAND SQL command is a query or instruction that is telling database such as My-SQL to do. These are the some important SQL command are: i. SELECT: it extracts data from a database. ii. UPDATE: it updates data in database. iii. DELETE: it deletes data from database. iv. CREATE TABLE: it creates a new table. v. ALTER TABLE: it is used to modify the table. vi. DROP TABLE: it deletes a table. vii. CREATE DATABASE: it creates a new database. viii. ALTER DATABASE: It is used to modify a database. ix. INSERT INTO: it inserts new data into a database. x. CREATE INDEX: it is used to create an index (search key). xi. DROP INDEX: it deletes an index. 2.3.7 SQL DATA TYPES The SQL data type defines a kind of value that a column can contain. In a database table, every column is required to have a name and a data type. Data Type varies from database to database. For example, MySQL supports INT but Oracle supports NUMBER for integer values. Data-type Syntax Explanation Integer INTEGER The integer data type is used to specify an integer value. Smallint SMALLINT The smallint data type is used to specify small integer value.
  • 32. 32 Numeric NUMERIC(P,S) It specifies a numeric value. Here 'p' is precision value and 's' is scale value. Real REAL The real integer is used to specify a single precision floating point number. Decimal DECIMAL(P,S) It specifies a decimal value. Here 'p' is precision value and 's' is scale value. Float FLOAT(P) It specifies floating-point value e.g. 12.3, 4.5 etc. Here, 'p' is precision value. Character CHAR(X) Here, 'x' is the character's number to store. Character varying VARCHAR2(X) Here, 'x' is the character's number to store Date DATE It stores year, month and days values. Time TIME It stores hour, minute and second values Timestamp TIMESTAMP The timestamp data type is used to store year, month, day, hour, minute and second values. 2.3.8 SQL OPERATORS SQL statements generally contain some reserved words or characters that are used to perform operations such as comparison and arithmetical operations etc. These reserved words or characters are known as operators. Generally there are three types of operators in SQL: i. SQL Arithmetic Operators ii. SQL Comparison Operators iii. SQL Logical Operators 2.3.8.1 SQL LOGICAL OPERATORS This is the list of logical operators used in SQL. Operator Description ALL This is used to compare a value to all values in another value set. AND This operator allows the existence of multiple conditions in an SQL statement. ANY This operator is used to compare the value in list according to the condition. BETWEEN This operator is used to search for values, that are within a set of values IN This operator is used to compare a value to that specified list value NOT The NOT operator reverse the meaning of any logical operator OR This operator is used to combine multiple conditions in SQL statements Table 4. SQL Data Types
  • 33. 33 EXISTS The EXISTS operator is used to search for the presence of a row in a specified table LIKE This operator is used to compare a value to similar values using wildcard operator 2.3.9 SQL CONSTRAINT You can place constraints to limit the type of data that can go into a table. Such constraints can be specified when the table is first created via the CREATE TABLE statement, or after the table is already created via the ALTER TABLE statement. Common types of constraints include the following: i. NOT NULL Constraint: Ensures that a column cannot have NULL value. ii. DEFAULT Constraint: Provides a default value for a column when none is specified. iii. UNIQUE Constraint: Ensures that all values in a column are different. iv. CHECK Constraint: Makes sure that all values in a column satisfy certain criteria. v. Primary Key Constraint: Used to uniquely identify a row in the table. vi. Foreign Key Constraint: Used to ensure referential integrity of the data. 2.3.10 SQL STATEMENT (QUERY) In SQL When a user wants to perform an action or get some information from a database file, he can issue a query. A query is a user request to retrieve data or information with a certain condition. There are various queries to use in SQL below are some of them. 2.3.10.1 SQL CREATE, USE AND DROP DATABASE STATEMENT The SQL CREATE DATABASE statement is used by a developer to create a new database. Syntax of SQL CREATE DATABASE: CREATE DATABASE database_name; The SQL USE statement is used to select any existing database in the SQL schema. USE statement is used when you have multiple database in your schema so that all operation would be performed on the particular selected database. Syntax of SQL USE statement: USE database_name; The SQL DROP DATABASE statement is used to delete an existing SQL database from the schema. The Syntax of SQL DROP DATABASE statement: DROP DATABASE database_name; Table 5. SQL Logical Operators
  • 34. 34 2.3.10.2 SQL CREATE, DROP AND TRUNCATE TABLE STATEMENT SQL CREATE TABLE statement is used to create table in a database. If you want to create a table, you should name the table and define its column and each column's data type. Syntax to create the table. CREATE TABLE table_name ( Col 1 data type, Col 2 data type, Col 3 data type, . . . Col n data type Primary key (column) ); Example to create a STUDENTS table with ID as primary key and NOT NULL constraint CREATE TABLE students ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR (20) NOT NULL, age INT NOT NULL, address CHAR (25), PRIMARY KEY (ID) ); You can verify it, if you have created the table successfully by looking at the message displayed by the SQL Server, else you can use DESC command as follows: SQL> DESC students; A SQL DROP TABLE statement is used to delete a table definition and all data from a table. This is very important to know that once a table is deleted all the information available in the table is lost forever. The command to drop a table from the MySQL database: DROP TABLE table_name;
  • 35. 35 A SQL TRUNCATE statement is used to remove all rows (complete data) from a table and not the table itself. Syntax to truncate the table from the database: TRUNCATE TABLE table_name; 2.3.10.3 SQL INSERT STATEMENT SQL INSERT statement is a SQL query. It is used to insert a single or a multiple records in a table. There are two ways to insert data in a table: i. By SQL insert into statement i. By specifying column names ii. Without specifying column names ii. By SQL insert into select statement INSERTING DATA DIRECTLY INTO A TABLE: You can insert a row in the table by using SQL INSERT INTO command. But there are 2 ways to do this. You can specify or ignore the column names while using INSERT INTO statement. To insert partial column values, you must have to specify the column names. But if you want to insert all the column values, you can specify or ignore the column names. If you specify the column names, Syntax of the insert into statement will be as follows: INSERT INTO TABLE_NAME [(col1, col2, col3,.... col N)] VALUES (value1, value2, value 3, .... Value N); Here col1, col2, col3, .... colN are the columns of the table in which you want to insert data. But, If you ignore the column names, syntax of the insert into statement will be as follows: INSERT INTO TABLE_NAME VALUES (value1, value2, value 3, .... Value N); 2.3.10.4 SQL SELECT STATEMENT The most commonly used SQL command is SELECT statement. It is used to query the database and retrieve selected data that follow the conditions you want. In simple words, the select statement is used to query or retrieve data from a table in the database. The syntax of SELECT statement: SELECT expressions FROM tables WHERE conditions;
  • 36. 36 Here expression is the column that we want to retrieve. Tables indicate the tables, we want to retrieve records from. Optional clauses in SELECT statement: There are some optional clauses in SELECT statement: [WHERE Clause]: It specifies which rows to retrieve. [GROUP BY Clause]: Groups rows that share a property so that the aggregate function can be applied to each group. [HAVING Clause]: It selects among the groups defined by the GROUP BY clause. [ORDER BY Clause]: It specifies an order in which to return the rows. For example, let a database table: student_details; From the above example, select the first name, last name of all the students. To do so, query should be like this: SELECT first_name, last_name FROM student_details; 2.3.10.5 SQL UPDATE STATEMENT SQL UPDATE statement is used to change the data of the records held by tables. Which rows is to be update, it is decided by a condition. To specify condition, we use WHERE clause. The UPDATE statement can be written in following form: UPDATE table_name SET [column_name1= value1,... column_nameN = valueN] [WHERE condition]
  • 37. 37 The Syntax: UPDATE table_name SET column_name = expression WHERE conditions Example: here we are going to update an entry in the employee table. SQL statement: UPDATE employee SET username = 'sheik' WHERE Id = '1'; The result after updating value: 2.3.10.6 SQL DELETE STATEMENT The SQL DELETE statement is used to delete rows from a table. Generally DELETE statement removes one or more records from a table. The Syntax for the SQL DELETE statement: DELETE FROM table_name [WHERE condition]; Here table_name is the table which has to be deleted. The WHERE clause in SQL DELETE statement is optional here and it identifies the rows in the column that gets deleted. WHERE clause is used to prevent the deletion of all the rows in the table, If you don't use the WHERE clause you might loss all the rows. SQL DELETE Example: Let us take a table, named staff table.
  • 38. 38 Example of Delete with WHERE clause is given below: DELETE FROM staff WHERE id=107; Resulting table after the query: 2.3.10.7 SQL ALTER TABLE STATEMENT The ALTER TABLE statement work with the structure of the table it is used to add, modify or delete columns in an existing table. It is also used to rename a table. You can also use SQL ALTER TABLE command to add and drop various constraints on an existing table. If you want to add columns in SQL table, the SQL alter table syntax is given below: ALTER TABLE table_name ADD column_name datatype 2.4 JAVA PROGRAMMING LANGUAGE AND ITS PROPERTIES Java is an object oriented programming language developed by Sun Microsystem. It was modeled after C++ along with some characteristic of small tack. It was designed to be simple, robust and portable across platforms and operating systems both at the source and at the binary level. Which means that java programs can run on any machine that has the java virtual machine installed, which is an interpreter that execute the machine language instruction to produce result. Though it was originally intended as a language for programming embedded systems, it has become very popular because of it natural applicability to programming network software for world wide web (www). Java is now used to develop large scale enterprise application to
  • 39. 39 enhance the functionality of web servers (computer that provide the content we see in the web browsers) such as mobile, smart cart, robotics, games etc. 2.4.1 JAVA FEATURES Java has some characteristics that make it the fastest growing programming language in the world and a suitable language for novices and expert programmers to efficiently and effectively solve the increasing and dynamic programming problems. i. Java is an object oriented programming: is a programming approach in which the data and the code that operate on the data are arranged into a single data structure called object. ii. Java is robust: Robust simply means strong. Java is robust because it uses strong memory management also there is a lack of pointers that avoids security problems. iii. Java is secure: because its programs are easy to protect from viruses and tempering. iv. Java is a platform independent: because it can be run on variety of platforms (the underlying hardware and software for system). v. Java is portable: It has bytecode which can be carry to any other platform. vi. Java has a high performance: It has a high performance than c, c++, because these are compile language and java is interpreted language. vii. Java is multithreaded: in java is possible to run any number of task at one time. The main advantage of using multithreaded is that it allow you to run any number of task at one time by sharing one memory you do not need to separate memory. 2.4.2 JAVA HISTORY Java was developed by James Gosling and his green team in the year 1991 in June. It was named as ‘oak’ after an oak tree that stood outside Gosling’s office also went by name ‘green’ and ended up later being renamed as java from a list of random word. Sun released the first public implementation as java 1.0 in 1995. It promised write once, Run anywhere (WORA). On 13 nov, 2006 sun released much of java as free and open source software under the terms of General Public License (GPL) on May 8th 2007 sun finished the process making all of java’s core code free and open source. Today we have the latest version as SE 8. 2.4.3 JAVA VIRTUAL MACHINE The Java virtual machine (JVM) is a software implementation of a computer that executes programs like a real machine. The Java virtual machine is written specifically for a specific
  • 40. 40 operating system, e.g. for Linux a special implementation is required as well as for Windows. Java programs are compiled by the Java compiler into bytecode and the Java virtual machine interprets this bytecode and executes the Java program. 2.4.4 JAVA RUNTIME ENVIRONMENT VS. JAVA DEVELOPMENT KIT A Java distribution comes typically in two flavors, the Java Runtime Environment (JRE) and the Java Development Kit (JDK). The Java runtime environment (JRE) consists of the JVM and the Java class libraries and contains the necessary functionality to start Java programs. The JDK contains in addition the development tools (core libraries and compiler) necessary to create Java programs it is distributed by Oracle. The JDK consists therefore of a Java compiler, the Java virtual machine, and the Java class libraries. 2.4.5 JAVA INSTALLATION Java might already be installed on your machine. You can test this by opening a console (if you are using Windows: Win+R, enter cmd and press Enter) and by typing in the following command: javac If Java is correctly installed, you should see some information about your Java installation. If the command line returns the information that the program could not be found, you have to install Java. 2.4.5.1 JAVA ENVIRONMENT SET UP Below are the properties or specification you need to run a java program i. A Pentium 200 MHZ computer with a minimum of 64MB of RAM (128 MB of RAM recommended) ii. Linux 7 |or Windows xp|7|8 operating system iii. Microsoft notepad, eclipse or any other text editor. iv. Java JDK 2.4.5.2 DOWNLOADING AND INSTALLING JDK To download the JDK, go to http://www.oracle.com/technetwork/java/javase/downloads/index.html. Click on "JDK with NetBeans Bundle". Follow the instructions for downloading the JDK installation file Windows: If you are running Windows, simply run the executable file and follow the installation instructions.
  • 41. 41 2.4.5.3 JAVA JDK EDITION i. Java Standard Edition (JSE): it is the most widely used for developing program. It also help us to deploy portable application it consist of virtual machine which allow us to execute our java program ii. Java Enterprise Edition (JEE) – This edition is mainly for developing and running distributed multitier architecture Java applications, based largely on modular software components running on an application server. iii. Java Micro Edition (JME) – This edition is primarily for developing programs or build up and embedded application such as mobile application. 2.4.5.4 SETTING UP PATH IN WINDOWS i. Right click on my computer and select properties ii. Click on environment variables under advance tab iii. Alter the path variable so that it also contains the path to the java executable Example if the path is currently set up to ‘C:WindowsSystem32’; change the path to ‘C:WindowsSystem32;C:Programs FilesJavajdk-11.0.1;’ 2.4.6 WRITE, COMPILE AND RUN A FIRST JAVA PROGRAM Write source code: The following Java program is developed under Windows using a text editor (Notepad) Compile and run your Java program Open a window command prompt. Switch to the Java directory with the command cd . Then locate the directory via the cd Java command. Use the dir command to verify that the source file is in the directory. Compile your Java source file into a class file with the following command. javac Simple.java Afterwards list again the content of the directory with the dir This source code is saved in Java directory with the Simple.java filename. The name of a Java source file must always equals the class name (within the source code) and end with the .java extension. In this example the filename must be Simple.java because the class is called Simple.
  • 42. 42 command. The directory contains now a file "Simple.class". If you see this file you have successfully compiled your first Java source code into bytecode. You can now start your compiled Java program. Ensure that you are still in the Java directory and enter the following command to start your Java program. “java Simple” The system should write "Hello Java" on the command prompt. 2.4.6.1 PARAMETERS USED IN FIRST JAVA PROGRAM Let's see what is the meaning of class, public, static, void, main, String[], System.out.println(). i. class keyword is used to declare a class in java. ii. public keyword is an access modifier which represents visibility. It means it is visible to all. iii. static is a keyword. If we declare any method as static, it is known as the static method. The core advantage of the static method is that there is no need to create an object to invoke the static method. The main method is executed by the JVM, so it doesn't require to create an object to invoke the main method. So it saves memory. iv. void is the return type of the method. It means it doesn't return any value. v. main represents the starting point of the program. vi. String[] args is used for command line argument. vii. System.out.println() is used to print statement. 2.4.7 BASIC SYNTAX OF JAVA In order to write the java programming you need to understand the basic syntax how do you write, what are the meaning convention, how do you declare variable etc. About java programming it is very important to keep in mind the following points.
  • 43. 43 i. Case Sensitivity: Java is case sensitive, which means identifier Hello and hello would have different meaning in java ii. Class Names: for all class names the first letter should be in upper case and follow by lowercase. Example Class MyFisttJavaClass. iii. Method Names: all method name should start with a lowercase example public void myMethod(). If severals word are used to form name then each inner word first letter should be upper. iv. Program File Name: name of the program file should exactly match the class name. v. All identifies such as name of variables, methods, classes, interface and package should begin with a letter (A to Z or a to z), _(underscore) or $ currency symbol. vi. A keyword such as class, static, etc. cannot be used as identifier as they have predefined. vii. White space and blank line are totally ignore by java compiler. Eg. int age; viii. Comments in java are nothing but better explanatory or information of a program e.g. why is this program, what the program does etc.it can be single line or multiline comment. //This is single comment. /* This is a multiline comment it is a simple java program */ 2.4.8 JAVA VARIABLE A variable is a container which holds the value while the java program is executed. A variable is assigned with a datatype. Variable is name of reserved area allocated in memory. In other words, it is a name of memory location. It is a combination of "vary + able" that means its value can be changed. There are three types of variables in java: i. Local variable ii. Instance variable iii. Static variable Local Variable: A variable declared inside the body of the method is called local variable. You can use this variable only within that method and the other methods in the class aren't even aware that the variable exists. A local variable cannot be defined with "static" keyword. Instance Variable: A variable declared inside the class but outside the body of the method, is called instance variable. It is not declared as static. It is called instance variable because its value is instance specific and is not shared among instances.
  • 44. 44 Static variable: A variable which is declared as static is called static variable. It cannot be local. You can create a single copy of static variable and share among all the instances of the class. Memory allocation for static variable happens only once when the class is loaded in the memory. Example to understand the type of variable in java: class Variable{ int data=50;//instance variable static int m=100;//static variable void method(){ int n=90;//local variable } }//end of class 2.4.9 JAVA DATA TYPES Data types specify the different sizes and values that can be stored in the variable. There are two types of data types in Java: i. Primitive data types: The primitive data types include boolean, char, byte, short, int, long, float and double. ii. Non-primitive data types: The non-primitive data types include Classes, Interfaces, and Arrays. Java Primitive Data Types: In Java language, primitive data types are the building blocks of data manipulation. These are the most basic data types available in Java language. Java is a statically-typed programming language. It means, all variables must be declared before its use. That is why we need to declare variable's type and name. There are 8 types of primitive data types which includes: boolean data type, byte data type , char data type , short data type , int data type , long data type , float data type and double data type. Fig. 3 Java Data Types
  • 45. 45 Data Type Default Value Default size Min Max boolean false 1 bit __ __ char u0000 2 byte u0000 uffff byte 0 1 byte -128 127 short 0 2 byte -32,768 32,767 int 0 4 byte -2,147,483,648 2,147,483,647 long 0L 8 byte -9,223,372,036,854,775,808L 9,223,372,036,854,775,807L float 0.0f 4 byte 3.4e−038f 3.4e+038f double 0.0d 8 byte 1.7e−308d 1.7e+038d 2.4.10 JAVA OPERATORS Operators are used to perform operations on variables and values. The value is called an operand, while the operation (to be performed between the two operands) is defined by an operator. Example: int x = 100 + 50; In the example above, the numbers 100 and 50 are operands, and the + sign is an operatorJava divides the operators into the following groups: i. Arithmetic operators ii. Assignment operators iii. Comparison operators iv. Logical operators v. Bitwise operators Arithmetic operator perform mathematics calculation Operator Meaning Example Result + Addition 5+6 11 - Subtraction 8-5 3 * Multiplication 2*3 6 / Division 21/7 3 % Modulus 18%4 2 Table. 6 Java Data Types Table. 7 Java Arithmetic Operators
  • 46. 46 Assignment operators (=): It is use to assign values or result of an expression to a variable or other expression. Expression Meaning x += y x= x + y x -= y x= x - y x *= y x= x * y x /= y x= x / y Comparison operators: are used to test equality and magnitude, or to compare between two things. The expression that uses them return a Boolean, value that is true or false. Logical Operators: expressions that result in Boolean values (for example the comparison operators) can be combined by using logical operators that represent the logical combination AND, OR, XOR and logical NOT. 2.4.11 CONTROL STRUCTURES IN JAVA Control structures are statements that are used to control the order in which statements in a program should be executed, in order to avoid the inherent sequential execution of programs. Some of the control structures are: i. SELECTION STATEMENT: Java program use selection statements to choose among alternative courses of action. We have: i. If statement ii. If…else statement iii. if-else-if ladder statement iv. nested if statement v. Switch case statement. Operator Meaning Example == Equal x==3 != Not equal x!=3 < Less than x<3 > Greater than x>3 <= Less than or equal to x<=3 >= Greater than or equal to x>=3 Table. 8 Java Assignment Operators Table. 9 Java Comparison Operators
  • 47. 47 ii. REPETITION STATEMENT also called looping statement or loop allows the programmer to specify that a program should repeat on action while some condition(s) remain true. Java provide three repetition statement, they are: i. While loop ii. do…while iii. for loop 2.4.11.1 SYNTAXES OF REPETITION STATEMENTS While Loop syntax while (Boolean_expression) { //statements } The loop first test the condition, if the condition evaluate to true it executes the entire statement, then test the condition again if it remains true it repeat the execution of the statement until the condition become false. Do…while syntax do { // statements } while(Boolean_expression); The do while loop is similar to while loop, except that a do while loop is guaranteed to execute at least one time. Notice that the Boolean expression appear at the end of the loop, so the statement in the loop execute once before the Boolean is tested. If Boolean expression is true, control jumps back up to do statement in the loop execute again until is false. For loop For (initialization; Boolean_expression; update){ //statement } The for loop consist of four part an initialization expression, a Boolean condition expression, the iteration (update) expression and the executing parts. The third expression usually updates the loop variable initialized in first expression. A for loop is useful when you know how many times a task is to be repeated.
  • 48. 48 2.4.12 JAVA METHOD AND CONSTRUCTORS A method is a block of code which only runs when it is called on the object. You can pass data, known as parameters, into a method and has return value. Methods are used to perform certain actions, and they are also known as functions. A method must be declared within a class. It is defined with the name of the method, followed by parantheses (). Java provides some pre-defined methods, such as System.out.println() but you can also create your own methods to perform certain actions: Example create a method inside my class public class MyClass { static void myMethod() { // code to be executed System.out.println("Hello World"); } } Example Explained i. myMethod() is the name of the method ii. static means that the method belongs to the MyClass class and not an object of the MyClass class. iii. void means that this method does not have a return value. Call a Method To call a method in Java, write the method's name followed by two parantheses () and a semicolon; In the following example, myMethod() is used to print a text (the action), when it is called inside main method: public class MyClass { static void myMethod() { System.out.println("I just got executed!"); } public static void main(String[] args) { myMethod(); } } // Outputs "I just got executed!" A method can also be called multiple times, if you want.
  • 49. 49 Java Constructors: is a special method that is used to initialize objects. The constructor is called when an object of a class is created. It can be used to set initial values for object attributes (variable). Example: Create a constructor: // Create a MyClass class public class MyClass { int x; // Create a class attribute // Create a class constructor for the MyClass class public MyClass() { x = 5; // Set the initial value for the class attribute x } public static void main(String[] args) { // Create an object of class MyClass (This will call the constructor) MyClass myObj = new MyClass(); System.out.println(myObj.x); // Print the value of x } } // Outputs 5 Note that the constructor name must match the class name, and it cannot have a return type (like void). Also note that the constructor is called when the object is created. All classes have constructors by default: if you do not create a class constructor yourself, Java creates one for you. However, then you are not able to set initial values for object attributes. 2.4.13 JAVA CLASSES AND OBJECTS Java is an object-oriented programming language. Everything in Java is associated with classes and objects, along with its attributes and methods. For example: in real life, a car is an object. The car has attributes, such as weight and color, and methods, such as drive and brake.S A Class is like an object constructor, or a "blueprint" for creating objects. A class contain data and method. To create a class, use the keyword class: Create a class called "MyClass" with a variable x: public class MyClass { int x = 5; }
  • 50. 50 Remember from the Java Syntax chapter that a class should always start with an uppercase first letter, and that the name of the java file should match the class name. In Java, Object is a copy of class or instance of class. An object is created from a class. We have already created the class named MyClass, so now we can use this to create objects. To create an object of MyClass, specify the class name, followed by the object name, and use the keyword new: Example Create an object called "myObj" and print the value of x: public class MyClass { int x = 5; public static void main(String[] args) { MyClass myObj = new MyClass(); System.out.println(myObj.x); } } //Output: 5 2.4.13.1 ACCESS METHODS WITH OBJECTS // Create a Car class public class Car { // Create a fullThrottle() method public void fullThrottle() { System.out.println("The car is going as fast as it can!"); } // Create a speed() method and add a parameter public void speed(int maxSpeed) { System.out.println("Max speed is: " + maxSpeed); } // Inside main, call the methods on the myCar object public static void main(String[] args) { Car myCar = new Car(); // Create a myCar object myCar.fullThrottle(); // Call the fullThrottle() method myCar.speed(200); // Call the speed() method } } Output: The car is going as fast as it can Max speed is: 200
  • 51. 51 CHAPTER THREE 3.0 TECHNICAL SKILLS ACQUIRED Below are list of skills i acquired during my Industrial Training (SIWES) at AUN YOLA i. Basic knowledge in understanding back end development and database maintenance. ii. Ability to create a dynamic websites such as contact form, blog post, registration form, login form etc. with the help of PHP and MySQL together with HTML, CSS and Bootstrap. iii. Ability of Installing Web server (xampp) on windows and linking PHP to the Database. iv. Ability to install java IDE (Netbeans) and setting up java environment path in windows v. Ability to Insert, Update, Select, Delete records in the Database using SQL and also Importing and Exporting database file from one local server to another. vi. I learnt how to write some basic Java programs and some rules governing it. 3.1 PERSONAL INPUT TO THE INSTITUTE (AUN YOLA) i. Assisting students through their ebooks (such as, installing a kindle reader, reset of pin). ii. Assist faculty in connecting their system to a projector when they have classes iii. Assist student in connecting their system to a projector when making a presentation. iv. Connecting online classes via skype, webEx and zoom v. Book conference room for faculty or student for meetings, seminar or workshop. 3.2 CHALLENGES ENCOUNTERD i. Difficulty in seeking for IT attachment. ii. Lack of transportation fee. iii. Lack of feeding fee. iv. Lack of facilitator that would taught me web design (front end and back end development). v. Too much of hours spent daily from Mondays to Fridays 8:30am to 5:30pm. vi. Self-leaning through online such as w3schools, edx, code academy etc. and videos from youtube channel.
  • 52. 52 3.3 WEB APPLICATION DEVELOPED During the period of my I.T, after i got a basic knowledge about back end development which is the real life work in the field I did my training, i was able to develop a dynamic web application using PHP and My-SQL and a front-end programing language such as html and css which i create Employee Record Management System. The purpose of this application is to enable the admin add employee data, manage employee data (search, update and delete) of an organization in such a way that we can have the data and information of employee saved in the database and this will make the access of employee data to be easy whenever needed unlike the traditional way of keeping data which is done manually. LOGIN FORM When you first launched the web application the first thing would appear is a login form. This form has two input fields with a placeholder of username and password and one button, Login. For admin to have access to the web application he must enter his password and username in these input fields and then click of Login button or press of Enter key to access the site. HOME PAGE Once the admin log in successfully the home page would appear with the navigation keys for admin to switch to different environments which include Home, Search, View Data, Add User, View User and Logout. This Home page contain the section which the employee data would be added to database, which include First Name, Last Name, Phone Number, age etc.
  • 53. 53 SEARCH PAGE The Search Page is use to search data or information of a particular employee whenever his data is needed by entering his first name in the input field for First Name and then click search or enter to find out if the employee exist or not In the above screenshot we want to check whether there is an employee whose first name is Alkhalil that exist in the database and the below shows there is one employee that exist.
  • 54. 54 VIEW DATA PAGE The View Data Page is used to view all the data of employee that exist in the database. EDIT AND DELETE LINK The edit link enable the admin to edit or update a particular data of employee as shown below Similarly the Delete link is used to delete data of a particular employee from the database.
  • 55. 55 ADD USER PAGE The Add User Page is used to add a user who will handle or manage the web application for the employee record management system with a username and password. VIEW USER PAGE The View User Page is used to view all the users that are added in the database with their username and password. The admin can delete a particular user of the web application by clicking the delete link above. The user of the web application has a limited features to handle in the application unlike admin. The above are the features of the users of the employee record management system they can add employee, search employee, delete or update employee but cannot add users, view users or delete users from the web application system. LOGOUT BUTTON The Logout Button is used to logout admin / user from the web application back to Login page.
  • 56. 56 CHAPTER FOUR 4.0 SUMMARY During my IT I learned back end development and its programming language which include PHP and My-SQL in which I develop some dynamic site which include blog post, I also learned about SQL and some basic java programs using Netbeans IDE. I was able to develop a dynamic web application that would manage and maintain the record of employee of organization in such a way that the admin would add employee, view employee, update or delete employee and search a particular employee. The application was developed using PHP and My-SQL and a front end programming language which include HTML and CSS. 4.1 CONCLUSION The industrial work experience scheme (SIWES) has played a vital role in ensuring that students in tertiary institutions obtained industrial skills before their graduation. This bridges the gap between theory and practical aspect of their field of study and also enable students to acquaint themselves with the area of the real world application of their field of study. My training at AUN has given me a broader view to the importance and relevance of Computer Science (Back end development and its programming language) in the immediate society and the world as a whole, as i now look forward to impacting it positively after graduation. I have also been able to improve my communication and skills and thereby developed good relationship with my fellow colleagues at work. I have also been able to appreciate the connection between my course of study and other disciplines in producing a successful result. 4.2 RECOMMENDATION As an IT student who have just finished his attachment and experienced many things, I have the following recommendations: i. SIWES should ensure active participation of student on attachment. ii. Allowances should be paid to students during their IT just like NYSC and not after. This would help them to handle some financial problems during their training course. iii. Students should utilize their IT period to prepare themselves for employment after graduation.
  • 57. 57 REFERENCE TEXTBOOKS  Joseph P, Russel (2001). Java Programming for the absolute beginner; Prima Publishing Inc Rosevlle califonia.  Larry Rockoff (2017). The Language of SQL second edition; Pearson Education, Inc. Printed in the United States of America.  Robin Nixon (2014). Learning PHP, MySQL,Javascript, CSS & HTML5 (3rd Edition) published by O’ Reilly media Inc, 1005 Gravenstein High way North Sebastopol (USA). LINK  http://www.w3schools.com  http://www.tutorialpoint.com  http://www.javatpoint.com  http://www.w3schools.com  http://www.commonlounge.com  http://www.codecademy.com  http://www.freecodecamp.com  http://www.edx.org  http://udacity.com