嵌套

Mybatis

不打扰是莪最后的温柔 提交于 2019-12-11 16:09:48
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> <association property="author" column="blog_author_id" javaType="Author"> <id property="id" column="author_id"/> <result property="username" column="author_username"/> </association> 关联元素处理“有一个”类型的关系。比如,在我们的示例中,一个博客有一个用户。 关联映射就工作于这种结果之上。你指定了目标属性,来获取值的列,属性的 java 类型(很 多情况下 MyBatis 可以自己算出来) ,如果需要的话还有 jdbc 类型,如果你想覆盖或获取的 结果值还需要类型控制器。 关联中不同的是你需要告诉 MyBatis 如何加载关联。MyBatis 在这方面会有两种不同的 方式: 嵌套查询:通过执行另外一个 SQL 映射语句来返回预期的复杂类型。 嵌套结果:使用嵌套结果映射来处理重复的联合结果的子集。首先,然让我们来查看这个元素的属性。所有的你都会看到,它和普通的只由 select 和 resultMap 属性的结果映射不同。 属性 描述 property 映射到列结果的字段或属性。如果匹配的是存在的,和给定名称相同的 property

JAVA---复杂嵌套类型

我们两清 提交于 2019-12-11 11:28:22
复杂嵌套类型 有些时候,在查询数据的时候,会出现嵌套的类型,比如一个object里面有一个list,在表设计的时候,设计成了,两个表格,关系是一对多的一个关系,在查询的时候想多个的数据都查询出来,比如如下类型,这样通过一个sql语句直接查询出来。 { "type_id": "002", "name": "PLC", "time": "2019-08-14T15:57:38.000+0000", "desc": null, "testList": [ { "product_id": "201908140835486360075", "name": "PLC", "time": "2019-08-14T15:57:38.000+0000", "descs": "sadadasdsadsa", "details": "Hardware devices that connect two or more networks and act as gateways between networks" }, { "product_id": "201908141038547337647", "name": "PLC", "time": "2019-08-14T15:57:38.000+0000", "descs": "sadadasdsadsa", "details":

less 的使用

假装没事ソ 提交于 2019-12-10 12:13:32
less 的使用 一、 Less环境安装 1.1 安装 安装完成nodejs之后 检测是否安装完成 node –v 查看版本 然后检测 npm是否自带 npm –v 查看版本 若没有安装,则 运行 npm install –g less (部分电脑要 sudo 管理权限)即可安装。 Lessc –v 查看版本 是否安装成功 Lessc less.less less.css 编译less文件成css 1.2 HbuilderX中的配置 直接下载less插件,新建less类型文本文件之后,按下图找到配置文件后,修改onDidSaveExecution为true,设置快捷键为:Ctrl+S。即可实现快速自动编译,生成一个对应的.css文件。如果没有生效,重启HbuilderX。 "extensions": "less", "key": "ctrl+s", "showInParentMenu": false, "onDidSaveExecution": true 二、less用法 使用目的:简化 CSS 的编写,并且降低了 CSS 的维护成本,LESS 可以让我们用更少的代码做更多的事情。 本质上,LESS 包含一套自定义的语法及一个解析器,用户根据这些语法定义自己的样式规则,这些规则最终会通过解析器,编译生成对应的 CSS 文件。LESS 并没有裁剪 CSS 原有的特性,更不是用来取代

用for循环嵌套实现排列数

随声附和 提交于 2019-12-09 22:49:54
next—permutation()可用于字符串,二进制的比较其实就是0与1的比较,就是字符串的字典序比较 #include<iostream> #include<cstdio> #include<string> #include<algorithm> using namespace std; const int maxn=10010; int main(){ int cnt=0; for(int i=1;i<5;i++){ for(int j=0;j<5;j++){ if(i!=j) for(int k=0;k<5;k++){ if(k!=i&&k!=j){ long long ans=k+j*10+i*100; cout<<ans<<endl; cnt++; } } } } cout<<cnt; } 来源: CSDN 作者: 栈, 链接: https://blog.csdn.net/qq_924485343/article/details/103466189

使用嵌套循环打印空心菱形

*爱你&永不变心* 提交于 2019-12-09 16:02:44
使用嵌套循环打印空心菱形 public static void main ( String [ ] args ) { // 使用嵌套循环打印空心菱形 //取巧的办法 int n = 0 ; System . out . println ( " *" ) ; for ( int i = 0 ; i <= 10 ; i ++ ) { n ++ ; if ( i <= 5 ) { for ( int j = 1 ; j <= 5 - i ; j ++ ) { System . out . print ( " " ) ; } System . out . print ( "*" ) ; for ( int k = 0 ; k < n * 2 - 1 ; k ++ ) { System . out . print ( " " ) ; } System . out . print ( "*" ) ; } else { for ( int l = 5 ; l < i ; l ++ ) { System . out . print ( " " ) ; } System . out . print ( "*" ) ; for ( int m = 20 ; m > i * 2 - 1 ; m -- ) { System . out . print ( " " ) ; } System . out .

HTML CSS整理笔记(一)

老子叫甜甜 提交于 2019-12-08 17:34:38
今天跟大家说一下HTML CSS整理笔记吧 一起来学习复习下吧,一起加油吧! 小常说一下: 只为成功想办法,不为失败找理由 从这里往下是分类整理,一下子可能总结不完成,我会连续总结完的,那么接下来跟小常一起学习吧! 1.除IE外通用写法 类名或标签名::placeholder {color: red;} 2.加兼容前缀写法 css超出一行显示省略号: 给定宽度(width:100px)、 超出隐藏(overflow:hidden)、 强制在同一行显示(white-space: nowrap)、 省略号(text-overflow:ellipsis) ——常见字体单位—— 1.em 移动端常用的字体尺寸单位,相当于“倍”,比如设置当前的div的字体大小为1.5em,则当前的div的字体大小为:当前div继承的字体大小*1.5。 但当div进行嵌套时,em始终按当前div继承的字体大小来缩放。 2.rem r是root的意思,即相对于根节点html的font-size进行缩放,当有嵌套关系时,嵌套关系的元素的字体大小始终按照根节点的字体大小进行缩放。 3.vh vh就是当前屏幕可见高度的1%,即 height:100vh == height:100%; 它的好处是当元素没有内容时候,设置height:100%该元素不会被撑开, 但设置height:100vh,该元素会被撑开屏幕高度一致

Python中赋值、浅拷贝与深拷贝

旧巷老猫 提交于 2019-12-08 17:27:46
python中关于对象复制有三种类型的使用方式,赋值、浅拷贝与深拷贝。他们既有区别又有联系,刚好最近碰到这一类的问题,研究下。 一、赋值 在python中,对象的赋值就是简单的对象引用,这点和C++不同。如下: list_a = [1,2,3,"hello",["python","C++"]] list_b = list_a 这种情况下,list_b和list_a是一样的,他们指向同一片内存,list_b不过是list_a的别名,是引用。 我们可以使用 list_b is list_a 来判断,返回true,表明他们地址相同,内容相同。也可使用id(x) for x in list_a, list_b 来查看两个list的地址。 赋值操作(包括对象作为参数、返回值)不会开辟新的内存空间,它只是复制了新对象的引用 。也就是说,除了list_b这个名字以外,没有其它的内存开销。 修改了list_a,就影响了list_b;同理,修改了list_b就影响了list_a。 二、浅拷贝(shallow copy) 浅拷贝会创建新对象,其内容是原对象的引用 。 浅拷贝有三种形式:切片操作,工厂函数,copy模块中的copy函数 比如对上述list_a, 切片操作:list_b = list_a[:] 或者 list_b = [each for each in list_a] 工厂函数:list

python-嵌套函数

故事扮演 提交于 2019-12-08 02:08:21
python-嵌套函数定义:在函数体内用def定义一个函数,它的作用域只在该函数体内有效。 def outside(): print("int the outside") def inside(): print("in the inside") inside() outside() 打印结果 int the outside in the inside 来源: https://www.cnblogs.com/kezi/p/12004204.html

7.MFC实现简单的COM

亡梦爱人 提交于 2019-12-07 04:36:56
之前文章都是使用COM SDK来开发COM,实际中,因为COM开发涉及到各种重复、繁琐的细节,微软在两个C++类库MFC和ATL中实现了对COM开发的支持。MFC和ATL大大减少了COM的开发工作量,本文讲MFC开发简单的COM,下文讲ATL开发简单的COM。 1.建立COM工程 建立一个MFC工程,选择DLL,如下 勾选[自动化] 点击完成,查看生成的代码,发现MFC框架已经帮我们做的事情有 1. 实现如下四个标准的COM加载和导出函数 DllCanUnloadNow DllGetClassObject DllRegisterServer DllUnregisterServer 2. 包含一个.idl命名的文件,可以通过编写IDL实现代码自动生成,在这里还是讲手动生成MFC代码,下一节ATL讲通过编写IDL实现COM 2.实现COM 本文实现如下COM,ICat和IDog接口分别实现自己的方法SayHello. a.嵌套类原理 和之前使用C++虚函数实现COM原理不同,MFC对COM的实现,基于嵌套类,简单示例如下: class CAnimalObj { public: class XCat { public: AddRef Release QueryInterface SayHello } m_xlocalCat; class XDog { public: AddRef