当前位置: 首页 > news >正文

如何在卖家淘宝网站做产品链接东莞本地生活网

如何在卖家淘宝网站做产品链接,东莞本地生活网,南京微信网站建设,南京网络科技公司目录 一、概念 二、一对一 1、配置generatorConfig.xml 2、Vo包的编写 3、xml的sql编写 4、编写对应接口及实现类 5、测试 三、一对多 1、Vo包类的编写 2、xml的sql编写 3、编写对应接口及实现类 4、测试 四、多对多 1、Vo类 2、xml的sql配置 3、接口及接口实现…目录 一、概念 二、一对一 1、配置generatorConfig.xml 2、Vo包的编写 3、xml的sql编写 4、编写对应接口及实现类 5、测试 三、一对多 1、Vo包类的编写 2、xml的sql编写 3、编写对应接口及实现类 4、测试 四、多对多 1、Vo类 2、xml的sql配置 3、接口及接口实现类 4、测试 一、概念 1、MyBatis中表之间的关系是如何映射的处理的 resultType使用多表查询我们经常会resultTypejava.utils.Map ,我们不推荐这样写但是这样写对自己比较有利。 好处resultType 是直接将查询结果映射到 Java 对象可以使用简单的类型如 int、String或复杂的自定义类型。它的好处是简单直观易于使用。 弊端对于复杂的关系映射resultType 可能会变得冗长并且无法处理一对多或多对多的关系映射。 resultMapresultMap 允许我们定义复杂的映射规则将结果集中的多个字段映射到一个对象中。 好处可以处理复杂的关系映射支持一对多或多对多的关系映射。我们可以在 resultMap 中定义映射规则指定字段与属性间的映射关系并通过嵌套 resultMap 处理表之间的关系。 弊端相对于 resultTyperesultMap 的配置较为繁琐。 二、一对一 1、配置generatorConfig.xml 在我们的配置文件里面配置我们需要的几个表自动生成所需文件 table schema tableNamet_hibernate_book domainObjectNameHBookenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse/tabletable schema tableNamet_hibernate_book_category domainObjectNameHBookCategoryenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse/tabletable schema tableNamet_hibernate_category domainObjectNameHCategoryenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse/tabletable schema tableNamet_hibernate_order domainObjectNameHOrderenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse/tabletable schema tableNamet_hibernate_order_item domainObjectNameHOrderItemenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse/table 然后生成我们想要的model和xml映射文件 2、Vo包的编写 当然我们要先建立这个包里面的类才能更好的下一步。 我们现在示例的是一对一的所以根据前面以此类推我们建立一个HOrderItemVo类 package com.liwen.vo;import com.liwen.model.HOrder; import com.liwen.model.HOrderItem;/*** 软件包名 com.liwen.vo* 用户 liwen* create 2023-08-26 下午4:37* 注释说明*/ public class HOrderItemVo extends HOrderItem {private HOrder hOrder;public HOrder gethOrder() {return hOrder;}public void sethOrder(HOrder hOrder) {this.hOrder hOrder;} } 3、xml的sql编写 在我们的里面添加一个sql的方法编写 resultMap idHOrderItemVoMap typecom.liwen.vo.HOrderItemVoresult columnorder_itemId propertyorderItemId/result columnproduct_id propertyproductId/result columnquantity propertyquantity/result columnoid propertyoid/!--association是一对一的关系--association propertyhOrder javaTypecom.liwen.model.HOrderresult columnorder_id propertyorderId/result columnorder_no propertyorderNo//association/resultMapselect idselectByHOrderId resultMapHOrderItemVoMap parameterTypejava.lang.Integerselect *from t_hibernate_order o,t_hibernate_order_item oiwhere o.order_id oi.oidand oi.order_item_id #{oiid}/select 4、编写对应接口及实现类 在上面我们已经写好了sql我们生成对应的接口及接口实现方法。 在我们生成的HOrderItemMapper 接口里面编写 package com.liwen.mapper;import com.liwen.model.HOrderItem; import com.liwen.vo.HOrderItemVo; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository;Repository public interface HOrderItemMapper {int deleteByPrimaryKey(Integer orderItemId);int insert(HOrderItem record);int insertSelective(HOrderItem record);HOrderItem selectByPrimaryKey(Integer orderItemId);int updateByPrimaryKeySelective(HOrderItem record);int updateByPrimaryKey(HOrderItem record);HOrderItemVo selectByHOrderId(Param(oiid) Integer oiid); } 创建一个biz的包里面编写一个HOrderItemBiz接口类并且编写接口方法 package com.liwen.biz;import com.liwen.vo.HOrderItemVo;/*** 软件包名 com.liwen.biz* 用户 liwen* create 2023-08-26 下午4:48* 注释说明*/ public interface HOrderItemBiz {HOrderItemVo selectByHOrderId(Integer oiid); } 在这个biz里面新建一个impl包里面创建一个HOrderItemBizImpl 接口实现类继承HOrderItemBiz package com.liwen.biz.impl;import com.liwen.biz.HOrderItemBiz; import com.liwen.mapper.HOrderItemMapper; import com.liwen.vo.HOrderItemVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-26 下午4:48* 注释说明*/ Service public class HOrderItemBizImpl implements HOrderItemBiz {Autowiredprivate HOrderItemMapper hOrderItemMapper;Overridepublic HOrderItemVo selectByHOrderId(Integer oiid) {return hOrderItemMapper.selectByHOrderId(oiid);} } 5、测试 package com.liwen.biz.impl;import com.liwen.biz.HOrderItemBiz; import com.liwen.vo.HOrderItemVo; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-26 下午4:58* 注释说明*/ RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {classpath:spring-context.xml}) public class HOrderItemBizImplTest {Autowiredprivate HOrderItemBiz hOrderItemBiz;Testpublic void selectByHOrderId() {HOrderItemVo hOrderItemVo hOrderItemBiz.selectByHOrderId(27);System.out.println(hOrderItemVo);} } 三、一对多 1、Vo包类的编写 因为我们是一对多的所以我们再编写vo类的时候里面是使用list集合 package com.liwen.vo;import com.liwen.model.HOrder; import com.liwen.model.HOrderItem;import java.util.ArrayList; import java.util.List;/*** 软件包名 com.liwen.vo* 用户 liwen* create 2023-08-26 下午3:55* 注释说明*/ public class HOrderVo extends HOrder {// 一个订单存在多个订单项private ListHOrderItem hOrderItems new ArrayList();public ListHOrderItem gethOrderItems() {return hOrderItems;}public void sethOrderItems(ListHOrderItem hOrderItems) {this.hOrderItems hOrderItems;} } 2、xml的sql编写 在原本的基础的sql上我们增加一个一对多的sql !-- resultTypecom.liwen.vo.HOrderVo 在多表的字段是无法使用的--!-- 我们要写一个resultMap映射--resultMap idHOrderVoMap typecom.liwen.vo.HOrderVo!-- 每个订单对应的属性column数据库属性名property实体类属性名 --result columnorder_id propertyorderId/result columnorder_no propertyorderNo/!-- 我们设置hOrderItems数组里面的属性 --!-- collection是一对多的关系 --collection propertyhOrderItems ofTypecom.liwen.model.HOrderItemresult columnorder_itemId propertyorderItemId/result columnproduct_id propertyproductId/result columnquantity propertyquantity/result columnoid propertyoid//collection/resultMapselect idbyOid resultMapHOrderVoMap parameterTypejava.lang.Integerselect *from t_hibernate_order o,t_hibernate_order_item oiwhere o.order_id oi.oidand o.order_id #{oid}/select 3、编写对应接口及实现类 根据sql生成的对应的HOrderMapper 类里面生成已经编写好的sql方法 package com.liwen.mapper;import com.liwen.model.HOrder; import com.liwen.vo.HOrderVo; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository;Repository public interface HOrderMapper {int deleteByPrimaryKey(Integer orderId);int insert(HOrder record);int insertSelective(HOrder record);HOrder selectByPrimaryKey(Integer orderId);int updateByPrimaryKeySelective(HOrder record);int updateByPrimaryKey(HOrder record);//HOrderVo byOid(Param(oid) Integer oid); } 在biz包里面新建一个接口HOrderBiz  package com.liwen.biz;import com.liwen.vo.HOrderVo;/*** 软件包名 com.liwen.biz* 用户 liwen* create 2023-08-26 下午4:15* 注释说明*/ public interface HOrderBiz {HOrderVo byOid(Integer oid); } 在biz包里面的impl里面新建一个Java类实现HOrderBiz 接口 package com.liwen.biz.impl;import com.liwen.biz.HOrderBiz; import com.liwen.mapper.HOrderMapper; import com.liwen.vo.HOrderVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-26 下午4:16* 注释说明*/ Service public class HOrderBizImpl implements HOrderBiz {Autowiredprivate HOrderMapper hOrderMapper;Overridepublic HOrderVo byOid(Integer oid) {return hOrderMapper.byOid(oid);} } 4、测试 package com.liwen.biz.impl;import com.liwen.biz.HOrderBiz; import com.liwen.vo.HOrderVo; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import static org.junit.Assert.*;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-26 下午4:22* 注释说明*/ RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {classpath:spring-context.xml}) public class HOrderBizImplTest {Autowiredprivate HOrderBiz hOrderBiz;Testpublic void byOid() {HOrderVo hOrderVo hOrderBiz.byOid(7);System.out.println(hOrderVo);}} 四、多对多 1、Vo类 package com.liwen.vo;import com.liwen.model.HBook; import com.liwen.model.HCategory;import java.util.List;/*** 软件包名 com.liwen.vo* 用户 liwen* create 2023-08-27 下午10:29* 注释说明*/ public class HBookVo extends HBook {private ListHCategory hCategoryList;public ListHCategory gethCategoryList() {return hCategoryList;}public void sethCategoryList(ListHCategory hCategoryList) {this.hCategoryList hCategoryList;} } package com.liwen.vo;import com.liwen.model.HBook; import com.liwen.model.HCategory;import java.util.ArrayList; import java.util.List;/*** 软件包名 com.liwen.vo* 用户 liwen* create 2023-08-27 下午11:03* 注释说明*/ public class HCategoryVo extends HCategory {private ListHBook hBooks new ArrayList();public ListHBook gethBooks() {return hBooks;}public void sethBooks(ListHBook hBooks) {this.hBooks hBooks;} } 2、xml的sql配置 分别在不同的xml配置文件里面配置 resultMap idHBookVo typecom.liwen.vo.HBookVoresult columnbook_id propertybookId/result columnbook_name propertybookName/result columnprice propertyprice/collection propertyhCategoryList ofTypecom.liwen.model.HCategoryresult columncategory_id propertycategoryId/result columncategory_name propertycategoryName//collection/resultMap!-- 根据书籍id查询出书籍信息及所属类别--select idselectByBId resultMapHBookVo parameterTypejava.lang.Integerselect *from t_hibernate_book b,t_hibernate_book_category bc,t_hibernate_category cwhere b.book_id bc.bidand bc.cid c.category_idand b.book_id #{bid}/select resultMap idHCategoryVo typecom.liwen.vo.HCategoryVoresult columncategory_id propertycategoryId/result columncategory_name propertycategoryName/collection propertyhBooks ofTypecom.liwen.model.HBookresult columnbook_id propertybookId/result columnbook_name propertybookName/result columnprice propertyprice//collection/resultMapselect idselectByCId resultMapHCategoryVo parameterTypejava.lang.Integerselect *from t_hibernate_book b,t_hibernate_book_category bc,t_hibernate_category cwhere b.book_id bc.bidand bc.cid c.category_idand c.category_id #{cid}/select 3、接口及接口实现类 在生成的接口类里面编写对应的接口方法 package com.liwen.mapper;import com.liwen.model.HBook; import com.liwen.vo.HBookVo; import org.apache.ibatis.annotations.Param;public interface HBookMapper {int deleteByPrimaryKey(Integer bookId);int insert(HBook record);int insertSelective(HBook record);HBook selectByPrimaryKey(Integer bookId);int updateByPrimaryKeySelective(HBook record);int updateByPrimaryKey(HBook record);HBookVo selectByBId(Param(bid) Integer bid); } package com.liwen.mapper;import com.liwen.model.HCategory; import com.liwen.vo.HCategoryVo; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository;Repository public interface HCategoryMapper {int deleteByPrimaryKey(Integer categoryId);int insert(HCategory record);int insertSelective(HCategory record);HCategory selectByPrimaryKey(Integer categoryId);int updateByPrimaryKeySelective(HCategory record);int updateByPrimaryKey(HCategory record);HCategoryVo selectByCId(Param(cid) Integer cid); } 在biz包里面新建一个HBookBiz接口类 package com.liwen.biz;import com.liwen.vo.HBookVo;/*** 软件包名 com.liwen.biz* 用户 liwen* create 2023-08-27 下午10:50* 注释说明*/ public interface HBookBiz {HBookVo selectByBId(Integer bid); } package com.liwen.biz;import com.liwen.vo.HCategoryVo;public interface HCategoryBiz {HCategoryVo selectByCId(Integer cid); } 在Biz里面的impl包里面新 package com.liwen.biz.impl;import com.liwen.biz.HBookBiz; import com.liwen.mapper.HBookMapper; import com.liwen.vo.HBookVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-27 下午10:53* 注释说明*/ Service public class HBookBizImpl implements HBookBiz {Autowiredprivate HBookMapper hBookMapper;Overridepublic HBookVo selectByBId(Integer bid) {return hBookMapper.selectByBId(bid);} } 建HBookBizImpl 接口实现HBookBiz接口类 package com.liwen.biz.impl;import com.liwen.biz.HBookBiz; import com.liwen.mapper.HBookMapper; import com.liwen.vo.HBookVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-27 下午10:53* 注释说明*/ Service public class HBookBizImpl implements HBookBiz {Autowiredprivate HBookMapper hBookMapper;Overridepublic HBookVo selectByBId(Integer bid) {return hBookMapper.selectByBId(bid);} } package com.liwen.biz.impl;import com.liwen.biz.HCategoryBiz; import com.liwen.mapper.HCategoryMapper; import com.liwen.vo.HCategoryVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-27 下午11:12* 注释说明*/ Service public class HCategoryBizImpl implements HCategoryBiz {Autowiredprivate HCategoryMapper hCategoryMapper;Overridepublic HCategoryVo selectByCId(Integer cid) {return hCategoryMapper.selectByCId(cid);} } 4、测试 package com.liwen.biz.impl;import com.liwen.biz.HBookBiz; import com.liwen.vo.HBookVo; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import static org.junit.Assert.*;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-27 下午10:59* 注释说明*/ RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {classpath:spring-context.xml}) public class HBookBizImplTest {Autowiredprivate HBookBiz hBookBiz;Testpublic void selectByBId() {HBookVo hBookVo this.hBookBiz.selectByBId(8);System.out.println(hBookVo);} } package com.liwen.biz.impl;import com.liwen.biz.HCategoryBiz; import com.liwen.vo.HCategoryVo; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import static org.junit.Assert.*;/*** 软件包名 com.liwen.biz.impl* 用户 liwen* create 2023-08-27 下午11:14* 注释说明*/ RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {classpath:spring-context.xml}) public class HCategoryBizImplTest {Autowiredprivate HCategoryBiz hCategoryBiz;Testpublic void selectByCId(){HCategoryVo hCategoryVo hCategoryBiz.selectByCId(8);System.out.println(hCategoryVo);hCategoryVo.gethBooks().forEach(System.out::println);}}
http://www.pierceye.com/news/620880/

相关文章:

  • 做油和米的网站山西省网站备案
  • 做网站有陪标现象吗成都建设网站专业公司
  • 莱阳 网站建设博罗做网站公司
  • 简易个人网站模板推广一款app的营销方案
  • 小城镇建设有关网站起飞页怎么做网站
  • 网站影响seo的标签网站用国外的服务器打不开
  • 仿站 做网站网站备案 图标
  • 网站怎么做留言提交功能wordpress个人支付接口
  • 有哪些做室内设计好用的网站廊坊网站制作推广
  • 做村易通网站站长要收费吗?elegant wordpress
  • 网站建设专业培训网站开发网页加载缓慢查询数据库慢
  • 网站开发中 视频播放卡做soho建立网站
  • 面试网站开发员安徽建工集团网站
  • 公司制作网站价格表app系统开发费用
  • 网站建设需要学什么h5海报是怎么做出来的
  • 西平企业网站建设美媒中国或已建立了51区
  • 柯城区住房和城乡建设局网站免费搭建淘宝客网站
  • 低价机票 网站建设网站模板
  • 手机网站建设的教程视频做的网站怎么放在网上
  • 做视频网站视频空间设计是什么
  • 怎么把网站推广wordpress 百万数据
  • 乐陵市人力资源中心网站网站的内容和功能
  • wordpress网站搬家图片路径做网站的算什么行业
  • 个人网站logo重庆网络优化平台
  • 河南 网站建设静态网站是什么意思
  • 上海正规做网站公司电话基于flash网站设计
  • 每个城市建设规划在哪个网站wordpress 无法安装主题
  • 自建网站做外贸谷歌推广网站内部资源推广方法
  • 网站数据库5g一个人看的免费视频高清直播
  • 怎么做网站注册推广泰州网站建设费用