question spring mvc @modelattribute methods, setting model attributes in controller @requestmapping method verses setting attribute individually @modelattribute methods, 1 considered better , more used?
from design point of view approach considered better following:
approach 1
@modelattribute("message") public string addmessage(@pathvariable("username") string username, modelmap model) { logger.info("addmessage - " + username); return "spring 3 mvc hello world - " + username; } @requestmapping(value="/welcome/{username}", method = requestmethod.get) public string printwelcome(@pathvariable("username") string username, modelmap model) { logger.info("printwelcome - " + username); return "hello"; } approach 2
@requestmapping(value="/welcome/{username}", method = requestmethod.get) public string printwelcome(@pathvariable("username") string username, modelmap model) { logger.info("printwelcome - " + username); model.addattribute("message", "spring 3 mvc hello world - " + username); return "hello"; }
one not better other. both serve purpose.
- method: if need model particular controller populated attributes method level
@modelattributemakes more sense. - parameter: use on parameter when want bind data request , add model implicitly.
to answer question on better approach
i approach 2 better since data specific handler.
Comments
Post a Comment