Rrrrrrrr

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 25

CHENNAI INSTITUTE OF TECHNOLOGY

Sarathy Nagar, Kundrathur, Chennai-600069

An Autonomous Institute Approved by AICTE and Affiliated to Anna University,


Chennai

COMPUTER SCIENCE AND ENGINEERING

JAVA DEVELOPER

A Report on Internship
COMPUTER SCIENCE AND ENGINEERING

By

RAGHURAMARAJU UPPALAPATI
210421104122
SEPTEMBER 2024
CHENNAI INSTITUTE OF TECHNOLOGY
CHENNAI-69

Vision of the institute:

To be an eminent centre for Academia, Industry and Research by imparting


knowledge, relevant practices and inculcating human values to address
global challenges through novelty and sustainability.

Mission of the Institute:

IM1.To create next-generation leaders by effective teaching-learning


methodologies and instill a scientific spark in them to meet the global challenges.
IM2.To transform lives through the deployment of emerging technology, novelty,
and sustainability.

IM3.To inculcate human values and ethical principles to cater the societal needs.
IM4.To contributes towards the research ecosystem by providing a suitable,
effective platform for interaction between industry, academia, and R & D
establishments.
Vision of the Department:

Mission of the Department:


CHENNAI INSTITUTE OF TECHNOLOGY
An Autonomous Institute

CHENNAI-69

CERTIFICATE

This is to certify that the “Internship Report” Submitted by


RAGHURAMARAJU UPPALAPATI (Reg no: 210421104122) is
work done by him/her and submitted during the 2024-2025 academic
year, in partial fulfillment of the requirements for the award of the degree
of BACHELOR OF ENGINEERING in COMPUTER SCIENCE
AND ENGINEERING, at Chennai Institute Of Technology

Dr.R.BALAMURALI, M.Tech, Ph.D

College Internship Coordinator Internal Examiner

Dr.S.Pavithra
Head of the Department External Examiner

Department Internship Coordinator


Internship Review Evaluation / Comments

Marks
Sl No. Criterion Max. Marks
Allotted

1. Regularity in maintenance of the diary. 10

2. Adequacy & quality of information recorded 10

3. Drawings, sketches and data recorded 10

4. Thought process and recording techniques used 05

5. Organization of the information 05

6. Originality of the Internship Report 10


7. Adequacy and purposeful write-up of the Internship
Report 10

Organization, format, drawings, sketches, style,


8. language etc. of the Internship Report 10

9. Practical applications, relationships with basic


theory and concepts 10

10. Presentation Skills 20

100
Total

External Internship Advisor's Name:

Company: RAVEN SOFTWARE SOLUTIONS

Date: Signature

INTERNSHIP APPROVAL LETTER:


ACKNOWLEDGEMENT

First, I would like to thank Mr.ANKITH, of RAVEN SOFTWARE SOLUTIONS,


HYDERABAD for giving me the opportunity to do an internship within the
organization.

I also would like all the people that worked along with me RAVEN SOFTWARE
SOLUTIONS, HYDERABAD with their patience and openness they created an
enjoyable working environment.

It is indeed with a great sense of pleasure and immense sense of gratitude that I
acknowledge the help of these individuals.

I am highly indebted to our Chairman Shri.P.SRIRAM and Principal


Dr.A.RAMESH, M.E., Ph.D, for the facilities provided to accomplish this
internship. I would like to thank my Head of the Department Dr.S.PAVITHRA,
for her constructive criticism throughout my internship.

I would like to thank Dr.R.BALAMURALI, M.Tech, Ph.D., College


internship coordinator, and (Mrs Bhavani Ramesh M.E, MBA, PhD),
internship coordinator of Computer Science and Engineering for their
support and advice to get and complete internship in the above-said
organization.

I am extremely great full to my department staff members and friends who


helped me in the successful completion of this internship.

RAGHURAMARAJU UPPALAPATI
210421104122
PREFACE

Students of the Computer Science and Engineering Department


require to do an Industrial Internship to enhance my knowledge. The
purpose of the Industrial Internship is to acquaint the students with the
practical application of theoretical concepts taught to me during my
course period.

It was a great opportunity to have a close comparison of theoretical


concepts in a practical field. This report may depict deficiencies on my
part but still, it is an account of my effort.

The output of my analysis is summarised in the shape of an Industrial


Internship the content of the report shows the details of the sequence of
these. This is my
Industrial Internship report which I have prepared for the sake of my
FOURTH YEAR Industrial Internship. Being an engineer, I should help
society by inventing something new by utilizing my knowledge which
can help them to solve their problem so for this I am working in RAVEN
SOFTWARE SOLUTIONS.
ABSTRACT

Introduction

Organization Information

About the Author

About the Course

Course Description

About the Technology

Why I choose Java over as Backend

Tools Learned

Course Outcome

Conclusion
INTRODUCTION ABOUT REPORT

Internship courses are different from traditional courses that


typically teach and lecture in the classroom. While the
emphasis of both type of courses is still on the learning of the
students, the delivery method and the mechanism by which
the teaching/learning of the internship courses is different
than other courses.

ROLES AND RESPONSIBILITIES

A student intern must always conduct themselves in a professional


manner at all times and this is the role and responsibility of an intern.
We have to develop respectful and cooperative relationships with the
supervisors and other employees at the working place. We must
always be punctual to work and always behave in an ethical manner.

⮚ Organize, coordinate, and promote a centralized internship program


⮚ Train Department Internship Coordinators
⮚ Ensure academic consistency and intern preparation
⮚ Acquire liability insurance for each intern
⮚ Act as a resource center and develop intern
opportunities
⮚ Oversee internship issues and legal concerns
⮚ Oversee the registration process for internship
credit/courses
1. Introduction:
Welcome to the comprehensive course report on "Java full stack
development Course." This cutting-edge course is designed to provide
students with an in-depth understanding of the exciting field of web
development. This course is a collaboration between leading experts in the
field, aimed at empowering students with practical skills and knowledge to
excel in the rapidly evolving world of web development.

2. Organization Information:
Our training is based on latest cutting-edge infrastructure technology
which makes you ready for the industry. Digital-Lync will Present this
certificate to students or employee trainees upon successful completion
of the course which will encourage and add to trainee’s resume to
explore a lot of opportunities beyond position

3. About the Author:

Author Description: Dr. Sajeed Saif is a distinguished Full Stack trainer and
educator, renowned for his expertise in the field of web development., she has
dedicated his career to advancing the boundaries of web development and
making complex concepts accessible to learners of all levels. With a passion
for teaching and a commitment to excellence, Dr. Sajeed Saif has developed a
reputation for delivering high-quality and engaging educational content. His
ability to simplify intricate ideas and present them in a clear and approachable
manner has earned his accolades as an exceptional instructor.
Sajeed saif is a Java &Python Full stack trainer and has 8 years of experience
in web development worked on different E-commerce projects like Booking
Reservation System Application and Health Care management System and
banking Applications.
Having hands-on experience in “Java SpringBoot Microservices, python
Django Rest Framework.

4. Course Description:

About the Technology:

1. Java:

Java is a general-purpose programming language intended to let


programmers write once, run anywhere (WORA). This means that compiled
Java code can run on all platforms that support Java without the need to
recompile.

.2. Hibernate:

Hibernate is a Java framework that simplifies the development of Java


application to interact with the database. It is an open source,
lightweight, ORM (Object Relational Mapping) tool. Hibernate
implements the specifications of JPA (Java Persistence API) for data
persistence.
3.Spring Framework:

The Spring Framework is an application framework and inversion of control


container for the Java platform. The framework's core features can be used
by any Java application, but there are extensions for building web
applications on top of the Java EE platform

4.Spring Boot:

Java Spring Boot (Spring Boot) is a tool that makes developing web
application and microservices with Spring Framework faster and easier
through three core capabilities:

1. Autoconfiguration

2. An opinionated approach to configuration

3. The ability to create standalone applications

Why You Should Use Java for Backend Infrastructure


The following are some benefits of using the Java programming language for
backend development.

Scalability and Robustness


Java has a robust type-checking mechanism that makes it durable. The Java
virtual machine (JVM) enables dynamic linking and a secure environment,
allowing Java to run anywhere.

Java's automatic memory management and disposal collection make it highly


scalable and these features help speed up web application development.
Open Source Library
The vast majority of Java libraries are free and open-source, with
expert support. The use of such libraries speeds up the back-end
programming of web projects dramatically.

There are many Java libraries for various uses, including logging, JSON
parsing, unit testing, XML and HTML parsing, messaging, PDF and Excel
reading, cryptography, and many others.

Diversity
Java has long been the dominant programming language for developing Web
applications, Android applications, and software tools such as Eclipse, IntelliJ
IDEA, NetBeans IDE, and others.

Java's use cases have now grown to include data science applications,
machine learning applications, and even IoT applications.

Simplicity
Java syntax is relatively simple, easy to develop, learn, maintain, and
understand, and the code is easily debuggable.

Java is also less complex than languages such as C and C++ because many of
these languages' sophisticated features, such as explicit pointers, storage
classes, operator overloading, and many others, have been eliminated from
Java.

Security
Java reduces security concerns and dangers by reducing the use of explicit
pointers. A pointer is a value that keeps the memory address of another value
and can be exploited to gain unwanted memory access. This issue is solved by
removing the concept of pointers.
Platform Independency

Java is platform-independent, which means it's a "Write Once, Run Anywhere"


(WORA) language.

The compiled code (the byte code of Java) is platform-independent and can run
on any machine, irrespective of the operating system. We can run this code on
any machine that supports the Java Virtual Machine (JVM), as shown in the
figure above.

Multithreading Support
Java is a multithreaded language, which means that multiple threads can run at
the same time.

A thread is a process's smallest unit. Multithreading allows us to maximize CPU


use. Multiple threads share the same memory space, increasing the
application's efficiency and performance.

Drawbacks of the Java Programming Language


Lack of Backup Facility
Java is primarily concerned with storage and does not prioritize data backup.
This is a huge drawback, and it is losing user interest and ratings as a result.

Code Complexity
Java code is extensive, which means it contains many words and long, complex
sentences that are hard to read and comprehend. This reduces the code's
readability.

Java strives to be more manageable, but it must settle for unnecessarily


complex programs and detailed explanations for each thing.
Speed and Performance Level
Java consumes a large amount of memory and is substantially slower than
native languages such as C or C++. This is partly because each bit of code
must be interpreted into machine-level code. This slow performance is caused
by the JVM's additional level of compilation and abstraction.

Memory Capacity
When compared to other languages such as C and C++,
Java uses a significant amount of memory. Memory
efficiency and system performance may suffer during
cleanup execution.

Top Companies That Use Java


To begin with the list, according to statistics based
on Codegym, 10,130 companies are said to employ Java in
their IT stacks. Not unexpectedly, the United States leads
among enterprises that use Java, accounting for more than
60% of Java clients (about 64,000 businesses).
Linkedin: This application is primarily written in Java, with some C+
+ parts thrown in for good measure. Java is excellent for LinkedIn's
search and analytics. More specifically, it addresses scale concerns,
allowing the server to function faster while using fewer resources.
Uber: Uber is the next big Java-based firm. The
organization works with a large amount of real-time data,
tracking drivers and incoming ride requests. As a result,
Uber should be able to sift the data and match users
swiftly. That's where Java comes in, handling requests and
transmitting data as quickly as possible.
Microsoft: Even though Java does not control Windows or
anything similar, Microsoft uses it for various purposes. For
example, it requires Java to construct its proprietary Edge
web browser.
NASA World Wind: NASA built the Word Wind app, which
features a realistic 3D virtual globe and can display precise
geographical data, largely thanks to Java (the program
uses actual images from satellites to develop 3D
representations of the planets). It's an open-source
program that runs on practically any operating system
because it's developed in Java.
Netflix: Netflix, the same as PayPal, primarily uses Java for
practically everything. And because Netflix is one of the
best-known entertainment platforms in the world, there is
a significant demand for Java expertise in this organization.
In addition to the tech titans mentioned earlier, Java is
used by Airbnb, Google, eBay, Spotify, TripAdvisor, Intel,
Pinterest, Groupon, Slack, Flipkart, and many more.
Without a doubt, you can find Java practically anywhere.

Differences Between a Java Backend and a Node.js


Backend
Java and Node.js are both popular choices for building
server-side applications. But they have some key
differences that make each one better suited for different
use cases.

In terms of strengths, Java has the advantage of being a


statically-typed language, which provides better
performance and stability. Java also provides better
security features, such as the Java Virtual Machine (JVM),
which has memory protection and isolation. Java also has a
large number of libraries and tools available, which makes
it easier to develop and maintain large-scale applications.

Node.js, on the other hand, has the advantage of being a


dynamically-typed language, which makes it easier to learn
and more flexible. Node.js is also well-suited for real-time
applications, such as chat applications, thanks to its event-
driven architecture. Node.js also has a large and active
community, which provides a wealth of libraries and tools
for various tasks.

In terms of weaknesses, Java can be slower to develop and


more complex compared to Node.js, due to its strong
typing and verbose syntax. Java also requires more
memory compared to Node.js, which can make it less
suitable for low-memory devices.

Node.js, on the other hand, has weaker type checking


compared to Java, which can lead to unexpected errors.
Node.js also has a single-threaded architecture, which
means that it is not as well-suited for multi-threaded
applications compared to Java.

In conclusion, both Java and Node.js have their own


strengths and weaknesses for backend development. Java
is well-suited for large-scale and complex applications,
while Node.js is well-suited for real-time and scalable
applications. The choice between the two ultimately
depends on the specific requirements of the project.

Top Java Frameworks for Backend Development


There are various Java backend frameworks, each with its
own capabilities and features. Below are a few popular
examples:

Spring
The Spring framework is a lightweight Java application
framework and an inversion of a control container.

The framework's core functionality can be used by any Java


application, although there are enhancements for
constructing web applications on top of the Java EE
framework.

Hibernate
Hibernate ORM is an object-relational mapping tool written
in Java that provides a framework for translating a
relational database into an object-oriented domain model.

Play
The Play Framework combines productivity and
performance, making it simple to create scalable Java and
Scala online applications. Play is developer-friendly, with a
"simply hit refresh" workflow and testing support built in.

Because of Play's stateless and non-blocking architecture,


applications scale reliably. Play is ideal for current online
and mobile apps because it is RESTful by default and
includes asset compilers, JSON, and WebSocket support.

Struts
Apache Struts is a free and open-source web application
framework used to create Java EE web applications. It uses
and improves the Java Servlet API to encourage developers
to use a model-view-controller paradigm. Craig
McClanahan designed it and presented it to the Apache
Nation.

WEEKLY OVERVIEW OF COURSE ACTIVITIES

Topics:

>Core java

>Advanced Java

>JDBC,ORM and Hibernate

>Spring core framework

>Spring Restful Services

>Spring Boot

Lessons I Learned during my Course:

>>I understand how the IT Industry works, Everytime Software developers


want to update their skills to work in Software industry. I understand that my
Mentors.
>> I also see the problems faced by my Seniors how they are suffering from by
Recession.

>> I motived to work hard and improve my skills.

>>I also feel passion my java full stack development.

>> I also improved my Network(Connections) during Offline Course and meet


new enthusiastic people and I saw their struggle to achieve their Goals in the
competitive world.
Conclusion:

In conclusion, Java full stack web development offers a


comprehensive and cutting-edge journey into the world of
technology Led by the esteemed educator, Dr.Sajiet saif, this
course equips learners with a solid understanding of web
technology, practical web applications.Throughout the course,
students gain hands-on experience using popular tools like
Hibernate,Spring Framework,Spring Boot,ensuring they are
wellprepared to tackle real-world web projects
PO &PSO Attainment

PO.No Graduate Attribute Attained Justification


PO 1 Engineering knowledge
The Engineering Knowledge has
Yes
been successfully gained.

Analysis is done on current


PO 2 Problem analysis Yes problem or opportunity.

The website has been designed in


Design/Development of accordance with the solution to the
PO 3 solutions Yes problem.

Investigations were done on the


Conduct investigations of problems options that people
PO 4 complex problems Yes wanted.

MERN stack is one of the trending


PO 5 Modern Tool usage Yes technology.

The solution is made to help the


PO 6 The Engineer and society Yes society.

This could include using


ecofriendly packaging, optimizing
delivery routes for fuel efficiency,
Environment and or sourcing ingredients from
PO 7 Sustainability Yes sustainable suppliers.

This could involve ensuring fair


labor practices, treating customers
and employees with respect, and
promoting transparency in your
PO 8 Ethics Yes business operations.

This could involve individual


contributions to the codebase,
collaboration with others during
the development process, and
Individual and team effective communication within
PO 9 work Yes the team.
PO.No Graduate Attribute Attained Justification
This could involve clear and
concise user interfaces, effective
PO 10 Communication Yes error handling, and timely
notifications to users regarding
their orders or any updates.

This could include features such as


order tracking, payment processing,
Project management and and managing the overall project
PO 11 finance Yes timeline and budget.

This could involve keeping up with


the latest technologies and best
practices in software development,
incorporating user feedback to
improve the app, and
striving for personal and
PO 12 Life-long learning Yes professional growth.

PSO.No Graduate Attribute Attained Justification


PSO 1 To analyze, design and No The automation feature is under
develop solutions by development
applying the concepts of
Robotics for societal and
industrial needs.

PSO 2 To create innovative Yes The innovative idea has been


ideas and solutions for implemented in our project done
real time problems in during the internship.
Manufacturing sector
by adapting the
automation tools and
technologies.
THANK YOU

You might also like