欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

程序员文章站 2022-07-01 23:23:03
...

zookeeper以及dubbo的安装看以及测试看博客分类有介绍。

功能实现:

一、查询商品(分页查看)

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

1 分页处理

****生成的代码是不支持分页处理的,如果想进行分页需要自己编写mapper,这样就失去****的意义了。为了提高开发效率可以使用mybatis的分页插件PageHelper。

 分页插件PageHelper(我这里是将一个demo导入本地仓库获得坐标)。


宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

 响应的json数据格式EasyUIResult

我这里定义返回数据格式的类

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决


二、插入(选择类目)

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

要求返回json结果为

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

创建一个pojo来描述tree的节点信息,包含三个属性id、text、state。放到e3-common工程

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

查询的表:

tb_item_cat

查询列:

Id、name、isparent

查询条件parentId


三、插入(图片上传)

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

 FastDFS架构(安装较为复杂)我用的培训班的镜像

FastDFS+nginx

参考:我的这篇https://blog.csdn.net/qq_39136928/article/details/80398773

四、 商品添加功能实现(苹果8宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

请求的url:/item/save

参数:表单的数据。可以使用pojo接收表单的数据,要求pojo的属性和input的name属性要一致。

使用TbItem对象接收表单的数据。

TbItem item,String desc

返回值:

Json数据。应该包含一个status的属性。

可以使用E3Result,放到e3-common中。

业务逻辑:

1、生成商品id

实现方案:

a)      Uuid,字符串,不推荐使用。

b)     数值类型,不重复。日期+时间+随机数20160402151333123123

c)      可以直接去毫秒值+随机数。可以使用。

d)     使用redis。Incr。推荐使用。

使用IDUtils生成商品id

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

2、补全TbItem对象的属性

3、向商品表插入数据

4、创建一个TbItemDesc对象(****生成)

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

5、补全TbItemDesc的属性

6、向商品描述表插入数据

7、E3Result.ok()      导入的工具类

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决
7.3.	Service层
参数:TbItem item,String desc
业务逻辑:略,参加上面
返回值:E3Result
@Override
	public E3Result addItem(TbItem item, String desc) {
		// 1、生成商品id
		long itemId = IDUtils.genItemId();
		// 2、补全TbItem对象的属性
		item.setId(itemId);
		//商品状态,1-正常,2-下架,3-删除
		item.setStatus((byte) 1);
		Date date = new Date();
		item.setCreated(date);
		item.setUpdated(date);
		// 3、向商品表插入数据
		itemMapper.insert(item);
		// 4、创建一个TbItemDesc对象
		TbItemDesc itemDesc = new TbItemDesc();
		// 5、补全TbItemDesc的属性
		itemDesc.setItemId(itemId);
		itemDesc.setItemDesc(desc);
		itemDesc.setCreated(date);
		itemDesc.setUpdated(date);
		// 6、向商品描述表插入数据
		itemDescMapper.insert(itemDesc);
		// 7、E3Result.ok()
		return E3Result.ok();
	}

发布服务

7.4.	表现层
引用服务

7.4.1.	Controller
请求的url:/item/save
参数:TbItem item,String desc
返回值:E3Result

@RequestMapping("/save")
	@ResponseBody
	public E3Result saveItem(TbItem item, String desc) {
		E3Result result = itemService.addItem(item, desc);
		return result;
	}
五、商品删除、上架下架

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

/*
	 * 商品删除功能
	 */

	@RequestMapping(value="/rest/item/delete", method=RequestMethod.POST)
	@ResponseBody
	public E3Result delete(long ids){
		E3Result result = itemService.deleteItem(ids);
		return result;
	}
	/*
	 * 商品下架功能
	 */

	@RequestMapping(value= "/rest/item/instock", method=RequestMethod.POST )
	@ResponseBody
	public E3Result updateStatusDown(long ids){
		E3Result result = itemService.updateStatusDown(ids);
		return result;
	}
	/*
	 * 商品上架功能
	 */

	@RequestMapping(value="/rest/item/reshelf", method=RequestMethod.POST )
	@ResponseBody
	public E3Result updateStatusUp(long ids){
		E3Result result = itemService.updateStatusUp(ids);
		return result;
	}

六、商品的修改(先数据回显后修改)

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决

前台jsp得修改,不然一直回显不了结果,而现在商品描述就是出不来,待我找到错误再更新

宜立方商城—后台实现(技术:FastDFS+nginx),问题:修改商品跳不出界面的解决


/*
	 * 商品编辑-查看描述
	 */
	
	@RequestMapping(value="/rest/item/query/item/desc")
	@ResponseBody
	public E3Result findTbItemDescById(long id){
		E3Result result = itemService.findTbItemDescById(id);
		return result;
	}
	
	/*
	 * 商品编辑-查看
	 */
	
	@RequestMapping(value="/rest/item/param/item/query")
	@ResponseBody
	public E3Result findTbItemById(long itemId){
		E3Result result = itemService.findTbItemById(itemId);
		return result;