您的位置:首页 > 编程语言 > Java开发

springMVC 学到新的知识点

2016-01-21 16:56 513 查看
以前做的各种springMVC的管理系统,都是仿照公司cms的写代码方式:

在Controller下的方法一般都写成:

public ModelAndView toSave(HttpServletRequest request){ // do somthing here};

今天重新学习springMVC时又认识到了新的知识:

实体对象:Product.java和ProductForm.java

两个JSP页面:ProductForm.jsp和ProductDetails.jsp

一个controller:ProductController.java

ProductForm.jsp:



做的是输入的操作。其中Add Product 执行ProductController中的saveProduct方法:

@RequestMapping(value="/product_save")

public String saveProduct(ProductForm productForm,Model model){

logger.info("saveProduct called");

Product product=new Product();

product.setName(productForm.getName());

product.setDescription(productForm.getDescription());

product.setPrice(productForm.getPrice());

model.addAttribute("product", product);

return "ProductDetails";

}

ProductDetails.jsp的显示结果是:



为什么会出现这样的结果呢? 我何时给ProductForm.java里存值了呢?

然后看到方法中的参数有ProductForm ,猜测是不是他自动获取的?

于是将方法中的红色部分代码做个替换:

product.setName(productForm.getDescription());

product.setDescription(productForm.getName());

输入同样的内容 ,得到结果



同时发现,ProductForm.jsp页面中,每个输入框的name属性分别为name、description、price;

猜测在save方法中ProductForm productForm 获得的就是这个name属性下 输入的值。

实属个人猜测,请指正!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: