通过get、set实现数据的转储

本文是我在自身学习过程中学到的业务逻辑,原意是实现类商城项目的收藏功能,业务逻辑是打算调用第一个mapper的查询、第二个mapper的添加,核心便是数据的转储。

因为是类商城项目因此定义为GoodsXXXX

控制层:

GoodsController

@Controller
public class GoodsController {
	@Autowired
	private GoodsService gService;

	@Autowired
	private ListService lService;

	// 将一个表中的数据拉取到另一个表当中
	@RequestMapping("/toinsertlist.do")
	public ModelAndView insertlist(Integer gid) { // 传入参数gid
		Goods goods = gService.selectGoodsByGid(gid); // 调用gService里面的selectGoodsByGid方法
														// 根据gid进行处理出来的数据封装到Goods类型的goods中
		Lists lists = new Lists(); // 新声明一个lists
		lists.setGid(goods.getGid()); // 通过get方法获取到goods中的属性值并转储到lists当中
		lists.setGoodsname(goods.getGoodsname());
		lists.setNumber(goods.getNumber());
		lists.setDate(goods.getDate());
		lists.setVolume(goods.getVolume());
		lists.setPrice(goods.getPrice());
		lists.setMenu(goods.getMenu());
		lists.setPicture(goods.getPicture());
		int i = lService.insertlist(lists); // 最后调用lService里的insertlist方法将lists存储到新的数据表当中。
		if (i > 0) {
			System.out.println("添加成功!"); // 通过int类型的返回值 i 来判断是否进行了该方法处理。
			return new ModelAndView("redirect:toglist.do");
		}

		System.out.println("添加失败!");
		return null;
	}

业务dao层:(通用mapper)

第一个mapper

package com.ssm.dao;

import com.ssm.entity.Goods;

import tk.mybatis.mapper.common.Mapper;

public interface GoodsMapper  extends Mapper<Goods>{

}

第二个mapper

package com.ssm.dao;

import com.ssm.entity.Lists;

import tk.mybatis.mapper.common.Mapper;

public interface ListMapper extends Mapper<Lists>{

}

实体类:

goods.java(使用了lombok,自动为属性生成构造器、getter/setter、equals、hashcode、toString方法)

@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name="goods")

public class Goods {

	
	@KeySql(useGeneratedKeys=true)	
	@Id
	private Integer gid;
	private String goodsname;
	private Integer number;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date date;
	private Integer volume;
	private Integer price;
	private String menu;
	private String picture;

}

Lists.java

@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name="list")

public class Lists {

	
	@KeySql(useGeneratedKeys=true)	
	@Id
	private Integer gid;
	private String goodsname;
	private Integer number;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date date;
	private Integer volume;
	private Integer price;
	private String menu;
	private String picture;

}

业务层:

GoodsService:

public interface GoodsService {
	
	Goods selectGoodsByGid(Integer gid); //根据Gid查

	}

ListService

public interface ListService {
	
	int insertlist(Lists lists);  //添加

}

实现类:

GoodServiceImpl:

@Service
public class GoodsServiceImpl implements GoodsService {
	
	@Autowired
	private GoodsMapper gMapper;
	
	//根据id查询
		@Override
		public Goods selectGoodsByGid(Integer gid) {
			return gMapper.selectByPrimaryKey(gid);
		}

ListServiceImpl:

@Service
public class ListServiceImpl implements ListService {

	@Autowired
	private ListMapper lMapper;

	@Transactional
	public int insertlist(Lists lists) {
		return lMapper.insertSelective(lists);
	}
}
 

欢迎各位带佬批评指正!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值