2020-10-09
@PostConstruct注解的使用:
执行顺序
Constructor(构造方法) -> @Autowired(依赖注入) -> @PostConstruct(注释的方法)
参考文章
https://blog.csdn.net/qq360694660/article/details/82877222
GenericObjectPool()
初步了解了GenericObjectPool是apache提供的对象池。
他的构造函数就是要传一个用于制造对象的工厂类xxxFactory,和一个对象池的配置类 xxxpoolconfig。
public GenericObjectPool(final PooledObjectFactory<T> factory,final GenericObjectPoolConfig config)
参考文章
https://blog.csdn.net/qq447995687/article/details/80469790
java中native关键字的用法
就是相当于interface,只是是用java去调用C的方法。 JNI (java native interface)
原文参考:
https://blog.csdn.net/Aphysia/article/details/80593654
2020-10-15
Serializable序列化
什么是Serializable接口
一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化。
什么是序列化?
序列化是将对象状态转换为可保持
或传输
的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储
和传输
数据。
为什么要序列化对象
把对象转换为字节序列的过程称为对象的序列化
把字节序列恢复为对象的过程称为对象的反序列化
Serializable接口里面什么内容都没有,我们可以将它理解成一个标识接口,在Java中的这个Serializable接口其实是给jvm看的,通知jvm,我不对这个类做序列化了,你(jvm)帮我序列化就好了。
serialVersionUID
是用来辅助对象的序列化与反序列化的,原则上序列化后的数据当中的serialVersionUID与当前类当中的serialVersionUID一致,那么该对象才能被反序列化成功
serialVersionUID的详细的工作机制是:在序列化的时候系统将serialVersionUID写入到序列化的文件中去,当反序列化的时候系统会先去检测文件中的serialVersionUID是否跟当前的文件的serialVersionUID是否一致,如果一致则反序列化成功,否则就说明当前类跟序列化后的类发生了变化,比如是成员变量的数量或者是类型发生了变化,那么在反序列化时就会发生crash,并且回报出错误.
参考文章:https://baijiahao.baidu.com/s?id=1633305649182361563&wfr=spider&for=pc
2020-10-16
报错
Invalid bound statement (not found):com.yzpnb.eduservice.mapper.EduCourseMapper.selectCourseAllInfoVo
当我们用mybatis-plus的时候,又要自己写mapper.xml文件的时候,
这个错误很简单,就是找不到mapper.xml文件
我们可以将xml文件复制到能找到的地方,或者在编程时就按照官方规定将xml文件放在resource文件夹中
或者通过配置
1、配置pom.xml文件
2、配置application.properties文件或者application.yml文件
1、配置pom.xml让其编译指定包下的xml文件
<!-- 项目打包时会将java目录中的*.xml文件也进行打包 -->
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
2.并且在application.properties文件里配置启动类
#配置mapper xml文件的路径
mybatis-plus.mapper-locations=classpath:com/atguigu/eduservice/mapper/xml/*.xml
参考文章:https://blog.csdn.net/grd_java/article/details/106317706
2020-10-20
@RequestMapping("/admin")
用/admin的话swagger就不能显示出controller,用其他的就可以,很奇怪,没有找到原因。