Skip to content

Instantly share code, notes, and snippets.

@ereshzealous
Created January 16, 2020 08:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ereshzealous/b8267ae3c4f14032b0eaec17688bb281 to your computer and use it in GitHub Desktop.
Save ereshzealous/b8267ae3c4f14032b0eaec17688bb281 to your computer and use it in GitHub Desktop.
package com.minikube.sample.rest.controller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import java.util.concurrent.atomic.AtomicInteger;
/**
* Created By Gorantla, Eresh on 13/Jan/2020
**/
@Component
@Scope("prototype")
public class PrototypeBean {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired
SingletonBean singletonBean;
private static final AtomicInteger instanceCounter = new AtomicInteger(0);
public PrototypeBean() {
logger.info("Creating Prototype instance ............");
instanceCounter.incrementAndGet();
}
static int getInstanceCounter() {
return instanceCounter.get();
}
public void printData() {
logger.info("Singleton Bean => {}", singletonBean.hashCode());
logger.info("Prototype Bean => {}", this.hashCode());
logger.info("Bean counter => {}", getInstanceCounter());
logger.info(".................................................");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment