目录
MyBatis笔记
第1刷,南湖立交2021.12,课程来源:B站up/黑马
注意\报错
注意
连接数据库的4个基本信息:全限定类名\url\username\password
一条数据库数据对应一个对象,同时也是一个集合元素
内行写法:写到一半注意提示,按enter补全,这么写可以少敲键盘并且导包
selectList的参数,就是xml文件中的name+id,,,xml文件中的name加上id就是sqlSession.selectList的参数
idea复制模块
- 新建模块
- 打开电脑磁盘,将旧模块的文件复制到新模块的目录中,不复制pom
- 完成
SELECT *,id orderid FROM ordert;
//查询结果中,id将分别以id,orderid为列名显示2列
//java中的别名显示查询如下
<resultMap...>
<id column="oid" property="id"/>
...
</resultMap>
<select...>
select *,ordert.id oid from ordert,user where uid=user.id
</select>
- getResourceAsStream报红
InputStream inputStream=Resources.getResourceAsStream("sqlMapConfig.xml");//getResourceAsStream报红
InputStream inputStream=Resources.class.getResourceAsStream("sqlMapConfig.xml");//中间加上.class就不红了
下载的B站视频有音频画面不匹配的问题,优先使用浏览器看视频.
报错
1.
[已解决]Resources没有getResourceAsStream(resource ...)方法???
全部代码都按文档的去写,导包完毕\抛出异常完毕的话,是不爆红的!
2.
[已解决]mapper namespace=test的test爆红了???
解决方案A:等文档看完后看视频中的操作,
解决方案B(有效):设置 SQL 映射文件的 namespace 属性为 Mapper 接口全限定名
3.
[已解决]dos窗口输入mysql -uroot -p1111 -h127.0.0.1 -p3306不报错,再输入show databases就报错
解决: 按以下输入即可
mysql -uroot -p
1111
show databases;
4.
result type
Figure 7: image-20211221143923464
解决方案A[有效]:使用全限定类名给result type赋值
5.
- Could not find resource com/xxx/xxxMapper.xml
运行MybatisBrandTest,报错内容很多,抛出PersistenceException异常
方案A:CSDN@向上的青春:执行maven的clean\compile,执行idea的invalidate,重启idea,重新运行,出现相同报错
方案B:参考其他CSDN答主的答案,没有找到
方案C:观察原视频,没有涉及
方案D:暂时略过
方案E:对比下载的原版的代码, 找出代码中存在的不同
方案F-无效:代码修改如下
原件:
\InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
修改后:
\InputStream inputStream = Resources.getResourceAsStream("SQLMapConfig.xml");//改了参数
方案G:给了3个方案,说是哪个都可以,看起来很靠谱,实际全都无效
方案H:@骆,-1-查看报错信息,-2-查看每个相关文件(
- pom.xml
- mybatis-config.xml
- sqlMapConfig.xml
- BrandMapper.xml
- Brand.java
- BrandMapper.java
- BrandMapperTest.test)
2个报错根源:-1-mybatis-config.xml写入数据库名,运行时间标准,-2-包名,要用斜线不要用点
原文(错误)
<property name="url" value="jdbc:mysql://mybatis?useSSL=false"/>
更正为
<property name="url" value="jdbc:mysql://localhost:3306/db03?serverTimezone=GMT"/>
//
原文(错误)
<mapper resource="com.it.mapper.BrandMapper.xml"/>
更正为
<mapper resource="com/it/mapper/BrandMapper.xml"/>
- idea没有连接数据库(应该是,因为没记得