文档章节

java 关于查询列表中含有子集的处理;

尾生
 尾生
发布于 2017/02/16 16:43
字数 387
阅读 9
收藏 0

以前总是抱着sql能一句话解决的问题,就尽量使用SQL;这种强迫性的懒惰心理,务必要克制;

原因: 一条sql语句面对负责的业务,即使能实现也不利于维护,太长,可读性差;

一个大sql不足:1,后期难以维护;2,取总记录数查一次 取所需页数据也要查一次而且这个查询是先取数据再排序比较重耗资源

作为java开发,应该遵从复杂问题分而治之,分成一个个小问题,然后通过代码去实现;

下面,我举一个例子;

    比如: 查询学生列表, 学生报有多个补习班 , 一次性列出 所有学生,及每个学生报名的补习班 (其中,男女有别,男的补习班排除艺术班,女的排除音乐班)!

sql语句实现方式:

    

这种方法业务集中在sql中,和不利于后期的维护与修改,所以不推荐

java实现方式:

好的方式我也不太懂,只能先记录下我目前实现方式;

1.初级查询基础列表的 resultList

// 多个渠道 > 每个渠道内隐藏多个投放城市
		RowMapper<ChannelPageModel> rowMapper = 
new BeanPropertyRowMapper<ChannelPageModel>(ChannelPageModel.class);
		List<ChannelPageModel> resultList=null;
		if(args!=null && args.size()>0){

			resultList = jdbcTemplate.query(sqlStr.toString(),args.toArray(), rowMapper);
		}else{
			resultList = jdbcTemplate.query(sql,rowMapper);
		}

2. 遍历单个对象,赋值查询1对多关系集合, 塞入到PriceTypes集合中即可

好了; 记录结束;

 

© 著作权归作者所有

共有 人打赏支持
尾生
粉丝 16
博文 142
码字总数 57838
作品 0
杭州
程序员
私信 提问
SpringBoot实战(四)之使用JDBC和Spring访问数据库

这里演示的是h2databse示例,所以简单的介绍普及下h2database相关知识 H2数据库是一个开源的关系型数据库。 H2是一个嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个...

youcongtech
08/03
0
0
一起谈谈 Java 9 的新特性

在前一篇博客里,我们探讨了Java 8 新增的功能特性。 Java 8 发布已经三年多了,下一个版本现在已经整装待发了,暂定发布日期是2017年9月21日。 你也许已经听到 Java 9 的模块化系统,不过,...

oschina
2017/07/31
12.6K
42
Android电话系统之GSMCallTracker

GSMCallTracker在本质上是一个Handler。 GSMCallTracker是Android的通话管理层。GSMCallTracker建立了ConnectionList来管理现行的通话连接,并向上层提供电话调用接口。 在GSMCallTracker中维...

陈wei
2013/02/18
0
0
Play源码深入之一:从play命令开始

Play的命令是借助python脚本,这从下载的play包就能明显看出来:一是其中有一个python包,里面是一个play自带的python环境,还有是play.bat文件: @echo off"%~dp0pythonpython.exe" "%~dp0p...

奋斗到天明
2015/08/27
0
0
MyBatis 实践 -Mapper与DAO

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hanqing280441589/article/details/50760236 标签: Java与存储 MyBatis简介 MyBatis前身是iBatis,是一个基于...

菜鸟-翡青
2016/02/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

微服务分布式事务实现

https://www.processon.com/view/link/5b2144d7e4b001a14d3d2d30

WALK_MAN
今天
2
0
《大漠烟尘》读书笔记及读后感文章3700字

《大漠烟尘》读书笔记及读后感文章3700字: 在这个浮躁的社会里,你有多久没有好好读完一本书了? 我们总觉得自己和别人不一样,所以当看到别人身上的问题时,很少有“反求诸己”,反思自己。...

原创小博客
今天
4
0
大数据教程(9.5)用MR实现sql中的jion逻辑

上一篇博客讲解了使用jar -jar的方式来运行提交MR程序,以及通过修改YarnRunner的源码来实现MR的windows开发环境提交到集群的方式。本篇博主将分享sql中常见的join操作。 一、需求 订单数据表...

em_aaron
今天
3
0
十万个为什么之什么是resultful规范

起源 越来越多的人开始意识到,网站即软件,而且是一种新型的软件。这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点...

尾生
今天
3
0
Terraform配置文件(Terraform configuration)

Terraform配置文件 翻译自Terraform Configuration Terraform用文本文件来描述设备、设置变量。这些文件被称为Terraform配置文件,以.tf结尾。这一部分将讲述Terraform配置文件的加载与格式。...

buddie
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部