最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

為什么我的商品創(chuàng)建頁(yè)面就一直報(bào)錯(cuò),數(shù)據(jù)庫(kù)里面也沒(méi)插入任何數(shù)據(jù)。。

?/**
?*?@author?Mib_du
?*?@creat?2019-06-03-9:55
?*/
@Service
public?class?ItemServiceImpl?implements?ItemService?{

????//使用validator校驗(yàn)輸入?yún)?shù)
????@Autowired
????private?ValidatorImpl?validator;

????@Autowired
????private?ItemDOMapper?itemDOMapper;
????@Autowired
????private?ItemStockDOMapper?itemStockDOMapper;

????//itemmodel->itemdataobject
????private?ItemDO?itemDOconvertFromItemModel(ItemModel?itemModel)?{
????????if(itemModel?==?null)
????????????return?null;

????????ItemDO?itemDO?=?new?ItemDO();
????????BeanUtils.copyProperties(itemModel,itemDO);
????????itemDO.setPrice(itemModel.getPrice().doubleValue());

????????return?itemDO;
????}

????//itemstockmodel->itemdataobject
????private?ItemStockDO?convertFromItemModel(ItemModel?itemModel){
????????if(itemModel?==?null)
????????????return?null;
????????ItemStockDO?itemStockDO?=?new?ItemStockDO();
????????itemStockDO.setItemId(itemModel.getId());
????????itemStockDO.setStock(itemModel.getStock());
????????return?itemStockDO;
????}

????@Override
????@Transactional
????public?ItemModel?createItem(ItemModel?itemModel)?throws?BusinessException?{
????????//校驗(yàn)入?yún)?????????ValidationResult?result?=?validator.validate(itemModel);
????????if(result.isHasErrors()){
????????????throw?new?BusinessException(EnumBusinessError.PARAMETER_VALIDATION_ERROR,result.getErrorMsg());
????????}
????????//轉(zhuǎn)化itemmodel->dataobject
????????ItemDO?itemDO?=?this.itemDOconvertFromItemModel(itemModel);

????????//寫(xiě)入數(shù)據(jù)庫(kù)
????????itemDOMapper.insertSelective(itemDO);
????????itemModel.setId(itemDO.getId());
????????ItemStockDO?itemStockDO?=?this.convertFromItemModel(itemModel);
????????itemStockDOMapper.insertSelective(itemStockDO);
????????//返回創(chuàng)建完成的對(duì)象
????????return?this.getItemById(itemModel.getId());
????}

????@Override
????public?List<ItemModel>?listItem(Integer?id)?{
????????return?null;
????}

????@Override
????public?ItemModel?getItemById(Integer?id)?{
????????ItemDO?itemDO?=?itemDOMapper.selectByPrimaryKey(id);
????????if(itemDO?==?null)
????????????return?null;
????????//操作獲得庫(kù)存數(shù)量
????????ItemStockDO?itemStockDO?=?itemStockDOMapper.selectByItemId(itemDO.getId());

????????//將dataobject->model
????????ItemModel?itemModel?=?convertFromDataObject(itemDO,itemStockDO);
????????return?itemModel;
????}
????//dataobject?-->?model
????private?ItemModel?convertFromDataObject(ItemDO?itemDO?,?ItemStockDO?itemStockDO){
????????ItemModel?itemModel?=?new?ItemModel();
????????BeanUtils.copyProperties(itemDO,itemModel);
????????itemModel.setPrice(new?BigDecimal(itemDO.getPrice()));
????????itemModel.setStock(itemStockDO.getStock());
????????return?itemModel;
????}
}

執(zhí)行到

itemDOMapper.insertSelective(itemDO);

這行就會(huì)報(bào)錯(cuò),瀏覽器會(huì)返回下面這個(gè)錯(cuò)誤信息:

https://img1.sycdn.imooc.com//5cf53e1a0001640910700629.jpg

下面這個(gè)是報(bào)錯(cuò)的時(shí)候報(bào)錯(cuò)信息:

https://img1.sycdn.imooc.com//5cf53e880001327a18400754.jpg

我調(diào)試了一下,發(fā)現(xiàn)斷點(diǎn)之前的數(shù)據(jù)都是傳進(jìn)itemDO里了的,但是就是在執(zhí)行inSertselective(itemDO)這句話時(shí)就會(huì)報(bào)錯(cuò)了。

有哪位大佬能幫我解答下嗎 謝謝?。?/p>

正在回答

3 回答

媽喲我也是這個(gè)錯(cuò)誤,折騰了一晚上了,謝謝樓主

0 回復(fù) 有任何疑惑可以回復(fù)我~

哎....我加了個(gè)try-catch捕獲了一下這句話的異常,發(fā)現(xiàn)異常信息里輸出的是數(shù)據(jù)庫(kù)里的sales字段沒(méi)有初始值,打開(kāi)數(shù)據(jù)庫(kù)一看果然sales字段沒(méi)有設(shè)置默認(rèn)初始值為0,設(shè)置好后再運(yùn)行,OK,完美~? ??

真是個(gè)深刻的教訓(xùn)啊,不會(huì)debug找這個(gè)小錯(cuò)誤找了一晚上.....

3 回復(fù) 有任何疑惑可以回復(fù)我~
前端代碼:
?<!DOCTYPE?html>
<html>
<head>
	<meta?charset="utf-8">
	<link?rel="stylesheet"?type="text/css"?href="static/assets/global/plugins/bootstrap/css/bootstrap.min.css"/>
	<link?rel="stylesheet"?type="text/css"?href="static/assets/global/css/components.css"/>
	<link?rel="stylesheet"?type="text/css"?href="static/assets/admin/pages/css/login.css"/>
	<script?type="text/javascript"?src="static/assets/global/plugins/jquery-1.11.0.min.js"></script>
	<title></title>

</head>
<body?class="login">
	<div?class="content">
		<h3?class="form-title">創(chuàng)建商品</h3>
		<div?class="form-group">
			<label?class="control-label">商品名</label>
			<div>
				<input?class="form-control"?type="text"?placeholder="商品名"?id="title"?name="title"/>
			</div>
		</div>
		<div?class="form-group">
			<label?class="control-label">商品描述</label>
			<div>
				<input?class="form-control"?type="text"?placeholder="商品描述"?id="description"?name="description"/>
			</div>
		</div>
		<div?class="form-group">
			<label?class="control-label">價(jià)格</label>
			<div>
				<input?class="form-control"?type="text"?placeholder="價(jià)格"?id="price"?name="price"/>
			</div>
		</div>
		<div?class="form-group">
			<label?class="control-label">圖片</label>
			<div>
				<input?class="form-control"?type="text"?placeholder="圖片"?id="imgUrl"?name="imgUrl"/>
			</div>
		</div>
		<div?class="form-group">
			<label?class="control-label">庫(kù)存</label>
			<div>
				<input?class="form-control"?type="text"?placeholder="庫(kù)存"?id="stock"?name="stock"/>
			</div>
		
		<div?class="form-actions">
			<button?class="btn?blue"?id="create"?type="submit">
				創(chuàng)建商品
			</button>
		</div>
	</div>
</body>
<script>
	jQuery(document).ready(function(){
		//綁定otp的click事件用于向后端發(fā)送獲取手機(jī)號(hào)驗(yàn)證碼的請(qǐng)求
		$("#create").on("click",function(){
			var?title?=?$("#title").val();
			var?description?=?$("#description").val();
			var?imgUrl?=?$("#imgUrl").val();
			var?price?=?$("#price").val();
			var?stock?=?$("#stock").val();
			
			if(title==null?||?title==""){
				alert("商品名不能為空!");
				return?false;
			}
			if(description==null?||?description==""){
				alert("描述不能為空!");
				return?false;
			}
			if(imgUrl==null?||?imgUrl==""){
				alert("圖片不能為空!");
				return?false;
			}
			if(price==null?||?price==""){
				alert("價(jià)格不能為空!");
				return?false;
			}
			if(stock==null?||?stock==""){
				alert("庫(kù)存不能為空!");
				return?false;
			}
			
			$.ajax({
				type:"POST",
				contenttype:"application/x-www-form-urlencoded",
				url:"http://localhost:8090/item/create",
				data:{
					"title":title,
					"description":description,
					"imgUrl":imgUrl,
					"price":price,
					"stock":stock
				
				},
				xhrFields:{withCredentials:true},
				success:function(data){
					if(data.status?=="success"){
						alert("創(chuàng)建成功!");
					}else{
						alert("創(chuàng)建失?。≡蚴?+data.data.errMsg);
					}
				},
				error:function(data){
					alert("創(chuàng)建失??!原因?yàn)?+data.responseText);
				}
			});
			return?false;
		});
	});
</script>
</html>


1 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為什么我的商品創(chuàng)建頁(yè)面就一直報(bào)錯(cuò),數(shù)據(jù)庫(kù)里面也沒(méi)插入任何數(shù)據(jù)。。

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)