![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA开发学习笔记
omelete
土木跨考计算机的菜鸡!
展开
-
元注解@Repeatable的使用
被元注解@Repeatable修饰的注解,可以在同一个地方使用多次。这是JAVA8加入的新特性,在此之前注解在同一个地方只能使用一次(实际上有解决方案,但可读性不好)。@Repeatable的使用有以下几个要点: 在需要重复使用的注解上修饰@Repeatable @Repeatable中的参数为被修饰注解的容器的类对象(class对象) 容器包含一个value方法,返回一个被修饰注解的数组 这样就完成了一个可重复使用的注解的定义,然后在对应类、方法、属性上多次使用该注.原创 2020-06-23 21:45:51 · 4029 阅读 · 0 评论 -
MYSQL执行成本
MYSQL执行成本由两部分组成: IO成本:与读取的页数有关,用于从磁盘读取表的数据到内存,成本计算为页数*1。(读取时会读取数据所在的页,即表现了程序的空间局部性) CPU成本:与表行数有关,用于条件的比较或排序,成本计算为行数*0.2 MYSQL执行成本=读取页数*1+数据行数*0.2TIPS: MYSQL可能不会选取时间最短的计划进行,而是选择执行成本最小的计划。也就是说MYSQL认为成本小≠时间短。 EXPLAIN可以查看某操作用的是哪个索引。...原创 2020-06-23 20:34:18 · 565 阅读 · 0 评论 -
wait和notify的使用方法
前提:wait和notify、notifyAll都只能在同步代码块或者同步方法中调用,且要通过锁对象进行调用,否则会抛出IllegalMonitorStateException1.wait wait(),当前线程进入无限等待状态,必须被唤醒才能继续执行,调用后会释放锁对象 wait(long timeout),wait(long timeout,int nanos),当前线程进入等待状态,可以被提前唤醒,但在指定时间后会自动唤醒 2.notify notify(),随机唤.原创 2020-06-23 20:33:22 · 3263 阅读 · 3 评论 -
JAVA唯二基1的地方
JAVA绝大部分计数都是从0开始的,比如数组的下标就是从0开始算起。但有两个地方是从1开始计算的。两个都出自JDBC部分(1)ResultSetrs.get()方法是基于1的, 在取第二列的数据的时候,用的是rs.get(2) ,而不是get(1).String sql ="select * from hero";// 执行查询语句,并把结果集返回给ResultSetResultSet rs = s.executeQuery(s...原创 2020-06-23 20:26:26 · 194 阅读 · 0 评论