Filter interviews by
Reflection API in Java allows inspection and modification of runtime behavior of a program.
Reflection API provides classes like Class, Method, Field, Constructor, etc. to inspect and modify the behavior of a program at runtime.
It can be used to access private fields and methods of a class.
It can be used to create new instances of a class dynamically.
It can be used to invoke methods of a class dynamically.
It can be...
Various authentication methods can be used to secure REST API, including OAuth, JWT, Basic Authentication, and API Keys.
OAuth is a popular authentication method that allows users to grant access to third-party applications without sharing their credentials.
JWT (JSON Web Tokens) is a stateless authentication mechanism that uses a token to authenticate users.
Basic Authentication uses a username and password to authe...
Secure REST API using authentication, encryption, and authorization.
Use HTTPS protocol to encrypt data in transit
Implement authentication using tokens or OAuth2
Implement authorization using roles and permissions
Use input validation and output encoding to prevent injection attacks
Implement rate limiting to prevent DDoS attacks
Synchronized keyword is used to control access to shared resources in a multithreaded environment.
It ensures that only one thread can access the shared resource at a time.
It can be applied to methods or blocks of code.
It can cause performance issues if used excessively.
Example: synchronized void myMethod() { //code }
Example: synchronized(this) { //code }
What people are saying about Accenture
Exceptions in REST are handled using try-catch blocks and HTTP status codes.
Use try-catch blocks to catch exceptions thrown by the application
Map exceptions to appropriate HTTP status codes
Return error messages in the response body
Use global exception handlers to handle uncaught exceptions
Avoid returning sensitive information in error messages
getSession() retrieves the current session while load() method loads the object by its identifier.
getSession() method is used to retrieve the current session from the session factory.
load() method is used to load the object by its identifier.
getSession() method returns null if there is no current session.
load() method throws an exception if the object is not found in the database.
getSession() method is used for re...
XML validation can be done using XML Schema Definition (XSD) or Document Type Definition (DTD).
XSD is the preferred method for XML validation as it provides more features and is easier to use.
DTD is an older method and has limited features compared to XSD.
XML validation can be done using tools like XMLSpy, Notepad++, and online validators like W3C Markup Validation Service.
Validation can be done programmatically u...
Hibernate provides two levels of caching: first-level cache and second-level cache.
First-level cache is enabled by default and is associated with a Session object.
Second-level cache is optional and can be configured to use different caching providers like Ehcache, Hazelcast, etc.
Caching can improve application performance by reducing the number of database queries.
Caching can also cause data inconsistency issues i...
Program to find duplicate elements in an array list
Create a HashSet to store unique elements
Loop through the array list and add each element to the HashSet
If an element already exists in the HashSet, it is a duplicate
Add the duplicate element to another list or print it
PUT is used to update an existing resource, while POST is used to create a new resource.
PUT replaces the entire resource with the new data, while POST appends the new data to the existing resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request, while POST is not.
PUT requires the client to specify the resource ID in the request URL, while POST does not.
Example: ...
posted on 24 Mar 2023
I applied via Approached by Company and was interviewed in Feb 2023. There was 1 interview round.
There are two types of cloning in Java: Shallow and Deep cloning.
Shallow cloning creates a new object with the same field values as the original object, but the fields refer to the same objects as the original object.
Deep cloning creates a new object with the same field values as the original object, but the fields refer to new copies of the original objects.
Shallow cloning can be done using the clone() method, while d...
Idempotent methods in REST are HTTP methods that can be repeated multiple times without changing the result beyond the initial application.
Idempotent methods are safe to retry or repeat without causing unintended side effects.
GET, HEAD, PUT, and DELETE are idempotent methods.
POST is not idempotent because it creates a new resource with a new URI each time it is called.
Idempotency is important for ensuring the reliabili...
PUT is used to update an existing resource, while POST is used to create a new resource.
PUT replaces the entire resource with the new data, while POST appends the new data to the existing resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request, while POST is not.
PUT requires the client to specify the resource ID in the request URL, while POST does not.
Example: PUT /...
Hibernate provides two levels of caching: first-level cache and second-level cache.
First-level cache is enabled by default and is associated with a Session object.
Second-level cache is optional and can be configured to use different caching providers like Ehcache, Hazelcast, etc.
Caching can improve application performance by reducing the number of database queries.
Caching can also cause data inconsistency issues if not...
Hashcode and equals method are related in Java to ensure proper object comparison and hashing.
The hashcode method returns an integer value that represents the object's unique identifier.
The equals method compares two objects for equality and returns a boolean value.
If two objects are equal, their hashcodes must be equal as well.
If two objects have the same hashcode, it does not necessarily mean they are equal.
It is imp...
Program to find duplicate elements in an array list
Create a HashSet to store unique elements
Loop through the array list and add each element to the HashSet
If an element already exists in the HashSet, it is a duplicate
Add the duplicate element to another list or print it
Cascading in Hibernate refers to the ability to propagate the state of an entity to its associated entities.
Cascading is used to automatically persist, update, or delete associated entities when the state of the parent entity changes.
There are different types of cascading options available in Hibernate, such as ALL, PERSIST, MERGE, REMOVE, and REFRESH.
For example, if a parent entity has a collection of child entities a...
getSession() retrieves the current session while load() method loads the object by its identifier.
getSession() method is used to retrieve the current session from the session factory.
load() method is used to load the object by its identifier.
getSession() method returns null if there is no current session.
load() method throws an exception if the object is not found in the database.
getSession() method is used for read an...
HQL stands for Hibernate Query Language. It is an object-oriented query language used to retrieve data from a database.
HQL is similar to SQL but uses object-oriented concepts like inheritance, polymorphism, and association.
It is database independent and can be used with any database supported by Hibernate.
HQL queries are compiled to SQL queries at runtime, which makes it more efficient than using SQL directly.
It suppor...
XML validation can be done using XML Schema Definition (XSD) or Document Type Definition (DTD).
XSD is the preferred method for XML validation as it provides more features and is easier to use.
DTD is an older method and has limited features compared to XSD.
XML validation can be done using tools like XMLSpy, Notepad++, and online validators like W3C Markup Validation Service.
Validation can be done programmatically using ...
Methods of Object class in Java
toString() - returns a string representation of the object
equals(Object obj) - checks if two objects are equal
hashCode() - returns a hash code value for the object
getClass() - returns the runtime class of the object
wait() - causes the current thread to wait
notify() - wakes up a single thread that is waiting on the object
notifyAll() - wakes up all threads that are waiting on the object
Secure REST API using authentication, encryption, and authorization.
Use HTTPS protocol to encrypt data in transit
Implement authentication using tokens or OAuth2
Implement authorization using roles and permissions
Use input validation and output encoding to prevent injection attacks
Implement rate limiting to prevent DDoS attacks
Various authentication methods can be used to secure REST API, including OAuth, JWT, Basic Authentication, and API Keys.
OAuth is a popular authentication method that allows users to grant access to third-party applications without sharing their credentials.
JWT (JSON Web Tokens) is a stateless authentication mechanism that uses a token to authenticate users.
Basic Authentication uses a username and password to authentica...
Exceptions in REST are handled using try-catch blocks and HTTP status codes.
Use try-catch blocks to catch exceptions thrown by the application
Map exceptions to appropriate HTTP status codes
Return error messages in the response body
Use global exception handlers to handle uncaught exceptions
Avoid returning sensitive information in error messages
Arrays use a linear data structure while HashMap uses a key-value pair data structure.
Arrays are indexed collections of elements of the same data type.
HashMaps store key-value pairs and allow for fast retrieval of values based on their keys.
Arrays have a fixed size while HashMaps can dynamically resize.
Arrays are more efficient for simple data structures while HashMaps are better for complex data structures.
SQL injection is a type of cyber attack where malicious SQL statements are inserted into an entry field to manipulate the database.
SQL injection can be used to steal sensitive information, modify or delete data, or even take control of the entire database.
It can be prevented by using parameterized queries, input validation, and limiting user privileges.
Example: Entering ' OR 1=1;--' in a login form can bypass authentic...
Synchronized keyword is used to control access to shared resources in a multithreaded environment.
It ensures that only one thread can access the shared resource at a time.
It can be applied to methods or blocks of code.
It can cause performance issues if used excessively.
Example: synchronized void myMethod() { //code }
Example: synchronized(this) { //code }
String is immutable while StringBuffer is mutable.
StringBuffer is faster for concatenation operations.
StringBuffer has methods to modify the string while String does not.
StringBuffer is thread-safe while String is not.
Example: String str = "hello"; StringBuffer sb = new StringBuffer(str); sb.append(" world");
Example: String str = "hello"; str.concat(" world"); // returns a new string, original string is not modified.
Design patterns are reusable solutions to common software problems.
Design patterns help in creating flexible, reusable, and maintainable code.
Some popular design patterns in Java are Singleton, Factory, Observer, and Decorator.
Singleton pattern ensures that only one instance of a class is created.
Factory pattern provides an interface for creating objects in a superclass, but allows subclasses to alter the type of objec...
Reflection API in Java allows inspection and modification of runtime behavior of a program.
Reflection API provides classes like Class, Method, Field, Constructor, etc. to inspect and modify the behavior of a program at runtime.
It can be used to access private fields and methods of a class.
It can be used to create new instances of a class dynamically.
It can be used to invoke methods of a class dynamically.
It can be used...
I applied via Campus Placement and was interviewed before May 2021. There were 4 interview rounds.
VERBAL QUANT DI/LR and Picture based test
Fibonacci series can be easily implemented using loops in C++ or C.
Declare variables for first two numbers of the series
Use a loop to calculate and print the next number in the series
Repeat the loop until desired number of terms are printed
What people are saying about Accenture
I applied via Recruitment Consultant and was interviewed before Oct 2020. There was 1 interview round.
I applied via Naukri.com and was interviewed in Mar 2021. There was 1 interview round.
I am open to working nights and weekends if it aligns with project needs and team goals, ensuring productivity and collaboration.
Flexibility: I understand that software development can require off-hours work, especially during critical project phases.
Team Collaboration: Working nights or weekends can enhance communication with team members in different time zones.
Project Deadlines: I am willing to put in extra hours to...
I applied via LinkedIn and was interviewed in Apr 2021. There were 4 interview rounds.
Data structures are ways of organizing and storing data in a computer so that it can be accessed and used efficiently.
Data structures are used to manage and manipulate data.
They can be implemented using arrays, linked lists, trees, graphs, and other methods.
Examples include stacks, queues, hash tables, and binary search trees.
Databases are essential for storing and managing large amounts of data efficiently.
Databases allow for easy organization and retrieval of data
They provide data security and integrity
Databases enable scalability and performance optimization
Examples include MySQL, Oracle, MongoDB, and SQL Server
I applied via Naukri.com and was interviewed before May 2021. There were 3 interview rounds.
I applied via Company Website and was interviewed before Jan 2021. There were 5 interview rounds.
based on 1 interview experience
Difficulty level
Duration
Application Development Analyst
39.3k
salaries
| ₹4.8 L/yr - ₹11 L/yr |
Application Development - Senior Analyst
27.7k
salaries
| ₹8.3 L/yr - ₹16.1 L/yr |
Team Lead
26.6k
salaries
| ₹12.6 L/yr - ₹22.5 L/yr |
Senior Analyst
19.5k
salaries
| ₹9.1 L/yr - ₹15.7 L/yr |
Senior Software Engineer
18.5k
salaries
| ₹10.4 L/yr - ₹18 L/yr |
TCS
Cognizant
Capgemini
Infosys