html에서 db 저장이 안됩니다.
조회수 1412회
***추가
insert를 하면 부분만 되고 null값으로 넘어오는 값들이 있습니다.
테이블 :
CREATE TABLE goods(
rnum INT AUTO_INCREMENT PRIMARY KEY,
deal_code VARCHAR(15) ,
category_code VARCHAR(15) ,
goods_name VARCHAR(30) ,
price INT,
sell_start DATE ,
sell_end DATE ,
goal_num INT,
content VARCHAR(4000),
summary VARCHAR(300) ,
sell_num INT ,
success_tf VARCHAR(15),
id VARCHAR(15),
image VARCHAR(4000));
Goods.xml :
<mapper namespace="kr.or.connect.mybatis.goods">
<resultMap type="Goods" id="goodsResult">
<result property="rnum" column="rnum"/>
<result property="dealCode" column="DEAL_CODE"/>
<result property="categoryCode" column="CATEGORY_CODE"/>
<result property="goodsName" column="GOODS_NAME"/>
<result property="price" column="PRICE"/>
<result property="sellStart" column="SELL_START"/>
<result property="sellEnd" column="SELL_END"/>
<result property="goalNum" column="GOAL_NUM"/>
<result property="content" column="CONTENT"/>
<result property="summary" column="SUMMARY"/>
<result property="sellNum" column="SELL_NUM"/>
<result property="successTf" column="SUCCESSTF"/>
<result property="id" column="ID"/>
<result property="image" column="IMAGE"/>
</resultMap>
<insert id="insert" parameterType="GOODS">
INSERT into goods values (#{rnum}, #{dealCode}, #{categoryCode}, #{goodsName}, #{price}, NOW(), #{sellEnd}, #{goalNum}, #{content}, #{summary}, #{sellNum}, #{image}, #{successTf}, #{id});
</insert>
dto(get, set도 만들었습니다.) :
private int rnum;
private String dealCode; // f.k
private String categoryCode; // f.k
private String goodsName;
private int price;
private Date sellStart;
private Date sellEnd;
private int goalNum;
private String content;
private String summary;
private int sellNum;
private String successTf;
private String id; // f.k
private String image;
dao :
@Repository("GoodsDao")
public class GoodsDaoImpl implements GoodsDao{
@Autowired
private SqlSessionTemplate sqlSession;
private String ns = "kr.or.connect.mybatis.goods";
@Override
public void insert(Goods goods) {
sqlSession.insert(ns+".insert", goods);
}
}
service :
@Override
public void insert(Goods goods) {
goodsDao.insert(goods);
}
controller :
@PostMapping(path="/portfolio")
public String create(@ModelAttribute Goods goods,
HttpServletRequest request) {
goodsService.insert(goods);
return "portfolio";
}
jsp:
input type="text" id="title" name="goodsName" placeholder="상품명을 입력하세요"
style="border-width:0px 0px 5px 0px; border-color : #8C8C8C;
width:650px; height: 45px; font-size: 20pt; color: #8C8C8C;"/>
textarea id="summary" name="summary" placeholder="간략한 소개를 입력해 주세요" style="height: 130px; width:430px;"></textarea></td>
textarea id="summernote" name="content"></textarea>
// 이렇게 3개는 입력이 됩니다.
input type="date" class="form-control" name="sellEnd">
input name = "goalNum" value='' id="goalNum" type="number" class="form-control" />
// 이렇게 2개는 insert가 안됩니다.
db도 date고 html에서도 date로 만들었으니 따로 변환해주는 과정이 필요없지 않나요??
입력이 안되는 값들을 text로도 변경해서 테스트해봤지만 text도 받아오지 못합니다.
아시는 분 댓 달아주세요ㅠ
설명이 부족하면 더 추가하겠습니다.
댓글 입력