How to use spring dependency injection in our web service -



How to use spring dependency injection in our web service -

we have web service trying reimplement using spring di.

here how works: on each request web service receives in controller, based off page name, instantiate handler list of tasks can handle request.

interface handler { list<task> gettasklist(); } class controller { //inject handler handler handler; processrequest(){ handler.gettasklist() -> execute } }

we have 5-6 such handler , want corresponding handler injected controller based on request pagename.

whats best way go this? how inject different handler on fly?

thanks

1- create handlers in configuration (or annotate service implementations):

@bean public handler handler1() { // homecoming handler 1 } @bean public handler handler2() { // homecoming handler 2 }

2a- inject applicationcontext controller. retrieve required service based on request mapping.

class controller { @autowired private applicationcontext context; @requestmapping(value = "/handler1") processrequest(){ handler handler = context.getbean("handler1"); handler.gettasklist() -> execute } @requestmapping(value = "/handler2") processrequest(){ handler handler = context.getbean("handler2"); handler.gettasklist() -> execute } }

2b- alternatively, create multiple controllers, , inject appropriate handler.

@requestmapping("/handler1") class controller1 { @autowired @qualifier("handler1") private handler handler; processrequest(){ handler.gettasklist() -> execute } } @requestmapping("/handler2") class controller2 { @autowired @qualifier("handler2") private handler handler; processrequest(){ handler.gettasklist() -> execute } }

spring dependency-injection

Comments

Popular posts from this blog

php - How to pass multiple values from url -

xslt - DocBook 5 to PDF transform failing with error: "fo:flow" is missing child elements. Required content model: marker* -

database - php search bar when I press submit with nothing in the search bar it shows all the data -