A类:
/**
* @author zfss Email: zfss2012@gmail.com
* @version Date: 2012-3-19,Time: 下午09:30:23
*/
public class A{
public void rukou(){
onSubmit();
}
protected void onSubmit(){
}
}B类:
/**
* @author zfss Email: zfss2012@gmail.com
* @version Date: 2012-3-30,Time: 下午05:29:51
*/
public class B extends A{
protected void method(){
System.out.println("run success");
}
}
C类:
/**
* @author zfss Email: zfss2012@gmail.com
* @version Date: 2012-3-30,Time: 下午05:32:42
*/
public class C extends B{
@Override
protected void onSubmit(){
method();
}
public static void main(String[] args){
new C().rukou();
}
}
A类提供运行逻辑,B类提供功能大全,C类具体实现并有取舍的调用B类提供功能
今天遇到的问题:
1.(已解决)javax.el.PropertyNotFoundException:Property 'userId' not found on type com.shu.cms.domain.collection.ProjectEntity
jsp页面上el表达式用错了
以前一直没怎么注意spring mvc 的post 和get的区别。。今天好好看了一下
spring mvc 部分源码:
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {
// Form submission or new form to show?
if (isFormSubmission(request)) {
// Fetch form object from HTTP session, bind, validate, process submission.
try {
Object command = getCommand(request);
ServletRequestDataBinder binder = bindAndValidate(request, command);
BindException errors = new BindException(binder.getBindingResult());
return processFormSubmission(request, response, command, errors);
}
catch (HttpSessionRequiredException ex) {
// Cannot submit a session form if no form object is in the session.
if (logger.isDebugEnabled()) {
logger.debug("Invalid submit detected: " + ex.getMessage());
}
return handleInvalidSubmit(request, response);
}
}
else {
// New form to show: render form view.
return showNewForm(request, response);
}
}protected boolean isFormSubmission(HttpServletRequest request) {
return "POST".equals(request.getMethod());
}
本文深入探讨了Spring MVC框架处理POST和GET请求的方法,包括从HTTP session中获取、验证和处理表单数据的过程。重点分析了在不同请求类型下的处理流程,以及如何在表单提交时使用命令对象进行绑定、验证和处理。同时,文中还解决了一个常见的EL表达式错误,并解释了其原因。通过案例分析,读者可以更好地理解Spring MVC框架的工作原理。
5624

被折叠的 条评论
为什么被折叠?



