Final Intership Report
Final Intership Report
Submitted by
Bhargav Kodali
1JS17EC025
Internship Carried out
At
Campus Build Technologies,
Mallathahalli,
Bangalore-560056
External Viva
1.
2.
2
3
VISVESVARAYA TECHNOLOGICAL UNIVERSITY
UG programs Accredited by NBA —ECE, CSE, ISE, Mech, Civil, IEM, E&IE
JNANA SANGAMA, BELAGAVI- 590018
DECLARATION
out by me under the supervision and guidance of Mr. Austin Lewis, Campus Build Technologies,
Bengaluru and Dr.S.T.Veerabhadrappa , Professor, Dept. of E&C Engineering, JSSATE
submitted by me as a partial fulfillment of the requirement for the award of degree of Bachelor
of Engineering in Electronics and Communication Engineering of Visvesvaraya
Technological University, Belagavi during the academic year 2020-2021.I also declare that
the internship has not been submitted previously for the award of any degree or diploma, by
me, to any institution.
BHARGAV KODALI
[1JS17EC025]
4
ACKNOWLEDGEMENT
I would like to express my gratitude to Dr. Mrityunjaya V Latte, Principal, JSS Academy
of Technical Education for providing me excellent facilities and academic ambience which has helped me in
satisfactory completion of bachelor’s degree.
I express my truthful thanks to Dr. Siddesh G K, Head of the Department, Dept. of ECE, for
his valuable support.
I extend my sincere thanks and heartfelt gratitude to internship coordinator, Mr. Ravi
Kumar K.P, Dept. of ECE for providing me invaluable support.
I wish to express my heartfelt gratitude to my external guide Mr. Austin Lewis, Campus
Build Technologies, Bengaluru who was my mentor during the training period for his valuable guidance,
suggestions, and cheerful encouragement during the entire period of my Industrial Training.
I would like to thank all those people who supported in the part of this industrial training at
Campus Build Technologies while presenting this industrial training and also during preparation of this
report.
Finally, I take this opportunity to extend my earnest gratitude and respect to my parents,
Teaching and Non-Teaching staff and all my friends, who have directly or indirectly supported me during
the period of my industrial training programme.
BHARGAV KODALI
[1JS17EC025]
5
EXECUTIVE SUMMARY
6
7
VISION AND MISSION OF INSTITUTE
VISION:
“To be among the finest Institutions providing Engineering and Management
Education empowered with research, innovation and entrepreneurship”
MISSION1:
Strive towards Excellence in teaching–learning process and nurture personality
development.
MISSION2:
Encourage Research, Innovation & Entrepreneurship.
MISSION3:
Train to uphold highest ethical standards in all activities.
VISION:
“Enable the students to achieve academic excellence at par with premier
institutes and to meet the requirements of industry and research in the field of
Electronics and Communication Engineering.”
MISSION1:
Orient the students to meet global challenges in the field of Electronics and
Communication Engineering with state-of-the-art facilities and good teaching-
learning process.
MISSION2:
Impart knowledge in the emerging areas through Industry Institute-interaction,
seminars, workshops and conferences.
MISSION3:
Provide a strong foundation in core subjects to enable the students for
continuous learning and research.
MISSION4:
Facilitate students for soft skills and professional ethics.
8
DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING
JSS ACADEMY OF TECHNICAL EDUCATION
JSSATE Campus, Dr. Vishnuvardhana Road, Bangalore – 560 060
CO PO Mapping:
POs PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
COs
CO1 3 2 2 2 2 - 1 - - - - -
CO2 3 2 2 2 2 2 2 - 2 3 2 -
CO3 3 2 - - - - - -- 2 3 - -
CO4 3 - - - - - - 3 - - - 3
avg 3 2 2 2 2 2 1.5 3 2 3 2 3
9
CONTENTS
SI no Chapter Page No
2 Products 11
3.1 TypeScript 13
3.2 JavaScript 14
3.3 Java 14
4.2 Execution 17
4.2.1 Postman 17
5 Conclusion 24
6 Reference 25
CHAPTER 1
10
INTRODUCTION TO CAMPUS BUILD
TECHNOLOGIES
The best way to achieve the goal? Would it not be effective if experienced engineers trained
the students inside college campuses? Better yet, with the help of students, if these engineers were to
execute real-world projects — software’s that help the infrastructure of colleges, for example — wouldn’t
the students be exposed to the nuances of real-world engineering? Would it not save the small fortune that
companies spend on re-educating them?
12
CHAPTER 2
PRODUCTS
The company has come up with a product called campus.build which is basically a
platform designed specifically for engineering colleges that are looking to provide a comprehensive
eLearning infrastructure to their students. We help your students get a complete exposure to the workings
of the industry, acquire knowledge with the help of industry experts, and land their next dream job. They
have provide many courses such as HTML, JavaScript, CSS etc. and students can choose the course that
interests them the most. Here is glimpse
13
This helps the students to learn coding process as efficient and painless as possible
and avoid the things that made learning to code a nightmare for students learning to code on their
own. All the information necessary to learn this code is brought on this one platform which helps
the students to learn the code effortlessly and gain necessary knowledge in quick time.
Also upon completion of each topic points are avoided, so that when large number
of students gather on this platform it helps to build friendly competitiveness among them. This
type of competition ensures greater efficiency and help the students to get their dream job with
this platform when provided by colleges to their students.
14
CHAPTER 3
TECHNOLOGY USED IN campus. Build
A variety of technologies are used in building the product campus.build. Firstly, at the client
side the language used is Typescript and at the server side the languages used is Typescript, JavaScript and
Java.
3.1 TypeScript
TypeScript is a programming language developed and maintained by Microsoft. It is
a strict syntactical superset of JavaScript and adds optional static typing to the language. TypeScript is
designed for the development of large applications and trans compiles to JavaScript. As TypeScript is
a superset of JavaScript, existing JavaScript programs are also valid TypeScript programs.
TypeScript supports definition files that can contain type information of existing JavaScript
libraries, much like C++ header files can describe the structure of existing object files. This enables other
programs to use the values defined in the files as if they were statically typed TypeScript entities. There are
third-party header files for popular libraries such as jQuery, MongoDB, and D3.js. TypeScript headers for
the Node.js basic modules are also available, allowing development of Node.js programs within
TypeScript.
15
3.2 JavaScript
JavaScript often abbreviated as JS, is a programming language that conforms to
the ECMAScript specification. JavaScript is high-level, often just-in-time compiled, and multi-paradigm. It
has curly-bracket syntax, dynamic typing, prototype-based object-orientation, and first-class functions.
JavaScript engines were originally used only in web browsers, but they are now core
components of other software systems, most notably servers and a variety of applications.
3.3 Java
Java was originally developed by James Gosling at Sun Microsystems (which has since been
acquired by Oracle) and released in 1995 as a core component of Sun Microsystems' Java platform. The
original and reference implementation Java compilers, virtual machines, and class libraries were originally
released by Sun under proprietary licenses. As of May 2007, in compliance with the specifications of
the Java Community Process, Sun had relicensed most of its Java technologies under the GPL-2.0-
only license. Oracle offers its own Hotspot Java Virtual Machine, however the official reference
implementation is the OpenJDK JVM which is free open source software and used by most developers and
is the default JVM for almost all Linux distributions.
There were five primary goals in the creation of the Java language:
17
CHAPTER 4
WORK CARRIED OUT AT CAMPUS BUILD
TECHNOLOGIES
The software engineering field is vast, with different roles based on the complexity of the
application. Accordingly, engineering functions have different types of software engineers in their team.
Some of the most popular types of software engineer roles are:
1. Front-End Engineer
2. Back-End Engineer
5. DevOps Engineer
6. Security Engineer
At Campus build technologies ,I was able to learn the skills necessary to become a
backend developer. Backend Development is also known as server-side development. It is everything that
the users do not see and contains behind-the-scenes activities that occur when performing any action on a
website. It focuses primarily on databases, backend logic, APIs, and Servers.
I got to know that to become a backend developer one should have a knowledge of both the
backend framework and should know how a database(like MySQL) works. As a result I started learning
spring boot. Spring Boot is one of the top Java backend frameworks used for efficient web development.
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can
"just run". The features of Spring boot are
Provide production-ready features such as metrics, health checks, and externalized configuration
After gathering the knowledge of Spring Boot and JAVA, i went through the basics of
MySQL which is necessary to create a backend project. MySQL is an open-source relational database
management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael
Widenius's daughter, and "SQL", the abbreviation for Structured Query Language. A relational
database organizes data into one or more data tables in which data types may be related to each other; these
relations help structure the data. SQL is a language programmers use to create, modify and extract data
from the relational database, as well as control user access to the database. In addition to relational
databases and SQL, an RDBMS like MySQL works with an operating system to implement a relational
database in a computer's storage system, manages users, allows for network access and facilitates testing
database integrity and creation of backups.
4.2 Execution
After learning the basics of JAVA, MySQL, and Spring Boot , I was able to create a spring
application, which when run creates a table in MySQL database which can hold the information of a
student belonging to a particular department and also creates another table where we can store information
about the department. At the same time the Tomcat server is enable on a particular port on the local
machine. Once, the application is running we can supply the request with help of application called
Postman. Postman is a collaboration platform for API development. Postman's features simplify each step
of building an API and streamline collaboration so you can create better APIs—faster.
4.2.1 POSTMAN
The longest middle input field that looks something like a search bar is where the
URL that we want to GET or POST or DELETE,etc. is fed.
Just to the left of it, is a drop down button which has all the various HTTP
methods as options. If you want to POST to the URL that you have specified, select POST.
To the right of it is the params button. If you click on it, a new interface will
appear. Params are basically the data that we want to send to the server with our request. We
will use this params interface to POST to put app a new User.
To the left of this button is the Send button which is used in sending the request to
the server or the app in this case. Some advantages of using a postman are
1. Super easy API
2. Wide range of functionality like support for all possible HTTP methods, saving
progress, API to code conversion, changing environment of API development and
many others.
3. Helps to see the status codes, time taken for response and other performance
parameters.
4. Testing of APIs can be scheduled and automated.
20
5. There is an option for importing of existing work so that you don’t have to start from
scratch.
6. Too many choices can overwhelm a beginner.
7. It is not always true that an API developed in Postman will sure shot work in browser.
We use start.spring.io to create a “web” project. In the “Dependencies” dialog search for
and add the “web” dependency as shown in the screenshot. Hit the “Generate” button, download the
zip, and unpack it into a folder on your computer. Projects created by start.spring.io contain Spring
Boot, a framework that makes Spring ready to work inside your app, but without much code or
configuration required. Spring Boot is the quickest and most popular way to start Spring projects.
Upon creating the project open the Open up the project in your IDE and locate
the DemoApplication.java file in the src/main/java/com/example/demo folder. The file should be reflecting
the below image.
step of building an API and streamline collaboration so you can create better APIs—faster.
21
If we want any changes such change of port on which the application needs to be run or
creating a table we can specify it in application. Properties file at resources/ application. Properties.
Next I create a student and department controller file which is used to catch the request sent
by the user.
22
The @RestController annotation tells Spring that this code describes an endpoint that
should be made available over the web.
The @RequestMapping(value="/info/{departBranch}",method = RequestMethod.PUT)tells Spring to
use our deptChange() method to answer requests that get sent to
the http://localhost:8080/hello address. Finally, the @PathVariable annotation can be used to handle
template variables in the request URI mapping and set them as method parameters. Below is an
example
@GetMapping("/api/employees/{id}")
public String getEmployeesById(@PathVariable String id)
{ return "ID: " + id; }
Once the file is completed, we can run the Spring application and the output looks very
similar to this.
Next, after the application has started running we can see that the tables department and
student would we created in the MySQL database.
23
Now we can supply the HTTP requests with the help of post man application and retrieve
the information about the student and the department. We mainly use four HTTP methods here.
GET
POST
PUT
DELETE
The GET and the POST requests are the two most widely used.
GET
The GET method requests a representation of the specified resource. Requests
using GET should only retrieve data.
POST
PUT
The PUT method replaces all current representations of the target resource with the
request payload.
DELETE
The DELETE method deletes the specified resource.
After making particular request through the postman, the gui looks something like this.
24
25
CHAPTER 5
CONCLUSION
I’m really grateful for being provided with an opportunity to undergo internship
program at Campus Build Technologies. It enabled me to get a good idea on the working of
Software Web application, along with the development of hard technical skills and experience.
On the whole, this internship was a useful experience and provided an opportunity to meet
new people. Needless to say, the technical aspects of the work I’ve done are not flawless and
could be improved provided enough time.
26
CHAPTER 6
REFERENCES
https://campus.build/
https://spring.io/guides/gs/spring-boot/
https://learning.postman.com/docs/getting-started/introduction/
https//: www.wikipedia.org
https://dev.mysql.com/doc/refman/8.0/en/introduction.html
27