mybatis逆向工程+PageHelper分页插件+mysql大文本类型字段的查询

数据表名称:  tb_item_param


表结构如下:



表数据如下:




现想实现,在Java Web应用中,对此表进行分页查询---先采用JUnit单元测试,再实现对应的controller


JUnit单元测试


  @Test
    public void testTbItemParam() throws Exception{
    	//1、 拿到spring上下文对象
    	ApplicationContext aContext = null ;
    	
    	try{
    		aContext= new ClassPathXmlApplicationContext("classpath:spring/applicationContext-*.xml");
    	}
    	catch(Exception ex){
    		ex.printStackTrace();
    	}
    	//2、用这个上下文对象 拿到商品规格参数模板的 mapper映射类 --> 代理对象 bean
    	TbItemParamMapper itemMapper = aContext.getBean(TbItemParamMapper.class);
    	//3、设置分页显示
    	PageHelper.startPage(1, 5);// 一页显示5,当前是第一页
    	//4、查询商品规格参数模板 此时,list已经是分页状态了,example无条件查询,相当于 select*from taotao.tb_item_param limit 0,5
    	TbItemParamExample example =new TbItemParamExample();
    	List<TbItemParam> list = itemMapper.selectByExample(example); //这个是查询普通文本类型的,这里演示一下效果   	 	
    	//5、判断一下list里面是否查询到了数据集
    	if(list !=null & list.size()>0)
    	{
    		int i = 0;
    		for(TbItemParam item : list){
    			System.out.println(item.getId()+","+item.getItemCatId()+","+item.getParamData()+","+(i+1));
    			i++;
    		}
    	}	
    	//下面,我们用PageInfo泛型集合包装一下商品list
    	//同时,我们可以用pageInfo对象进行一些分页属性的返回
    	PageInfo<TbItemParam> pageInfo = new PageInfo<>(list);
    	long totalCount = pageInfo.getTotal();
    	System.out.println("总记录数:"+totalCount);
    	int pages = pageInfo.getPages();
    	System.out.println("总页数:"+pages);
    	int pageSize = pageInfo.getPageSize();
    	System.out.println("每页展示数:"+pageSize);
    	int lastPage = pageInfo.getFirstPage();
    	System.out.println("首页:"+lastPage);
    	int nextPage = pageInfo.getNextPage();
    	System.out.println("下一页:"+nextPage);
    }

	

执行后我们发现,表的字段param_data打印为null



原因就是,xxxxmapperselectByExample()方法针对的是普通文本类型的字段,如果想要查询含有大文本类型的字段,需要用到xxxxmapepr的另一个方法----->selectByExampleWithBLOBs()



上述demo,只需改一个地方就行:


//List<TbItemParam> list = itemMapper.selectByExample(example); //查询普通字符串
//查询 数据库 类型 是text 大文本类型的数据
List<TbItemParam> list = itemMapper.selectByExampleWithBLOBs(example);
    	


改过后,执行下测试的结果如下:





servive和controller的demo部分就不放出来了,最终效果就是页面上实现了商品规格参数模板的分页查询的展示:

 

1、controller返回的json数据字符串:



2、jsp页面easyui-datagrid  js插件的数据表格展示:




3、js实现ParamData的json数据拆分:




4、最终页面效果展示(默认一页显示30条记录):





  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值