![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习感悟
丨修丨丶
这个作者很懒,什么都没留下…
展开
-
JavaWeb项目下对某一对象的管理-前端思考
JavaWeb项目下对某一对象的管理-前端思考前言最近一直在做毕设,框架采用的基于SpringBoot的SSM框架,不过框架不重要,思路都是一致的。这里的对象指的是某一个模块对象,例如:订单,用户信息等等。基于最近的学习,思考了如何做是最合理最健壮的思路。需求一个常见的对象管理基本上有以下需求:根据某些条件进行查询出结果新增对象修改编辑对象删除对象解决方案一个合理的界面应...原创 2020-04-27 16:26:07 · 211 阅读 · 0 评论 -
springboot项目新感悟
1. 前言这几天老师带领我们做一个标准的Java web项目,提供了前端的源码,是一次很好的练习机会,老师带领做的是基于自己引入包的SSM框架,而自己是用springboot管理开发的。做的过程中也学到了很多新的知识,总结一下,希望以后温故而知新。2. 前端2.1 头文件引入thymeleaf模板需要添加<html lang="en" xmlns:th="http://www.th...原创 2019-06-18 12:51:01 · 935 阅读 · 0 评论 -
数据库四种隔离级别原理及感悟
前言学习到了数据库的四种隔离级别,同时也对其原理产生一些兴趣,经过一些学习后写下感悟。参考另一篇文章链接在这。四种隔离级别1. 未提交读未提交读的原理如下:事务对当前被读取的数据不加锁;事务在更新某数据的瞬间(就是发生更新的瞬间),必须先对其加行级共享锁,直到事务结束才释放。同时产生的问题就是脏读问题。所谓脏读:读取了错误的中间数据。行级共享锁通常也指读锁。在这里,不管是读...原创 2019-09-01 14:37:24 · 460 阅读 · 0 评论 -
jdk1.8 HashMap的扩容机制
//源码如下final Node<K,V>[] resize() { Node<K,V>[] oldTab = table; //简单的判断 int oldCap = (oldTab == null) ? 0 : oldTab.length; int oldThr = threshold; i...原创 2019-09-02 11:00:03 · 827 阅读 · 0 评论 -
volatile关键字
1. 保证线程可见性在Java内存模型(JMM)中规定,数据存储在主存中,当线程需要数据时,拷贝一份到自己的工作内存中,进行操作,结束后写回主存。以上规定都是理论模型,不一定对应真实实现,但其中的逻辑是一致的。由于都是拿到的拷贝,所以线程之间的修改可能会产生并发问题。volatile正好就是解决这个问题的关键。volatile修饰的引用,在内容修改后,会通知其他含有该数据的线程他们手中的数据已...原创 2019-09-02 12:03:40 · 91 阅读 · 0 评论 -
notify(),notifyAll(),wait()与synchronized的关系
先总结其关系有synchronized的地方不一定有wait,notify有wait,notify的地方必有synchronized.主要解释第二条。wait与notify方法在运行时分别要释放/获得锁,如果外面没有synchronized也就没有锁自然无法释放/获得会有错误。如果不加synchronized在编译时可以通过,运行时却会报错java.lang.IllegalMon...原创 2019-09-02 12:50:49 · 215 阅读 · 0 评论