Lt - Full Stack Java
Lt - Full Stack Java
The internship report shall have only a one-page executive summary. It shall include
five or more Learning Objectives and Outcomes achieved, a brief description of the
sector of business and intern organization and summary of all the activities done by
the intern during the period.
Learning objectives:
Learning objectives for Java Full Stack Development typically include mastering
various technologies and concepts related to both front-end and back-end
development. Here are some common learning objectives for Java Full Stack
Development:
Programming Fundamentals: Understood the core principles of Java
programming, including variables, data types, control structures, loops, arrays,
and object-oriented programming concepts
Front-End Development: Learn HTML, CSS, and JavaScript for creating
interactive and responsive user interfaces.
Back-End Development: Gain proficiency in server-side programming with
Java using frameworks like Spring Boot or Jakarta EE for building robust and
scalable applications.
Database Management: Understood database concepts, design, and
implementation using SQL. Learn about relational database management
systems (RDBMS) like MySQL.
Soft Skills: Develop effective communication skills, teamwork, problem-solving
abilities, time management, and a mindset for continuous learning and
improvement.
Testing and Debugging: Learn testing frameworks and techniques for writing
unit tests, and end-to-end tests to ensure the reliability and quality of code.
Develop skills in debugging and troubleshooting code issues.
Outcomes Achieved:
As a Java Full Stack Developer, I have achieved proficiency in front-end technologies
like HTML, CSS, and JavaScript frameworks for creating interactive user interfaces.
Additionally, I have mastered back-end development using Java, Spring Boot, and
RESTful API design for efficient data processing and seamless communication between
client and server. I can proficiently manage databases (MySQL). I am capable of
building and deploying scalable web applications, contributing effectively to agile
teams, and driving digital innovation.
I understood best practices in Website and Web Application development, including
coding standards, performance optimization, and accessibility considerations.
Description of the sector of business:
M/s. KARTHIKEYA SOFTWARE SOLUTIONS PRIVATE LIMITED is a leading IT firm
based in Tirupati, Andhra Pradesh, India. The company was established with the aim of
providing high-quality and innovative IT solutions to businesses of all sizes, across
various industries. It provides services like Website Designing, Web Application
Development, Graphic Designing, Mobile App Development, Digital Marketing and
Internship Programme to students.
website url: https://www.karthikeyasolutions.com
Email Address: info@ karthikeyasolutions.com
CHAPTER 2: OVERVIEW OF THE ORGANIZATION
Suggestive contents
M/s. KARTHIKEYA SOFTWARE SOLUTIONS PRIVATE LIMITED is a leading IT firm based in Tirupati,
Andhra Pradesh, India. The company was established with the aim of providing high-quality and
innovative IT solutions to businesses of all sizes, across various industries. It provides services like
Website Designing, Web Application Development, Graphic Designing, Mobile App Development,
Digital Marketing and Internship Programme to students.
C. We are dedicated to offering interns valuable learning experiences, hands-on training, and
mentorship to develop their skills, fostering a nurturing and inclusive environment that encourages
growth and professional advancement.
D. Our organizational structure is designed for efficiency and collaboration, featuring well-defined
roles, clear hierarchies, and open communication channels, enabling seamless coordination among
teams to deliver exceptional IT solutions and services.
E. Employees in the intern's placement ensure mentoring, guidance, and hands-on learning
opportunities. They collaborate with interns on projects, provide feedback, and support skill
development to contribute effectively to the organization.
F. As of the latest available data, KARTHIKEYA SOFTWARE SOLUTIONS PRIVATE LIMITED has shown
impressive growth with increasing turnover, profits, and market reach. Its market value has surged
significantly. Future plans include global expansion, diversifying service offerings, and investing in
cutting-edge technologies to maintain its position as a leading global IT solutions provider.
G. KARTHIKEYA SOFTWARE SOLUTIONS PRIVATE LIMITED aims to continue its global expansion by
establishing a strong presence in new markets. It plans to focus on research and development to
develop advanced IT solutions. Strengthening client relationships, enhancing customer support, and
fostering a culture of continuous improvement will remain integral to its future growth.
CHAPTER 3: INTERNSHIP PART
Description of the Activities/Responsibilities in the Intern Organization during Internship, which shall
include - details of working conditions, weekly work schedule, equipment used, and tasks performed.
This part could end by reflecting on what kind of skills the intern acquired.
During the internship at M/s. KARTHIKEYA SOFTWARE SOLUTIONS PRIVATE LIMITED, the intern
worked in a collaborative office environment with flexible working hours. The weekly schedule
involved a mix of individual tasks and team meetings to discuss progress and plan strategies. The
intern utilized computers, software tools, and communication platforms for media outreach,
content creation, and event coordination.
ACTIVITY LOG FOR THE FIRST WEEK
Detailed Report:
Introduction to HTML:
HTML stands for Hyper Text Markup Language.
HTML is the standard markup language for creating Web pages.
HTML describes the structure of a Web page.
HTML consists of a series of elements.
HTML elements tell the browser how to display the content.
Structure of HTML:
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
Explanation:
The <!DOCTYPE html> declaration defines that this document is an HTML5 document.
The <html> element is the root element of an HTML page.
The <head> element contains meta information about the HTML page.
The <title> element specifies a title for the HTML page (which is shown in the browser's title bar or
in the page's tab).
The <body> element defines the document's body, and is a container for all the visible contents,
such as headings, paragraphs, images, hyperlinks, tables, lists, etc.
The <h1> element defines a large heading.
The <p> element defines a paragraph.
Text Formatting Tags:
<!--...--> - Defines a comment
<a> - Defines a hyperlink
<b>- Defines bold text
<br> - Defines a single line break
<h1> to <h6> - Defines HTML headings
<hr> - Defines the Horizontal Line
<ol> - Defines an ordered list
<ul> - Defines an ordered list
<li> - Defines Ilist Item
<P> - Defines a paragraph
<pre> - Defines preformatted text
<sub> - Defines subscripted text
<sup> - Defines superscripted text
Form Elements:
<form>:
The <form> tag specifies an form data.
<input>
The <input> tag specifies an input field where the user can enter data.
The <input> element is the most important form element.
The <input> elem ent can be displayed in several ways, depending on the type attribute.
The different input types are as follows:
<input type="button">
<input type="checkbox">
<input type="date">
<input type="datetime-local">
<input type="email">
<input type="file">
<input type="hidden">
<input type="image">
<input type="number">
<input type="password">
<input type="radio">
<input type="range">
<input type="reset">
<input type="search">
<input type="submit">
<input type="text"> (default value)
<input type="url">
<select>
The <select> element is used to create a drop-down list.
The <select> element is most often used in a form, to collect user input.
<option>
The <option> tag defines an option in a select list.
<option> elements go inside a <select> element.
<textarea>
The <textarea> tag defines a multi-line text input control.
The <textarea> element is often used in a form, to collect user inputs like comments or reviews.
The size of a text area is specified by the cols and rows attributes
<button>
The <button> tag defines a clickable button. It submits the form data.
ACTIVITY LOG FOR THE SECOND WEEK
Text, List, Icons, Links, Tables, Display, I learned the properties with
Day – 5 Position and z-index different values of the
property.
Border:
The CSS border properties are use to specify the style, color and size of the border of an element.
The CSS border properties are given below
border-style
border-color
border-width
border-radius
Display
Display is the most important property of CSS which is used to control the layout of the element. It
specifies how the element is displayed.
Font
CSS Font property is used to control the look of texts. By the use of CSS font property you can
change the text size, color, style and more. You have already studied how to make text bold or
underlined. Here, you will also know how to resize your font using percentage.
Font-family
Font-size
Font-style
Height
This CSS property sets the height of an element. It is used to set the height of content area of an
element.
Width
The CSS width property is used to set the width of the content area of an element.
Margin
CSS Margin property is used to define the space around elements. It is completely transparent and
doesn't have any background color. It clears an area around the element.
Padding
CSS Padding property is used to define the space between the element content and the element
border.
It is different from CSS margin in the way that CSS margin defines the space around elements. CSS
padding is affected by the background colors. It clears an area around the content.
ACTIVITY LOG FOR THE FORTH WEEK
How to get the bootstrap data and how I understand how to find the
Day - 2
to include bootstrap layouts into our class names in bootstrap
HTML Code
Attribute Description
function validateForm() {
let x = document.forms["myForm"]["fname"].value;
if (x == "") {
alert("Name must be filled out");
return false;
}
}
Example:
<script>
function validateform(){
var name=document.myform.name.value;
var password=document.myform.password.value;
if (name==null || name==""){
alert("Name can't be blank");
return false;
}else if(password.length<6){
alert("Password must be at least 6 characters long.");
return false;
}
}
</script>
<body>
<form name="myform" method="post" action="abc.jsp" onsubmit="return validateform()" >
Name: <input type="text" name="name"><br/>
Password: <input type="password" name="password"><br/>
<input type="submit" value="register">
</form>
ACTIVITY LOG FOR THE SEVENTH WEEK
Day
Person In-Charge
& Brief description of the daily activity Learning Outcome
Signature
Date
I Understood the
Day – 1 Introduction to Database, DBMS & RDBMS
importance of Database
I understood the
Day – 3 Introduction to SQL and Database creation importance of SQL in
Database.
RDBMS
RDBMS stands for Relational Database Management System. RDBMS is the basis for SQL, and for all
modern database systems such as MS SQL Server, IBM DB2, Oracle, MySQL, and Microsoft Access.
The data in RDBMS is stored in database objects called tables. A table is a collection of related data
entries and it consists of columns and rows.
Introduction to integrity
I understood the importance of Integrity
Day – 1 constraints and data
constrains in database.
validation in database.
Practice on integrity
Day – 3 I Practiced the Constrains
constraints
Introduction to Built-In
Day – 5 I Understood the Built-in Functions
Functions
Examples:
create table sattva_students(sno int(3) Unique, sname varchar(10), marks int(3)); @column level
create table sattva_students (sno int(3), sname varchar(10), marks int(3), unique(sno)); @table level
create table student (sno int(3), sname varchar(10), marks int(3), unique(sno,sname)); @table level
create table school(sno int(3), sname varchar(15), address varchar(25), primary key(sno));
create table library (lno int(3) primary Key, book_name varchar(15), sid int(3), foreign key (SID)
references school(sno));
select min(salary),max(salary), job_id, department_id from employees group by
job_id,department_id;
select count(*) , manager_id from employees group by manager_id having manager_id in
(100,108,114);
select truncate(avg(salary),0),count(*) , manager_id from employees group by manager_id;
select truncate(avg(salary),0),count(*) , manager_id from employees group by manager_id
having avg(salary) > 5000;
select salary , first_name from employees order by salary;
select salary , first_name from employees order by salary desc;
ACTIVITY LOG FOR THE NINETH WEEK
Day – 5 Practice on the Joins and Clauses Practiced the Joins and Clauses
Day - 6 Practice on the Joins and Clauses Practiced the Joins and Clauses
WEEKLY REPORT
WEEK – 9
Objective of the Activity Done:
Joins and Sub Queries
Detailed Report:
Auto Increment
Auto Increment is a function that operates on numeric data types. Its automatically
generates sequential numeric values everytime a record is inserted into a table for a field defined as
auto increment.
Only Primary key can be Auto Incremented... (AUTO INCREMENT must be followed by
Primary Key).
create table student (sno int(5) primary key AUTO_INCREMENT, .....)
Alter table student AUTO_INCREMENT=100;
JOINS:
JOIN (To retrieve data from more than one table by joining the tables by relation)(PK/FK)...
1. Inner/simple join/equi join (e.departmentID = d.departmentID)
2. Left Outer / Left Join (e.departmentID = d.departmentID)
3. Right join/Right Outer Join (e.departmentID = d.departmentID)
4. Full join / Full Outer Join (e.departmentID = d.departmentID)
5. Self Join (join with same table itself) ()
select first_name, last_name, department_name from employees inner join departments
on employees.department_id = departments.department_id;
select first_name, last_name, department_name from employees left outer join departments
on employees.department_id = departments.department_id;
select first_name, last_name, department_name from employees right outer join departments
on employees.department_id = departments.department_id;
select first_name, last_name, department_name from employees join departments
on employees.department_id = departments.department_id;
Day – 5 Introduction to Data types I understood the types of data types in java
Introduction to control
statements and
Day – 1 I understood the control statements
importance of Control
statements
If statements, If Else, If
I understood the conditional statements a
Day - 2 Else If Ladder and
practiced with different conditions.
Nested Statements
Practice on the
Day – 5 conditional and Looping I practiced with different scenarios.
statements
Introduction to OOPs
Day – 1 I understand the importance of OOPs concept
and Importance of OOPs
Introduction to Class,
Day - 2 Objects and I created the classes and objects
constructors
Introduction to
I created the data members and applied the
Day – 3 Encapsulation & Access
access levels using access specifiers
Specifiers and usage
Introduction to
Inheritance, types of I understand the parent - child relationship and
Day – 5
introduction and how to get parent properties to child’s
Interfaces
Establishing connection to
Day - 2 I understood the jdbc steps
database
Application development
Day – 4 and CURD Operations using I created the project using curd operations
JDBC.
3) public boolean execute(String sql): is used to execute queries that may return multiple results.
PreparedStatement interface:
Spring Boot is a Spring module that provides the RAD (Rapid Application Development) feature
to the Spring framework.
It’s an open-source framework for building enterprise Java applications.
Spring aims to simplify the complex and cumbersome enterprise Java application
development process by offering a framework that includes technologies such as
(AOP, DI, POJO).
Spring is a lightweight framework that can be used to create scalable, secure, and
robust enterprise web applications.
Spring framework a collection of sub frameworks such as Spring Web Flow, Spring
MVC, and Spring ORM
@SpringBootApplication - is a convenience annotation that combines
the @EnableAutoConfiguration, @SpringBootConfiguration and
the @ComponentScan annotations in a Spring Boot application.
@EnableAutoConfiguration – This enables Spring Boot’s autoconfiguration
mechanism. Auto-configuration refers to creating beans Object automatically by
scanning the class path.
@ComponentScan – Typically, in a Spring application, annotations like @Component,
@Configuration, @Service, @Repository are specified on classes to mark them as
Spring beans. The @ComponentScan annotation basically tells Spring Boot to scan the
current package and its sub-packages in order to identify annotated classes and
configure them as Spring beans. Thus, it designates the current package as the root
package for component scanning.
@SpringBootConfiguration – Designates the class as a configuration class for Java
configuration. In addition to beans configured via component scanning, an application
may desire to configure some additional beans via the @Bean annotation.
@RestController – It’s a stereotype annotation. It provides hints for people reading
the code and for Spring that the class plays a specific role(Spring considers it when
handling incoming web requests).
@RequestMapping: It is used to map the web requests. It has many optional elements
like consumes, header, method, name, params, path, produces, and value. We use it
with the class as well as the method.
@GetMapping: It maps the HTTP GET requests on the specific handler method. It is
used to create a web service endpoint that fetches It is used instead of
using: @RequestMapping(method = RequestMethod.GET)
@PostMapping: It maps the HTTP POST requests on the specific handler method. It is
used to create a web service endpoint that creates It is used instead of
using: @RequestMapping(method = RequestMethod.POST)
@PutMapping: It maps the HTTP PUT requests on the specific handler method. It is
used to create a web service endpoint that creates or updates It is used instead of
using: @RequestMapping(method = RequestMethod.PUT)
@DeleteMapping: It maps the HTTP DELETE requests on the specific handler method.
It is used to create a web service endpoint that deletes a resource. It is used instead of
using: @RequestMapping(method = RequestMethod.DELETE)
@Autowired: Spring provides annotation-based auto-wiring by providing @Autowired
annotation. It is used to autowire spring bean on setter methods, instance variable,
and constructor.
@Service: It is also used at class level. It tells the Spring that class contains
the business logic.
@Repository: It is a class-level annotation. The repository is a DAOs (Data Access
Object) that access the database directly. The repository does all the operations
related to the database.
Spring Data JPA is a part of the Spring Data project that simplifies data access in Spring
applications using the Java Persistence API (JPA). It provides repositories and infrastructure to
work with relational databases, reducing boilerplate code for CRUD operations. Spring Data JPA
enables developers to interact with databases using domain-specific queries, entity mapping,
and automatic repository creation based on interfaces. In Spring Boot applications, integrating
Spring Data JPA is seamless, allowing for efficient and streamlined database operations without
manual configuration or complex data access logic.
Thymeleaf is a modern server-side Java template engine for web and standalone
environments, integrating seamlessly with Spring Boot. It provides a natural way to create
dynamic web content by embedding expressions directly in HTML templates. In a Spring Boot
application, Thymeleaf simplifies the development of web pages with dynamic data, allowing
for easy integration of data from controllers, internationalization, and template layout
management. Its syntax is clean and intuitive, making it a popular choice for building robust
and maintainable web applications within the Spring Boot framework.
CHAPTER 5: OUTCOMES DESCRIPTION
Describe the work environment you have experienced (in terms of people
interactions, facilities available and maintenance, clarity of job roles, protocols,
procedures, processes, discipline, time management, harmonious relationships,
socialization, mutual support and teamwork, motivation, space and ventilation, etc.)
These job-related skills and practical experiences have enhanced my ability to contribute
effectively to software development projects and provided me with valuable insights
into the industry's best practices.
Describe the managerial skills you have acquired (in terms of planning, leadership,
team work, behavior, workmanship, productive use of time, weekly improvement in
competencies, goal setting, decision making, performance analysis, etc.
There were advancements in frameworks like Spring Boot for back-end development,
HTML, CSS & BOOTSTRAP front-end development, and containerization
technologies like Docker for deployment.
Additionally, there were improvements in cloud services such as AWS, Azure, and
Google Cloud, offering scalable and efficient solutions for hosting applications.
These developments underscored the importance of staying updated with digital
technologies to enhance productivity, scalability, and performance in software
development projects.
PHOTOS & VIDEO LINKS