大家可以先看我之前的一篇博客:http://hw1287789687.iteye.com/blog/1947150
(1)提交表单时报错:
原因:
提交表单时,有个radio:
- <label>展示状态:</label>
- <input type="radio" value="on" name="status"/><span>开启</span>
- <input type="radio" value="off" name="status"/><span>关闭</span>
对应的实体类中News 中的status.实体类代码(省略getter,setter方法):
- package com.ct.entity;
- import java.io.Serializable;
- import java.sql.Clob;
- import java.sql.Timestamp;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.Table;
- /***
- *
- * @author huangwei
- * @since 2014年9月4日
- */
- @Entity
- @Table(name = "t_news")
- public class News implements Cloneable,Serializable{
- private int id;
- /***
- * 新闻标题
- */
- private String title;
- /***
- * 开始时间
- */
- private String startTime;
- /***
- * 结束时间
- */
- private String endTime;
- /***
- * 新闻详情
- */
- private String content;
- /***
- * 发布时间
- */
- private Timestamp releaseTime;
- /***
- * 开启或者关闭
- */
- private int status;
- /***
- * 是否置顶
- */
- private int stickTop;
- public News clone()throws CloneNotSupportedException{
- return (News)super.clone();
- }
- @Override
- public String toString() {
- return "News [title=" + title + ", startTime=" + startTime
- + ", endTime=" + endTime + ", content=" + content + ", status="
- + status + "]";
- }
- }
控制器中接收参数的方法:
- @RequestMapping(value = "/save")
- public String addSaveOsType(News news, Model model) {
- this.newsDao.add(news);
- return redirectViewAll;
- }
News的status的类型是int,但是提交的是"off"或"on",是字符串,所以报错.
即根本原因:提交的类型与实体类的类型不一致,一个是String,一个是int
之前的一篇博客:http://hw1287789687.iteye.com/blog/1947150
(2)
时间: 2024-10-01 09:10:30