上一页 1 ··· 44 45 46 47 48 49 50 51 52 ··· 93 下一页
摘要: mybatis中的多表查询: 示例:用户和账户 一个用户可以有多个账户 一个账户只能属于一个用户(多个账户也可以属于同一个用户) 步骤: 1、建立两张表:用户表,账户表 让用户表和账户表之间具备一对多的关系:需要使用外键在账户表中添加 2、建立两个实体类:用户实体类和账户实体类 让用户和账户的实体类 阅读全文
posted @ 2019-08-08 10:16 高山-景行 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 4、mybatis中的多表查询 表之间的关系有几种: 一对多 多对一 一对一 多对多 举例: 用户和订单就是一对多 订单和用户就是多对一 一个用户可以下多个订单 多个订单属于同一个用户 人和身份证号就是一对一 一个人只能有一个身份证号 一个身份证号只能属于一个人 老师和学生之间就是多对多 一个学生可 阅读全文
posted @ 2019-08-08 09:34 高山-景行 阅读(134) 评论(0) 推荐(0) 编辑
摘要: foreach标签 in的查询 sql语句好写,但是传参在映射文件里面改怎么传呢 定义一个List<Integer>成员变量,然后生成get和set 定义一个新的查询方法 open:开始符号 close:结尾符号 item:遍历出来的每一项存到哪里 存到id separator:用逗号去分隔 uid 阅读全文
posted @ 2019-08-08 09:25 高山-景行 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 这里的userSex是实体类里面的属性名,而不是数据库内的字段名称 一个老王改成性别女,为了区分一下 增加sex字段的查询 where标签 用上where和刚才的执行效果是一样的 where标签使我们的sql看起来更清晰、更简便 阅读全文
posted @ 2019-08-08 09:11 高山-景行 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 创建新的工程 复制到新建的项目里面 pom.xml依赖部分复制过来 dao中整理代码 只保留四个查询 映射文件也只保留四个查询方法 增加一个根据条件查询的方法。 由于用了别名,所以parpameterType的值这里写user是可以的 测试方法,新增一个根据条件查询的 报错 实体类是userName 阅读全文
posted @ 2019-08-07 22:39 高山-景行 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 在实际的开发中,建议使用连接池的形式。 JNDI的资料 H:\BaiDu\黑马传智JavaEE57期 2019最新基础+就业+在职加薪\讲义+笔记+资料\主流框架\31.会员版(2.0)-就业课(2.0)-Mybatis\mybatis\mybatis_day03\资料\JNDI 事物 Ctrl+N 阅读全文
posted @ 2019-08-07 22:22 高山-景行 阅读(325) 评论(0) 推荐(0) 编辑
摘要: idelConnection是空闲的链接 idelConnection就是ArrayList的数组 如果没有空闲的就new一个 新的connection 一个空闲池,一个活动的池,一个链接过来。空闲池如果有链接,那么就返回一个连接拿去用 如果活动池打到了最大数量。 他就会把连接池中最老的一个返回回去 阅读全文
posted @ 2019-08-07 22:09 高山-景行 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 把之前的CRUD的代码src下的代码都复制过来 依赖项也都复制过来, 配置文件 整理一番 执行findAll方法的测试 查看日志的输出部分 修改程序池 再来执行findAll方法 Plooled从连接池中拿到连接,又扔回去了。 每次都会创建新的链接。用完直接关闭 Ctrl+N弹出对话框 输入unpo 阅读全文
posted @ 2019-08-07 21:06 高山-景行 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 2、mybatis中的连接池 mybatis连接池提供了3种方式的配置: 配置的位置: 主配置文件SqlMapConfig.xml中的dataSource标签,type属性就是表示采用何种连接池方式。 type属性的取值: POOLED 采用传统的javax.sql.DataSource规范中的连接 阅读全文
posted @ 2019-08-07 20:41 高山-景行 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-08-07 20:36 高山-景行 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-08-07 20:31 高山-景行 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 配置别名 上面制定了好了别名后,映射文件就可以简写了。不区分大小写 皆可以小写也可以大写 大小写混着也可以 测试 package 直接把com.itheima.domain下面所有的类都注册了 可以使用别名,并且类名就是别名。 测试,。依然没有问题 mappers里面也有对应的包 测试,。依然没问题 阅读全文
posted @ 2019-08-07 14:49 高山-景行 阅读(216) 评论(0) 推荐(0) 编辑
摘要: properties 可以把数据库链接的配置放在上面的properties里面 #{占位符}的形式去引用上面的。下面的内容就是引用上面的内容的定义。 运行查询的方法测试一下 这样改造可以成功的运行程序。 数据库外部配置文件 可以支持把放到外部的配置文件里面。 给的资料里面有一个文件:jdbcConf 阅读全文
posted @ 2019-08-07 14:39 高山-景行 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 另外一种情况,不写Mybits的dao实现类的情况。 切换工程到CRUD的工程。这里面是不写dao实现类的方式 进入到GetMaper里面。这里是创建代理对象 去找SqlSession的实现类DefaultSqlSession DefaultSqlSession的getMapper方法 进入Conf 阅读全文
posted @ 2019-08-07 10:14 高山-景行 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 从测试类入手,断点调试 找到实现类,进入到insert方法里面 这里是SqlSession的接口里面的方法。 我们需要找SqlSession的实现类。 DefaultSqlSession 里面有两个insert方法,第一个insert执行的是第二个insert方法,德尔格insert方法又执行的是下 阅读全文
posted @ 2019-08-07 09:40 高山-景行 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 继续运行testFindAll方法。把其他类的断点都删除掉。 只在这里加了断点,所以直接就跳转到这里了。RoutingStatementHandler里面的query方法 继续往下走,断点又回到了这里、delegate变成了一个叫做PrparedStatementHandler 找PrparedSt 阅读全文
posted @ 2019-08-06 21:43 高山-景行 阅读(188) 评论(0) 推荐(0) 编辑
摘要: delete方法没有并SqlSession的delete方法,而是调用的Upadte方法。 在测试类这里加断点。 实际的方法体内也加断点 运行测试方法,选择debug的方式 走到断点这里。会看到factory是DefaultSqlSessionFactory session是DefaultSqlSe 阅读全文
posted @ 2019-08-06 21:23 高山-景行 阅读(232) 评论(0) 推荐(0) 编辑
摘要: update和上面的Insert代码基本是一样的,只需要修改这里, 测试Update的方法 删除 findById 测试方法 findByName 测试方法 findTotal 阅读全文
posted @ 2019-08-06 20:37 高山-景行 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 再完善。saveUser的方法 测试保存的操作 报错了 SqlSession的insert的源码 我们在执行Insert的时候,并没有把user对象传过去 usersex改成sex 再次测试 阅读全文
posted @ 2019-08-06 20:27 高山-景行 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 就是自己写实现类的方式来开发 直接finish 把之前写的CRUD的代码复制到过来。 在把之前pom.xml里面的包的依赖也复制过来 复制到当前的pom.xml内 允许自动导入 以上步骤就是复制了一个完整的上一节的CRUD的工程 调整和改造 QueryVo删掉。 映射文件中。resultMap的内容 阅读全文
posted @ 2019-08-06 20:22 高山-景行 阅读(276) 评论(0) 推荐(0) 编辑
摘要: sql语句里面起别名的方式 测试查询的方法 数据字段 都有值了。 配置查询接口列表和实体类属性名对应关系 id可以随便起名 主键的对应 再次测试,并没有封装成功 这是应为定义的对应关系并没有使用。 当我们要使用这个结果类型的对应的时候。 resultMap指定的就是上面的id值。也就是查询语句执行完 阅读全文
posted @ 2019-08-06 14:38 高山-景行 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 如果实体类和数据库表内的字段没有保持一致 修改了属性子弹。 重新生成getter和setter还有toString方法 测试类里面,相关set的方法就都会报错。 只需要修改为最新的set方法就可以了。 sql的配置文件里面。keyProperty里面就不叫做id了。 这样插入和更新都是不能用的 运行 阅读全文
posted @ 2019-08-06 14:12 高山-景行 阅读(237) 评论(0) 推荐(0) 编辑
摘要: pojo对象就是实体类 综合查询-实体类包装起来做查询 新建实体类QueryVo 提供一个User对象属性,并生成getter和setter 测试 修改dao接口中的返回类型为List<User> id的名称改掉。 运行效果 阅读全文
posted @ 2019-08-06 13:59 高山-景行 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 保存后得到id 默认查询出来的是0,因为没有插入就要得到最后的id值。 insert语句跟在前面就可以获取到id了 新插入的这条数据就是51 order=after表示在insert语句后再去获取id。有些属性是可以生路的,这里为了演示,把属性都写在了这里。 也就是我们最新插入的这个值 阅读全文
posted @ 2019-08-06 13:44 高山-景行 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 聚合函数 模糊查询的另外一种写法 如果用户这种方式里面的value是固定的 因为在源码分析中,绑定的就是固定的value值 所以这里传参数的 没必要在用百分号了 删掉后 xml里面应该用这种方式来注释 再改回之前的方式 两者的区别 阅读全文
posted @ 2019-08-06 12:55 高山-景行 阅读(317) 评论(0) 推荐(0) 编辑
上一页 1 ··· 44 45 46 47 48 49 50 51 52 ··· 93 下一页