About us

Join us FREE!

Write and publish your ideas, thoughts, blogs or articles on any topic. You are at right place for guest blogging. Post tutorials for knowledge sharing. Upload respective images and tag your YouTube or Facebook videos with the articles and share it on various social media with simple steps. Join us Free to add your post.

When it comes to pursuing a career in medicine, choosing the right institution is paramount. India, with its rich tradition in healthcare and education, offers a plethora of options for aspiring medical professionals. In this article, we will delve into some of the top medical colleges in India, each renowned for its unique strengths and contributions to the field of medicine. Among them are NIMS Medical College Jaipur, DY Patil Medical College Pune, NIIMS Greater Noida, Rohilkhand Medical College Bareilly, and Bharati Vidyapeeth Medical College Pune. Let's explore what makes these institutions stand out in the realm of medical education.

NIMS Medical College, Jaipur

NIMS Medical College in Jaipur is a renowned institution known for its commitment to providing quality medical education. Established with the goal of producing competent and compassionate medical professionals, NIMS has consistently ranked among the top medical colleges in India. Here are some key highlights:

Infrastructure: NIMS boasts modern facilities, well-equipped laboratories, and cutting-edge technology, ensuring that students receive hands-on training and exposure to the latest advancements in medicine.

Experienced Faculty: The college prides itself on its experienced and dedicated faculty members who are experts in their respective fields. They play a crucial role in nurturing the talents of aspiring doctors.

Clinical Exposure: NIMS places a strong emphasis on clinical exposure, providing students with opportunities to work in affiliated hospitals and gain practical experience from early on in their education.

DY Patil Medical College, Pune

DY Patil Medical College in Pune is another prestigious institution that has earned a stellar reputation in the field of medical education. Here's what sets DY Patil apart:

Global Outreach: The college has collaborations with renowned international medical institutions, allowing students to access global perspectives and experiences in medicine.

Research Opportunities: DY Patil encourages research and innovation, providing students with platforms to explore and contribute to medical advancements.

Diverse Student Community: The college's diverse student body enhances cultural exchange and fosters a holistic learning environment.

NIIMS, Greater Noida

NIIMS Greater Noida is a rising star among medical colleges in India. Its commitment to excellence and innovation has been instrumental in its growth. Here are some of its standout features:

Advanced Curriculum: NIIMS offers a comprehensive and up-to-date curriculum that aligns with global medical standards, ensuring that students are well-prepared for the challenges of modern medicine.

Clinical Skills Development: The institution places a strong emphasis on honing clinical skills, providing students with ample opportunities to practice and refine their abilities.

Research and Innovation: NIIMS encourages students to engage in research, fostering a culture of innovation and inquiry.

Rohilkhand Medical College, Bareilly

Rohilkhand Medical College in Bareilly has a long-standing tradition of producing competent medical professionals. Its key attributes include:

Quality Education: The college's commitment to providing quality education has been a driving force behind its success, earning it recognition both nationally and internationally.

Clinical Facilities: Rohilkhand Medical College offers access to state-of-the-art clinical facilities, allowing students to gain practical experience and develop clinical acumen.

Bharati Vidyapeeth Medical College, Pune

Bharati Vidyapeeth Medical College in Pune is a renowned institution that has consistently ranked among the top medical colleges in India. Here's what makes it exceptional:

Experienced Faculty: The college prides itself on its distinguished faculty members who are experts in their respective fields, providing students with invaluable guidance and mentorship.

Research Opportunities: Bharati Vidyapeeth encourages research and innovation, nurturing a spirit of inquiry and intellectual growth among students.

Holistic Development: The institution focuses not only on academic excellence but also on the holistic development of students, preparing them for the challenges of the medical profession.


In the pursuit of a medical career, the choice of institution can make a significant difference. NIMS Medical College Jaipur, DY Patil Medical College Pune, NIIMS Greater Noida, Rohilkhand Medical College Bareilly, and Bharati Vidyapeeth Medical College Pune are shining examples of excellence in medical education in India. Each of these institutions offers a unique blend of infrastructure, faculty, clinical exposure, and research opportunities that can shape aspiring doctors into successful professionals who contribute meaningfully to the field of medicine. When considering your options for medical education, these colleges should certainly be on your radar.

Anish  posted in Education

Post updated on:  Sep 29, 2023 11:53:01 PM

Choosing the right destination for pursuing a medical degree is a crucial decision for aspiring doctors. With a myriad of options available worldwide, students often find themselves overwhelmed by choices. One destination that has been gaining popularity among international medical aspirants is Nepal. In this article, we will delve into the reasons why studying MBBS in Nepal can be a rewarding and life-changing experience.

Quality Medical Education

When considering where to pursue a medical degree, the quality of education is paramount. Nepal boasts several esteemed medical universities that offer top-notch medical education. The curriculum is designed to meet international standards, ensuring that students are well-prepared for a successful medical career. These institutions are recognized by renowned medical bodies and organizations worldwide.

Affordable Tuition Fees

One of the most attractive aspects of studying MBBS in Nepal is the affordability. Compared to many Western countries, the cost of education in Nepal is significantly lower. This cost-effectiveness does not compromise the quality of education, making Nepal an ideal destination for those seeking excellent medical training without a hefty price tag.

Diverse Culture and Scenic Beauty

Nepal is not only renowned for its medical education but also for its diverse culture and breathtaking landscapes. As a student, you will have the opportunity to immerse yourself in a rich cultural experience while surrounded by the stunning Himalayan mountains. The cultural exposure and scenic beauty add a unique dimension to your educational journey.

English-Medium Programs

Language barriers can be a significant concern when studying abroad. However, in Nepal, many medical universities offer English-medium programs. This means that international students can comfortably follow the coursework in English, eliminating language-related challenges and allowing for a smoother academic experience.

Internship Opportunities

Practical training is a crucial part of medical education. Nepal provides ample opportunities for internships and clinical rotations. As a student, you will have the chance to gain hands-on experience in a diverse healthcare system, which can be invaluable for your future career.

Global Recognition

Medical degrees obtained in Nepal are recognized worldwide. Graduates from Nepali medical universities have gone on to have successful careers in various countries, including the United States, the United Kingdom, Canada, and many others. This global recognition opens up a wide range of opportunities for international students.

Safe and Welcoming Environment

Nepal is known for its warm and welcoming people. As an international student, you can expect a safe and friendly environment throughout your stay. The hospitality and support from both the local community and the educational institutions make it a comfortable place to pursue your dreams.

Ease of Admission

The admission process for pursuing Study MBBS in Nepal is relatively straightforward. Universities often have transparent admission criteria, and many even conduct their own entrance exams. This simplicity in the application process eases the stress associated with applying to medical schools abroad.

Cultural Exchange and Networking

Studying MBBS in Nepal also provides an excellent opportunity for cultural exchange and networking. You?ll meet students from various corners of the world, fostering connections that can last a lifetime. This diverse environment enhances your personal growth and global perspective.

Gateway to Adventure

Nepal is not just about academics; it?s also an adventure enthusiast?s paradise. From trekking in the Himalayas to exploring ancient temples and vibrant markets, Nepal offers a unique blend of adventure and culture that can make your student years truly memorable.


Studying MBBS Study in Nepal is a choice that combines quality education, affordability, cultural richness, and international opportunities. The welcoming environment and the chance to explore the natural wonders of the Himalayas make it an attractive destination for aspiring medical professionals. So, if you?re considering pursuing a medical degree, don?t overlook the incredible opportunities that await you in Nepal. It could be the first step toward a fulfilling and successful medical career.

In conclusion, Nepal is not just a land of stunning landscapes but also a land of educational excellence, making it a compelling choice for those who aspire to become medical professionals. Consider the numerous advantages of studying MBBS in Nepal, and you may find that your medical journey takes a rewarding and enriching turn in this remarkable country.

Anish  posted in Education

Post updated on:  Sep 28, 2023 10:25:55 PM

Studying medicine is a lifelong aspiration for many students, and the pursuit of a medical degree is a significant milestone in one's academic journey. India has a strong reputation for medical education, but in recent years, an increasing number of Indian students are exploring the option of studying MBBS in Nepal. This article delves into the challenges and benefits of pursuing a medical degree in Nepal for Indian students, with a focus on MBBS in Nepal, study opportunities, and MBBS fees in Nepal.

Benefits of Studying MBBS in Nepal

Cost-effective Education:
One of the primary reasons why Indian students are considering Nepal for their MBBS studies is the cost-effectiveness. The tuition fees for MBBS in Nepal are relatively lower compared to private medical colleges in India. This affordability factor opens doors for students who might otherwise struggle to finance their medical education.

High-Quality Education Standards:
Nepali medical universities maintain a high standard of education, often on par with international norms. The medical curriculum is in English, making it accessible for Indian students. Additionally, the universities are recognized by the Medical Council of India (MCI), which ensures the quality and recognition of the degree.

Similar Culture and Environment:
Nepal shares cultural similarities with India, which makes Indian students feel at home. The cultural familiarity eases the process of adaptation to a new environment, making the transition smoother.

No Entrance Exams:
Unlike India, where medical entrance exams like NEET are highly competitive and stressful, most Nepali medical universities do not require Indian students to appear for these exams. This relieves a significant burden for aspiring doctors.

Easy Admission Process:
Getting admission to MBBS programs in Nepal is relatively straightforward. There is no need for complicated application procedures or hefty donations. Admissions are typically merit-based, considering the marks obtained in 10+2 or equivalent exams.

Challenges of Studying MBBS in Nepal

Language Barrier:
While the medium of instruction is English, some Indian students may still face a language barrier in their interactions with patients, locals, or during clinical rotations. Developing proficiency in the local language, Nepali, can be beneficial.

Climate and Geography:
Nepal's varied climate and hilly terrain might be challenging for students who come from regions with different climatic conditions. Adapting to Nepal's geographical diversity can take some time.

Cultural Differences:
Although there are cultural similarities, there are also differences in customs and traditions. Indian students should be prepared to respect and adapt to the local culture.

Limited Clinical Exposure:
Some Nepali medical colleges may have limited facilities for clinical exposure and practical training. Indian students should research their chosen institution to ensure it meets their clinical training expectations.

Recognition of Degrees in India:
While the Medical Council of India (MCI) recognizes degrees from Nepali medical universities, there have been occasional changes in recognition policies. Indian students should stay informed about the latest regulations to ensure the smooth transition to practice medicine in India.

MBBS Fees in Nepal

The cost of studying MBBS in Nepal varies depending on the university and the location. On average, the tuition fees for a full MBBS program in Nepal range from INR 20 lakhs to INR 50 lakhs. The fees are significantly lower than what one might pay in private medical colleges in India. Additionally, the cost of living in Nepal is relatively affordable, making it a financially viable option for Indian students.


Studying MBBS in Nepal offers several benefits to Indian students, including cost-effective education, high-quality standards, cultural familiarity, and simplified admission processes. However, there are challenges such as language barriers, adapting to a different climate and culture, and potential recognition issues in India. Indian students should carefully weigh these factors before deciding to pursue their medical education in Nepal. Ultimately, the decision to study MBBS in Nepal should align with one's personal goals, preferences, and circumstances.

Anish  posted in Education

Post updated on:  Sep 21, 2023 12:45:41 AM

Food Preservation
Food is a source of energy for all of us. Unhealthy or spoiled food is the major cause of diseases in humans. This is known as food poisoning. To prevent this the food needs to be preserved in a variety of ways .Food preservation is one of the methods to protect food from unwanted microbial growth. After the food is produced, we store and protect by covering the rice and curry with lids to keep away flies and other insects. By this, we are protecting it from any infection caused by them. This is a short-term condition. Food preservation, on the other hand, is done to preserve food for a longer time.

Food Preservation Methods
Food preservation started long back in ancient times. Cooling, freezing, fermentation, sun-drying, etc., are few age-old food preservation techniques. With the advent of technology, modern methods of food preservation were developed. Chemicals and other natural substances were used for preservation. These substances are known as preservatives.

Chemical Method
Salt and edible oils are two main preservatives which are used since ages to prevent microbial growth. This is why we add extra oil to pickles. Preservation by salt is known as salting. Salting helps to preserve fruits for a long term. Meats and fishes can also be preserved by salting.
Other synthetic preservatives include vinegar, sodium benzoate, sodium metabisulphite, etc.

Sugar is another common preservative used in jams and jellies. Sugar is a good moisture absorbent. By reducing moisture content, it restrains the microbial growth.

Heat and Cold Methods
Boiling and refrigeration prevent around 70 percent of microbial growth. Boiling kills the microorganisms that cannot tolerate extreme temperatures. Thus, it helps in food preservation.
Refrigerators have very low temperatures. Since microbes do not get optimum temperature they need for growth, their growth is inhibited. Pasteurization developed by Louis Pasteur is used until today to preserve milk.

Smoking prevents dehydration in fish and meat and thus prevents spoilage. The wood smoke contains a large number of anti-microbial compounds that slow the rancidification of animal fats.

The food contents are sealed in an airtight container at high temperatures. Meat, fish, fruits are preserved by canning.

This method is carried out to remove microbes from food. For eg., milk sterilization at 100C kills the microbes.

It is the process of removal of water from food. It is the simplest method and prevents food spoilage by removing water.

This is the process of freezing and dehydration of the frozen product under vacuum.

This method is also known as cold sterilization. The UV rays, X rays, gamma rays kill all the unwanted microbes present in food.

Nirupama  posted in Cooking

Post updated on:  Sep 7, 2023 11:09:41 PM

In recent years, China has emerged as a global hub for medical education, attracting students from all corners of the world. The country's commitment to providing high-quality education, facilities, and an international outlook has made it a top destination for aspiring medical professionals. This article explores the benefits and opportunities of choosing China for medical education, with a special focus on renowned institutions like Jilin Medical University China, Jiangsu University China, and China Medical University China.

Quality Education

When it comes to medical education, quality is paramount. China has made significant strides in this regard, with its medical universities consistently ranked among the world?s best. Jilin Medical University China, Jiangsu University China, and China Medical University China are prime examples of institutions that offer world-class education. They employ experienced faculty members, implement modern teaching methods, and provide rigorous training to ensure that students receive top-notch medical education.

Cutting-Edge Facilities

China's commitment to medical education is evident in its investment in state-of-the-art facilities. These universities boast well-equipped laboratories, libraries, research centers, and hospitals that provide students with hands-on experience. Jiangsu University China, for instance, is known for its advanced medical simulation labs, allowing students to practice medical procedures in a safe and controlled environment.

Diverse Student Community

Studying medicine in China offers the unique opportunity to interact with peers from diverse backgrounds. International students flock to China, creating a multicultural atmosphere conducive to global learning. This exposure to different cultures and perspectives enriches the educational experience and prepares students for a globalized healthcare industry.

Career Opportunities

Graduates from Jilin Medical University China, Jiangsu University China, and China Medical University China have a competitive edge in the global job market. China's growing influence in healthcare, coupled with the high-quality education these institutions provide, opens doors to promising career opportunities worldwide.


Choosing China for medical education at institutions like Jilin Medical University China, Jiangsu University China, and China Medical University China is a wise decision that offers numerous benefits and opportunities. The combination of quality education, cutting-edge facilities, diverse student communities, and affordable tuition fees makes China an attractive destination for aspiring medical professionals. With a global perspective, graduates from these institutions are well-prepared to excel in the ever-evolving field of healthcare.

Anish  posted in Education

Post updated on:  Sep 7, 2023 10:42:29 PM

Becoming an expert in Affiliate Marketing requires dedicated learning and practice, both online and offline. Just like mastering any skill, the key lies in consistent effort and a willingness to learn from mistakes.

The fundamental principle is simple. Practice regularly, and embrace the fact that you'll make mistakes along the way. As you encounter these mistakes, use them as valuable learning opportunities to correct and improve your approach.

Now, here's the specific approach for aspiring Affiliate Marketers:

Daily Practice:
To accelerate your growth as an Affiliate Marketer, you must engage in daily content practice. Writing regularly will hone your skills in crafting persuasive and engaging content that can effectively promote products and services. Through this process, you'll learn to tailor your message to your target audience and refine your communication style.

Embrace Feedback:
While writing daily is essential, it's equally crucial to seek feedback from experienced Affiliate Marketers. Their insights and critiques will guide you with valuable guidance on what works and what can be improved upon. Embrace it with an open mind, as this will enable you to fine-tune your writing and marketing strategies.

Different Learning Sources:
While daily practice and feedback are crucial, supplement your learning through various sources. Explore reputable courses, books, and articles on affiliate marketing, copywriting, and online marketing strategies. This broader understanding will give you a well-rounded perspective, enabling you to implement effective and innovative approaches.

Stay Updated with Industry Trends:
Affiliate marketing is a dynamic field, so staying informed about the latest industry trends and best practices is essential. Follow influential affiliate marketers, subscribe to industry newsletters, and attend webinars or conferences to keep yourself updated. Being in the loop will help you adapt your strategies to the changing landscape and maintain a competitive edge.

Test and Analyze:
Don't be afraid to experiment with different marketing tactics, strategies, and platforms. Conduct A/B tests to evaluate the performance of different copies, headlines, and calls-to-action. Analyze the results to understand what resonates with your audience and what needs improvement.

In summary, the shortcut to becoming an expert Affiliate Marketer lies in consistent, daily content practice, seeking feedback from experienced professionals, and continuously learning from diverse sources. Embrace mistakes as part of the learning process and use them as stepping stones to refine your skills. With dedication and a growth mindset, you'll be well on your way to mastering the art of affiliate marketing and achieving success in your ventures.

Post updated on:  Jul 20, 2023 10:47:16 AM

Use of Computers in housekeeping department
Computers  are  now being used  in many housekeeping departments  for room management , inventory control, linen management and  so on to varying extents. Many software  packages are now  available in India  that  provides specific applications  for housekeeping  operations. Computers can now be  linked to the telephone system in each guestroom. Computers  are  being used in housekeeping for
1. Rooms  management
2. Forecasting GRA requirement
3.  Housekeeping history and  GRA  performance
Rooms Management
Arrival and  departure as well as occupancy figures.
Occupancy forecast                                                                    
VIP  and other  special arrivals
Guest history  and other special  requests
Out of order record  giving reasons
Room change (When a guest moved from one room to another)  and also the room type change
Complimentary or  staff room
Forecasting GRA  Requirement 
Computers  may  be used  to  forecast  the  total  number of GRAs  needed each day in the future based on the  current in house occupancy and  staffing and the expected  arrivals /  departures  over  the  forthcoming period.  These  can forecast  staffing requisites  up to  365 days  in advance , given the right inputs .
Housekeeping history and  GRA  performance
It is possible  to  measure the performance of each GRA  by tracking the  estimated clean time  and the  actual  clean time  as well as the  variances.

Post updated on:  Apr 2, 2023 1:30:41 PM

Differences between String[] and ArrayList

String[] is an array of Strings while ArrayList is a generic class that takes different types of objects. Therefore we can only perform normal array operations with String[]. However, we can use additional, convenient utilities such as isEmpty(), iterator, etc with ArrayList since it also implements Collection Interface.

ArrayList has some neat methods, such as add(), remove(), and contains().

An array String[] cannot expand its size. You can initialize it once giving it a permanent size:

String[] myStringArray = new String[10]();
myStringArray[0] = "Test";
An ArrayList is variable in size. You can add and remove items dynamically:
ArrayList myStringArrayList = new ArrayList();
Furthermore, we can sort, clear, addall, and a lot more functions and can use while using an ArrayList. 

Post updated on:  Feb 20, 2023 1:18:22 AM

Group a list of objects by an attribute

This will add the employee object to the HashMap with locationID as key.
HashMap> hashMap = new HashMap>>();
Iterate over this code and add an employee to the HashMap:
if (!hashMap.containsKey(locationId)) {
    List list = new ArrayList >();
list.add(employee ); hashMap.put(locationId, list); } else { hashMap.get(locationId).add(employee ); }
If you want all the employee with particular location details then you can use this:
which will get you all the employee with the same the location ID.

Java 8 groupingBy Collector

You can just use the Collectors.groupingBy() bypassing the grouping logic as a function parameter and you will get the split list with the key parameter mapping. Note that using Optional is used to avoid unwanted NPE when the provided list is null

public static  Map> groupBy(List list, Function keyFunction) {
    return Optional.ofNullable(list)
Now you can groupBy anything with this. For the use case here in the question
MapEmployee>> map = groupBy(employee list, Employee::getLocation);

Post updated on:  Feb 20, 2023 1:17:35 AM

How to add double quotes automatically, converting a list of strings as comma-separated values?

We can perform it in two steps with StringUtils only,
List s = new ArrayList<>();

String step1 = StringUtils.join(s, "\", \"");// Join with ", "
String step2 = StringUtils.wrap(step1, "\"");// Wrap step1 with "

"ten", "twenty", "thirty"

Post updated on:  Feb 20, 2023 1:14:16 AM

When is the @JsonProperty property used and what is it used for?

Here's a good example. I use it to rename the variable because the JSON is coming from a .Net environment where properties start with an upper-case letter.

public class Parameter {
  public String name;
  public String value; 
This correctly parses to/from the JSON:

Post updated on:  Feb 20, 2023 1:13:27 AM

What is REST API error handling best practices?

I wouldn't return a 200 unless there really was nothing wrong with the request. From RFC2616, 200 means "the request has succeeded."
If the client's storage quota has been exceeded (for whatever reason), I'd return a 403 (Forbidden):

This tells the client that the request was OK, but that it failed (something a 200 doesn't do). This also gives you the opportunity to explain the problem (and its solution) in the response body.

What other specific error conditions?

The main choice is done you want to treat the HTTP status code as part of your REST API or not.

Both ways work fine. I agree that strictly speaking, one of the ideas of REST is that you should use the HTTP Status code as a part of your API (return 200 or 201 for a successful operation and a 4xx or 5xx depending on various error cases.) However, there is no REST police. You can do what you want. I have seen far more egregious non-REST APIs being called "RESTful."
At this point (August 2015) I do recommend that you use the HTTP Status code as part of your API. It is now much easier to see the return code when using frameworks than it was in the past. In particular, it is now easier to see the non-200 return case and the body of non-200 responses than it was in the past.

The HTTP Status code is part of your API
  1. You will need to carefully pick 4xx codes that fit your error conditions. You can include a rest, XML, or plaintext message as the payload that includes a sub-code and a descriptive comment.
  2. The clients will need to use a software framework that enables them to get to the HTTP-level status code. Usually doable, not always straightforward.
  3. The clients will have to distinguish between HTTP status codes that indicate a communications error and your own status codes that indicate an application-level issue.
  4. The HTTP Status code is NOT part of your API
    1. The HTTP status code will always be 200 if your app received the request and then responded (both success and error cases)
    2. All of your responses should include "envelope" or "header" information. Typically something like:
      envelope_ver: 1.0
      status:  # use any codes you like. Reserve a code for success. 
      msg: "ok" # A human string that reflects the code. Useful for debugging.
      data: ...  # The data of the response, if any.
    3. This method can be easier for clients since the status for the response is always in the same place (no sub-codes needed), no limits on the codes, and no need to fetch the HTTP-level status code.
Main issues:
  1. Be sure to include version numbers so you can later change the semantics of the api if needed.
  2. Document

Do remember that 5xx errors are server-side, aka the client cannot change anything to its request to make the request pass. If the client's quota is exceeded, that's definitely not a server error, so 5xx should be avoided.

This is extremely late to the party, but now, in the year 2013, we have a few media types to cover error handling in a common distributed (RESTful) fashion. See "vnd.error", application/vnd.error+json (https://github.com/blongden/vnd.error) and "Problem Details for HTTP APIs", application/problem+json (https://datatracker.ietf.org/doc/html/draft-nottingham-http-problem-05).

There are two sorts of errors. Application errors and HTTP errors. The HTTP errors are just to let your AJAX handler know that things went fine and should not be used for anything else.

5xx Server Error

500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
506 Variant Also Negotiates (RFC 2295 )
507 Insufficient Storage (WebDAV) (RFC 4918 )
509 Bandwidth Limit Exceeded (Apache bw/limited extension)
510 Not Extended (RFC 2774 )

2xx Success

200 OK
201 Created
202 Accepted
203 Non-Authoritative Information (since HTTP/1.1)
204 No Content
205 Reset Content
206 Partial Content
207 Multi-Status (WebDAV)
However, how you design your application errors is really up to you. Stack Overflow for example sends out an object with responsedata and message properties. The response I believe contains true or false to indicate if the operation was successful (usually for write operations). The data contains the payload (usually for read operations) and the message contains any additional metadata or useful messages (such as error messages when the response is false).

Agreed. The basic philosophy of REST is to use the web infrastructure. The HTTP Status codes are the messaging framework that allows parties to communicate with each other without increasing the HTTP payload. They are already established universal codes conveying the status of the response, and therefore, to be truly RESTful, the applications must use this framework to communicate the response status.
Sending an error response in an HTTP 200 envelope is misleading, and forces the client (API consumer) to parse the message, most likely in a non-standard, or proprietary way. This is also not efficient - you will force your clients to parse the HTTP payload every single time to understand the "real" response status. This increases processing, adds latency, and creates an environment for the client to make mistakes.

Don't forget the 5xx errors as well for application errors.
In this case what about 409 (Conflict)? This assumes that the user can fix the problem by deleting stored resources.
Otherwise, 507 (not entirely standard) may also work. I wouldn't use 200 unless you use 200 for errors in general.

If the client quota is exceeded it is a server error, avoid 5xx in this instance.

Post updated on:  Feb 20, 2023 1:12:58 AM

hardcode string vs @string in Java code - Android

Using multiple strings of the same value no matter the method (Strings.xml vs programmatically) doesn't seem to have any associated overhead. According to Oracle "All literal strings and string-valued constant expressions are interned" which means that the object is reused rather than re-created if you use it again.

That way you have a fixed place to alter all your strings within the project. Let us say you used the same string in 10 different locations in the code. What if you decide to alter it? Instead of searching for where all it has been used in the project you just change it once and changes are reflected everywhere in the project.

Well, strings.xml would have to be parsed, wouldn't it? Then I suppose hardcoded would be best for performance, though probably unnoticeable at runtime. People do choose to use it though in order to have all the strings in one spot in case there are plans to translate the app.

There are many benefits to setting the strings in a strings.xml file; in a nutshell, it allows you to use the same string in multiple locations, which is good if you somehow need to modify the string later. It also allows you to display the same text in different languages; hardcoding the string doesn't give you all those options.
BTW, you don't need to put every text in the strings.XML file; only the ones that might be used in multiple places in the application.
The general rule for placing strings in the strings.xml file are these:
  • Will it be used in multiple locations 
  • Will it be used in multiple languages 
  • Will it be dynamic or static 

Post updated on:  Feb 20, 2023 1:12:38 AM

how to replace "(double quotes) in a string with \" in java 

Example - 

str = str.replace("\"", "\\\"")

Avoid using replaceAll since it uses regex syntax in description of what to replace and how to replace, which means that \ will have to be escaped in string "\\" but also in regex \\ (needs to be written as "\\\\" string) which means that we would need to use.
str = str.replaceAll("\"", "\\\\\"");
str = str.replaceAll("\"", Matcher.quoteReplacement("\\\""))

How do I retrieve query parameters in a Spring Boot controller?

Use @RequestParam

@RequestMapping(value="user", method = RequestMethod.GET)
public @ResponseBody Item getItem(@RequestParam("data") String empId){

    Emp i = empDao.findOne(empId);              
String EmpName = i.getEmpName();
String dept= i.getDept(); return i; }

Storing a new object as the value of a hashmap?

HashMap mapper = new HashMap();
mapper.put("Satya", new Emp("Satya"));
... Emp value = mapper.get("Satya"); Integer memory = value.getMemory();

Post updated on:  Feb 20, 2023 1:12:06 AM

How do I add headers for requests from an API?

The sample code:

// Example POST method implementation:
async function postData(url = '', data = {}) {
  // Default options are marked with *
  const response = await fetch(url, {
    method: 'POST', // *GET, POST, PUT, DELETE, etc.
    mode: 'cors', // no-cors, *cors, same-origin
    cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
    credentials: 'same-origin', // include, *same-origin, omit
    headers: {
      'Content-Type': 'application/json'
    redirect: 'follow', // manual, *follow, error
    referrerPolicy: 'no-referrer', // no-referrer
    body: JSON.stringify(data) // body data type must match "Content-Type" header
  return await response.json(); // parses JSON response into native JavaScript objects

postData('https://example.com/answer', { answer: 08 })
  .then((data) => {
    console.log(data); // JSON data parsed by `response.json()` call

 implementation based on the code above:

fetch(url, {
        headers: {
            "User-Agent": "MyAppName/Version# (Language=Javascript; Platform: Linux)"
    }).then(function(resp) {
        return resp.json();

Post updated on:  Feb 20, 2023 1:11:29 AM

Java Variables - A variable is a container that holds the value while the Java program is executed. A variable is assigned with a data type. The variable is the name of a memory location. 

A variable is the name of a reserved area allocated in memory. In other words, it is the name of the memory location. It is a combination of "vary + able" which means 
its value can be changed.

Types of Variables

There are three types of variables in Java:

local variable
instance variable
static variable

1) 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.

2) Instance Variable

A variable declared inside the class but outside the body of the method, is called an instance variable. It is not declared as static.

It is called an instance variable because its value is instance-specific and is not shared among instances.

3) Static variable

A variable that is declared as static is called a static variable. It cannot be local. You can create a single copy of the static variable and share it among all 
the instances of the class. Memory allocation for static variables happens only once when the class is loaded in the memory.


public class A  
    static int x=10;    //static variable  
    void method()  
        int y=20;        //local variable    
    public static void main(String args[])  
        int data=100;//instance variable    

Java Variable Example: Add Two Numbers

public class Simple{    
public static void main(String[] args){    
int a=10;    
int b=10;    
int c=a+b;    

Post updated on:  Feb 20, 2023 1:05:44 AM

Operators in Java - is a symbol that is used to perform operations. For example: +, -, *, / etc.

There are many types of operators in Java which are given below:

Unary Operator,
Arithmetic Operator,
Shift Operator,
Relational Operator,
Bitwise Operator,
Logical Operator,
Ternary Operator and
Assignment Operator.
Java Operator Precedence

Operator Type      Category          Precedence   

Unary                        postfix           expr++ expr--
prefix                        ++expr --expr +expr -expr ~ !
Arithmetic                     multiplicative * / %
additive                    + -
Shift                         shift << >> >>>
Relational                 comparison < > <= >= instanceof
equality                         == !=
Bitwise                        bitwise AND &
bitwise                          exclusive OR ^
bitwise                          inclusive OR |
Logical                        logical AND &&
logical                            OR ||
Ternary                         ternary ? :
Assignment assignment = += -= *= /= %= &= ^= |= <<= >>= >>>=

Java Unary Operator

The Java unary operators require only one operand. Unary operators are used to perform various operations i.e.:

incrementing/decrementing a value by one
negating an expression
inverting the value of a boolean

Java Unary Operator Example: ++ and --

public class OperatorExample{  
public static void main(String args[]){  
int x=10;  
System.out.println(x++);//10 (11)  
System.out.println(x--);//12 (11)  

Java Unary Operator Example 2: ++ and --

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=10;  
System.out.println(a++ + ++a);//10+12=22  
System.out.println(b++ + b++);//10+11=21  

Java Unary Operator Example: ~ and !

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=-10;  
boolean c=true;  
boolean d=false;  
System.out.println(~a);//-11 (minus of total positive value which starts from 0)  
System.out.println(~b);//9 (positive of total minus, positive starts from 0)  
System.out.println(!c);//false (opposite of boolean value)  

Java Arithmetic Operators
Java arithmetic operators are used to perform addition, subtraction, multiplication, and division. They act as basic mathematical operations.

Java Arithmetic Operator Example

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  

Java Arithmetic Operator Example: Expression

public class OperatorExample{  
public static void main(String args[]){  
System.out.println(10*10/5+3-1*4/2);          //21

Java Left Shift Operator
The Java left shift operator << is used to shift all of the bits in a value to the left side of a specified number of times.

Java Left Shift Operator Example

public class OperatorExample{  
public static void main(String args[]){  

Java Right Shift Operator

The Java right shift operator >> is used to move the value of the left operand to right by the number of bits specified by the right operand.

Java Right Shift Operator Example

public OperatorExample{  
public static void main(String args[]){  
System.out.println(10>>2);//10/2^2=10/4=2          //2
System.out.println(20>>2);//20/2^2=20/4=5           //5
System.out.println(20>>3);//20/2^3=20/8=2           //2

Java Shift Operator Example: >> vs >>>

public class OperatorExample{  
public static void main(String args[]){  
    //For positive number, >> and >>> works same  
    System.out.println(20>>2);                                        //5
    System.out.println(20>>>2);                                        //5
    //For negative number, >>> changes parity bit (MSB) to 0  
    System.out.println(-20>>2);                                      //-5
    System.out.println(-20>>>2);                                       // 1073741819

Java AND Operator Example: Logical && and Bitwise &

The logical && operator doesn't check the second condition if the first condition is false. It checks the second condition only if the first one is true.

The bitwise & operator always checks both conditions whether first condition is true or false.

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  

Java AND Operator Example: Logical && vs Bitwise &

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  
System.out.println(a);//10 because second condition is not checked           //10
System.out.println(a);//11 because second condition is checked                 //11

Java OR Operator Example: Logical || and Bitwise |

The logical || operator doesn't check the second condition if the first condition is true. It checks the second condition only if the first one is false.

The bitwise | operator always checks both conditions whether first condition is true or false.

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=5;  
int c=20;  
//|| vs |  
System.out.println(a);//10 because second condition is not checked            //10
System.out.println(a);//11 because second condition is checked                //11

Java Ternary Operator

Java Ternary operator is used as one line replacement for if-then-else statements and is used a lot in Java programming. It is the only conditional operator which takes 
three operands.

Java Ternary Operator Example

public class OperatorExample{  
public static void main(String args[]){  
int a=2;  
int b=5;  
int min=(a
System.out.println(min);     //2

Java Assignment Operator

Java assignment operator is one of the most common operators. It is used to assign the value on its right to the operand on its left.

Java Assignment Operator Example

public class OperatorExample{  
public static void main(String args[]){  
int a=10;  
int b=20;  
a+=4;//a=a+4 (a=10+4)  
b-=4;//b=b-4 (b=20-4)  
System.out.println(a);     //14
System.out.println(b);       //16

Java Assignment Operator Example

public class OperatorExample{  
public static void main(String[] args){  
int a=10;  
System.out.println(a);     //13
System.out.println(a);      //9
System.out.println(a);      //18
System.out.println(a);      //9

Java Assignment Operator Example: Adding short

public class OperatorExample{  
public static void main(String args[]){  
short a=10;  
short b=10;  
//a+=b;//a=a+b internally so fine  
a=a+b;//Compile time error because 10+10=20 now int  
System.out.println(a);      // compile time error

After type cast:

public class OperatorExample{  
public static void main(String args[]){  
short a=10;  
short b=10;  
a=(short)(a+b);//20 which is int now converted to short  
System.out.println(a);      // 20

Post updated on:  Feb 20, 2023 1:05:12 AM

Java Keywords

Java keywords are also known as reserved words. Keywords are particular words that act as a key to a code. These are predefined words by Java so they cannot be 
used as a variable or object name or class name.

List of Java Keywords

A list of Java keywords or reserved words are given below:

abstract: Java abstract keyword is used to declare an abstract class. An abstract class can provide the implementation of the interface. It can have abstract and 
non-abstract methods.

boolean: Java boolean keyword is used to declare a variable as a boolean type. It can hold True and False values only.

break: Java break keyword is used to break the loop or switch statement. It breaks the current flow of the program at specified conditions.

byte: Java byte keyword is used to declare a variable that can hold 8-bit data values.

case: Java case keyword is used with the switch statements to mark blocks of text.

catch: Java catch keyword is used to catch the exceptions generated by try statements. It must be used after the try block only.

char: Java char keyword is used to declare a variable that can hold unsigned 16-bit Unicode characters.
class: Java class keyword is used to declare a class.
continue: Java continue keyword is used to continue the loop. It continues the current flow of the program and skips the remaining code at the specified condition.

default: Java default keyword is used to specify the default block of code in a switch statement.

do: Java do keyword is used in the control statement to declare a loop. It can iterate a part of the program several times.

double: Java double keyword is used to declare a variable that can hold a 64-bit floating-point number.

else: Java else keyword is used to indicate the alternative branches in an if statement.

enum: Java enum keyword is used to define a fixed set of constants. Enum constructors are always private or default.

extends: Java extends keyword is used to indicate that a class is derived from another class or interface.

final: Java final keyword is used to indicate that a variable holds a constant value. It is used with a variable. It is used to restrict the user from updating the 
value of the variable.

finally: Java finally keyword indicates a block of code in a try-catch structure. This block is always executed whether an exception is handled or not.

float: Java float keyword is used to declare a variable that can hold a 32-bit floating-point number.

for: Java for a keyword is used to start a for loop. It is used to execute a set of instructions/functions repeatedly when some condition becomes true. If the number 
of iteration is fixed, it is recommended to use for loop.

if: Java if keyword tests the condition. It executes the if block if the condition is true.

implements: Java implements keyword is used to implement an interface.

import: Java import keyword makes classes and interfaces available and accessible to the current source code.

instanceof: Java instanceof keyword is used to test whether the object is an instance of the specified class or implements an interface.

int: Java int keyword is used to declare a variable that can hold a 32-bit signed integer.

interface: Java interface keyword is used to declare an interface. It can have only abstract methods.

long: Java long keyword is used to declare a variable that can hold a 64-bit integer.

native: Java native keyword is used to specify that a method is implemented in native code using JNI (Java Native Interface).

new: Java new keyword is used to create new objects.

null: Java null keyword is used to indicate that a reference does not refer to anything. It removes the garbage value.

package: Java package keyword is used to declare a Java package that includes the classes.

private: Java private keyword is an access modifier. It is used to indicate that a method or variable may be accessed only in the class in which it is declared.

protected: Java protected keyword is an access modifier. It can be accessible within the package and outside the package but through inheritance only. It can't be 
applied with the class.

public: Java public keyword is an access modifier. It is used to indicate that an item is accessible anywhere. It has the widest scope among all other modifiers.

return: Java return keyword is used to return from a method when its execution is complete.

short: Java short keyword is used to declare a variable that can hold a 16-bit integer.

static: Java static keyword is used to indicate that a variable or method is a class method. The static keyword in Java is mainly used for memory management.

strictfp: Java strictfp is used to restrict the floating-point calculations to ensure portability.

super: Java super keyword is a reference variable that is used to refer to parent class objects. It can be used to invoke the immediate parent class method.

switch: The Java switch keyword contains a switch statement that executes code based on test value. The switch statement tests the equality of a variable against 
multiple values.

synchronized: Java synchronized keyword is used to specify the critical sections or methods in multithreaded code.

this: Java this keyword can be used to refer to the current object in a method or constructor.

throw: The Java throw keyword is used to explicitly throw an exception. The throw keyword is mainly used to throw custom exceptions. It is followed by an instance.

throws: The Java throws keyword is used to declare an exception. Checked exceptions can be propagated with throws.

transient: Java transient keyword is used in serialization. If you define any data member as transient, it will not be serialized.

try: Java try keyword is used to start a block of code that will be tested for exceptions. The try block must be followed by either catch or finally block.

void: Java void keyword is used to specify that a method does not have a return value.

volatile: Java volatile keyword is used to indicate that a variable may change asynchronously.

while: Java while keyword is used to start a while loop. This loop iterates a part of the program several times. If the number of iterations is not fixed, it is 
recommended using the while loop.

Post updated on:  Feb 20, 2023 1:04:53 AM

Features of Java

These are the most important features of the Java language is given below.

1.  Simple
2.  Object-Oriented
3.  Portable
4.  Platform independent
5.  Secured
6.  Robust
7.  Architecture Neutral
8.  Interpreted
9.  High Performance
10. Multithreaded
11. Distributed
12. Dynamic


According to Sun Microsystem, Java language is a simple programming language because:

Java is very easy to learn, and its syntax is simple, clean, and easy to understand. 
Java syntax is based on C++ (so easier for programmers to learn it after C++).
Java has removed many complicated and rarely-used features, for example, explicit pointers, operator overloading, etc.
There is no need to remove unreferenced objects because there is an Automatic Garbage Collection in Java.


Java is an object-oriented programming language. Everything in Java is an object. 

Object-oriented means we organize our software as a combination of different types of objects that incorporate both data and behavior.

Object-oriented programming (OOPs) is a methodology that simplifies software development and maintenance by providing some rules.

The basic concepts of OOPs are:



Java is portable because it facilitates you to carry the Java bytecode to any platform. It doesn't require any implementation.

Platform Independent

Java is platform independent

Java is platform-independent because it is different from other languages like C, C++, etc. which are compiled into platform-specific machines while Java is a 
write-once, run-anywhere language. A platform is the hardware or software environment in which a program runs.

There are two types of platforms software-based and hardware-based. Java provides a software-based platform.

The Java platform differs from most other platforms in the sense that it is a software-based platform that runs on top of other hardware-based platforms. 
It has two components:

Runtime Environment
API(Application Programming Interface)

Java code can be executed on multiple platforms, for example, Windows, Linux, Sun Solaris, Mac/OS, etc. Java code is compiled by the compiler and converted into 
bytecode. This bytecode is a platform-independent code because it can be run on multiple platforms, i.e., Write Once and Run Anywhere (WORA).


Java is best known for its security. With Java, we can develop virus-free systems. Java is secured because:

No explicit pointer

Java Programs run inside a virtual machine sandbox

Classloader: Classloader in Java is a part of the Java Runtime Environment (JRE) which is used to load Java classes into the Java Virtual Machine dynamically. 
It adds security by separating the package for the classes of the local file system from those that are imported from network sources.

Bytecode Verifier: It checks the code fragments for illegal code that can violate access rights to objects.

Security Manager: It determines what resources a class can access such as reading and writing to the local disk.

Java language provides these securities by default. Some security can also be provided by an application developer explicitly through SSL, JAAS, Cryptography, etc.


Java is robust because:
It uses strong memory management.
There is a lack of pointers that avoids security problems.
Java provides automatic garbage collection which runs on the Java Virtual Machine to get rid of objects which are not being used by a Java application anymore.
There are exception-handling and the type checking mechanism in Java. All these points make Java robust.


Java is architecture neutral because there are no implementation-dependent features, for example, the size of primitive types is fixed.

In C programming, the int data type occupies 2 bytes of memory for 32-bit architecture and 4 bytes of memory for 64-bit architecture. However, it occupies 4 bytes 
of memory for both 32 and 64-bit architectures in Java.


Java is faster than other traditional interpreted programming languages because Java bytecode is "close" to native code. It is still a little bit slower 
than a compiled language (e.g., C++). 

Java is an interpreted language which is why it is slower than compiled languages, e.g., C, C++, etc.


Java is distributed because it facilitates users to create distributed applications in Java. RMI and EJB are used for creating distributed applications. 

This feature of Java makes us able to access files by calling the methods from any machine on the internet.


A thread is like a separate program, executing concurrently. We can write Java programs that deal with many tasks at once by defining multiple threads. 

The main advantage of multi-threading is that it doesn't occupy memory for each thread. It shares a common memory area. Threads are important for multi-media, Web applications, etc.


Java is a dynamic language. It supports the dynamic loading of classes. It means classes are loaded on demand. It also supports functions from its native 
languages, i.e., C and C++.

Post updated on:  Feb 20, 2023 1:04:00 AM

Data Types in Java

Data types specify the different sizes and values that can be stored in the variable. There are two types of data types in Java: primitive and non-primitive.

Primitive data types: The primitive data types include boolean, char, byte, short, int, long, float, and double.

Non-primitive data types: The non-primitive data types include Classes, Interfaces, and Arrays.

Java Primitive Data Type - In Java language, primitive data types are the building blocks of data manipulation. These are the most basic data types available in Java language.

There are 8 types of primitive data types:

Boolean data type
byte data type
char data type
short data type
int data type
long data type
float data type
double data type

Data Type Default size
boolean 1 bit
char 2 byte
byte 1 byte
short 2 byte
int         4 byte
long 8 byte
float 4 byte
double 8 byte

Boolean Data Type
The Boolean data type is used to store only two possible values: true and false. This data type is used for simple flags that track true/false conditions.

The Boolean data type specifies one bit of information, but its "size" can't be defined precisely.


Boolean one = false  

Byte Data Type
The byte data type is an example of a primitive data type. It is an 8-bit signed two's complement integer. Its value range lies between -128 to 127 (inclusive). Its minimum value is -128 and the maximum value is 127. Its default value is 0.

The byte data type is used to save memory in large arrays where memory savings is most required. It saves space because a byte is 4 times smaller than an integer. It can also be used in place of the "int" data type.


byte a = 10, byte b = -20  

Short Data Type
The short data type is a 16-bit signed two's complement integer. Its value range lies between -32,768 to 32,767 (inclusive). Its minimum value is -32,768 and its maximum value is 32,767. Its default value is 0.

The short data type can also be used to save memory just like the byte data type. A short data type is 2 times smaller than an integer.


short s = 10000, short r = -5000  

Int Data Type
The int data type is a 32-bit signed two's complement integer. Its value range lies between - 2,147,483,648 (-2^31) to 2,147,483,647 (2^31 -1) (inclusive). Its minimum value is - 2,147,483,648and maximum value is 2,147,483,647. Its default value is 0.

The int data type is generally used as a default data type for integral values unless there is no problem with memory.

int a = 100000, int b = -200000  

Long Data Type
The long data type is a 64-bit two's complement integer. Its value-range lies between -9,223,372,036,854,775,808(-2^63) to 9,223,372,036,854,775,807(2^63 -1)(inclusive). Its minimum value is - 9,223,372,036,854,775,808and maximum value is 9,223,372,036,854,775,807. Its default value is 0. The long data type is used when you need a range of values more than those provided by int.

long a = 100000L, long b = -200000L  

Float Data Type
The float data type is a single-precision 32-bit IEEE 754 floating point. Its value range is unlimited. It is recommended to use a float (instead of a double) if you need to save memory in large arrays of floating point numbers. The float data type should never be used for precise values, such as currency. Its default value is 0.0F.

float f1 = 234.5f  

Double Data Type
The double data type is a double-precision 64-bit IEEE 754 floating point. Its value range is unlimited. The double data type is generally used for decimal values just like float. The double data type also should never be used for precise values, such as currency. Its default value is 0.0d.

double d1 = 12.3  

Char Data Type
The char data type is a single 16-bit Unicode character. Its value range lies between '\u0000' (or 0) to '\uffff' (or 65,535 inclusive). The char data type is used to store characters.

char letterA = 'A'  

Post updated on:  Feb 20, 2023 1:03:19 AM

Back to top