杂谈123 水深无声 2022-11-19 05:27 262阅读 0赞 # 对象的深浅复制 # ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODQ0Njg5MQ_size_16_color_FFFFFF_t_70_pic_center] # 为什么要重写equals和hashCode方法? # HashMap是通过验证hashCode和key的相等两个步骤保证key的唯一性的。 所以要想实现对象作为键插入,则需要重写hashCode()和equals()方法。 # 在HashMap中,为什么不能使用基本数据类型作为key? # HashMap存储数据的特点是:无序、无索引、不能存储重复元素。 之所以key不能为基本数据类型,则是因为基本数据类型不能调用其hashcode()方法和equals()方法,进行比较, 所以HashMap集合的key只能为引用数据类型,不能为基本数据类型,可以使用基本数据类型的包装类,例如Integer Double等。 # mysql vs oracle # [https://blog.csdn.net/baidu\_37107022/article/details/77043959][https_blog.csdn.net_baidu_37107022_article_details_77043959] 1. Oracle是`大型数据库`,而Mysql是`中小型数据库`,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。 2. `Oracle支持大并发`,大访问量,是OLTP( On-Line Transaction Processing联机事务处理系统 )最好的工具。 3. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。 4. `oracle隔离级别“已提交读”,mysql隔离级别“可重复读”` 5. 事务。`oracle很早就完全支持事务`。`mysql在innodb存储引擎的行级锁的情况下才支持事务`。 6. 7. Oracle也Mysql操作上的一些区别 * ①主键 Mysql一般使用自动增长类型,在创建表时只要指定表的主键为auto increment,插入记录时,不需要再指定该记录的主键值,Mysql将自动增长;Oracle没有自动增长类型,主键一般使用的序列,插入记录时将序列号的下一个值付给该字段即可;只是ORM框架是只要是native主键生成策略即可。 * ②单引号的处理 `MYSQL里可以用双引号包起字符串`,`ORACLE里只可以用单引号包起字符串`。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。 * ③翻页的SQL语句的处理 MYSQL处理翻页的SQL语句比较简单,用LIMIT 开始位置, 记录个数;ORACLE处理翻页的SQL语句就比较繁琐了。每个结果集只有一个ROWNUM字段标明它的位置, 并且只能用ROWNUM<100, 不能用ROWNUM>80 * ④ 长字符串的处理 长字符串的处理ORACLE也有它特殊的地方。INSERT和UPDATE时最大可操作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,方法借用ORACLE里自带的DBMS\_LOB程序包。插入修改记录前一定要做进行非空和长度判断,不能为空的字段值和超出长度字段值都应该提出警告,返回上次操作。 * ⑤空字符的处理 MYSQL的非空字段也有空的内容,ORACLE里定义了非空字段就不容许有空的内容。按MYSQL的NOT NULL来定义ORACLE表结构, 导数据的时候会产生错误。因此导数据时要对空字符进行判断,如果为NULL或空字符,需要把它改成一个空格的字符串。 * ⑥字符串的模糊比较 MYSQL里用 字段名 like ‘%字符串%’,ORACLE里也可以用 字段名 like ‘%字符串%’ 但这种方法不能使用索引, 速度不快。 ⑦Oracle实现了ANSII SQL中大部分功能,如,事务的隔离级别、传播特性等而Mysql在这方面还是比较的若 # ASQ # [https://blog.csdn.net/mulinsen77/article/details/84583716][https_blog.csdn.net_mulinsen77_article_details_84583716] [https://www.cnblogs.com/waterystone/p/4920797.html][https_www.cnblogs.com_waterystone_p_4920797.html] # Spring、SpringBoot、SpringMVC、SpringCloud # ## spring和springMvc ## 1. spring是一个一站式的轻量级的java开发框架,核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层(springMvc)、业务层(Ioc)、持久层(jdbcTemplate)等都提供了多种配置解决方案; 2. springMvc是spring基础之上的一个MVC框架,主要处理web开发的路径映射和视图渲染,属于spring框架中WEB层开发的一部分; ## springMvc和springBoot ## 1. `springMvc`属于一个企业WEB开发的MVC框架,涵盖面包括前端视图开发、文件配置、后台接口逻辑开发等,XML、config等配置相对比较繁琐复杂; 2. `springBoot` 。框架相对于springMvc框架来说,更专注于开发微服务后台接口,不开发前端视图,同时遵循默认优于配置,简化了插件配置流程,`不需要配置xml,相对springmvc,大大简化了配置流程`; ## springBoot和springCloud ## 1. spring boot使用了默认大于配置的理念,集成了快速开发的spring多个插件,同时自动过滤不需要配置的多余的插件,简化了项目的开发配置流程,一定程度上取消xml配置,是一套快速配置开发的脚手架,能快速开发单个微服务; 2. `Spring Cloud 是一系列框架的有序集合`,它利用 Spring Boot 的开发便利性简化了分布式系统的开发,比如`服务发现、服务网关、服务路由、链路追踪`等。Spring Cloud 并不重复造轮子,而是将市面上开发得比较好的模块集成进去,进行封装,从而减少了各模块的开发成本。换句话说:`Spring Cloud 提供了构建分布式系统所需的“全家桶”`。大部分的功能插件都是基于springBoot去实现的,springCloud关注于全局的微服务整合和管理,将多个springBoot单体微服务进行整合以及管理; `springCloud依赖于springBoot开发`,而springBoot可以独立开发; **Spring Cloud架构 我们从整体来看一下 Spring Cloud主要的组件,以及它的访间流程 1、外部或者内部的非 Spring Cloud目都统一通过API网关(`Zuul`)来访可内部服务. 2、网关接收到请求后,从注册中心( `Eureka`)获取可用服务 3、由 `Ribbon`进行均负载后,分发到后端的具体实例 4、徹服务之间通过 `Feign`进行通信处理业务 5、 `Hystrix`负责处理服务超时熔断 6、 `Turbine`监控服务间的调用和焠断相关指标** 总结 > 1. Spring 框架就像一个家族,有众多衍生产品例如 boot、security、jpa等等。但他们的基础都是Spring的ioc、aop等. ioc 提供了依赖注入的容器, > aop解决了面向横切面编程,然后在此两者的基础上实现了其他延伸产品的高级功能; > 2. springMvc主要解决WEB开发的问题,是基于Servlet 的一个MVC框架,通过XML配置,统一开发前端视图和后端逻辑; > 3. 由于Spring的配置非常复杂,各种XML、JavaConfig、servlet处理起来比较繁琐,为了简化开发者的使用,从而创造性地推出了springBoot框架,默认优于配置,简化了springMvc的配置流程;但区别于springMvc的是,springBoot专注于微服务方面的接口开发,和前端解耦,虽然springBoot也可以做成springMvc前后台一起开发,但是这就有点不符合springBoot框架的初衷了; > 4. 对于springCloud框架来说,它和springBoot一样,注重的是微服务的开发,但是springCloud更关注的是全局微服务的整合和管理,相当于管理多个springBoot框架的单体微服务; ## Spring Cloud 和 Dubbo 对比 ## Dubbo 只是实现了服务治理,而 Spring Cloud 实现了微服务架构的方方面面,服务治理只是其中的一个方面。下面通过一张图对其进行比较: ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODQ0Njg5MQ_size_16_color_FFFFFF_t_70_pic_center 1] # 主键 # `联合主键`体现在`多个表`上 `复合主键`体现在`一个表`中的多个字段 # count(\*) vs count(1) # 一般情况下,Select Count (*) 和 Select Count(1) 两着返回结果是一样的,`假如表没有主键(Primary key), 那么count(1)比count(*)快`,如果有主键的话,那主键作为count的条件时候count(主键)最快,如果你的表只有一个字段的话那count(*)就是最快的。 count(\*) 跟 count(1) 的结果一样,都`包括对NULL`的统计,而count(column) 是不包括NULL的统计。 # 设计模式 # [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODQ0Njg5MQ_size_16_color_FFFFFF_t_70_pic_center]: /images/20221022/5eb3b50c45314e46b352a5ae4dd6fa57.png [https_blog.csdn.net_baidu_37107022_article_details_77043959]: https://blog.csdn.net/baidu_37107022/article/details/77043959 [https_blog.csdn.net_mulinsen77_article_details_84583716]: https://blog.csdn.net/mulinsen77/article/details/84583716 [https_www.cnblogs.com_waterystone_p_4920797.html]: https://www.cnblogs.com/waterystone/p/4920797.html [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODQ0Njg5MQ_size_16_color_FFFFFF_t_70_pic_center 1]: /images/20221022/5c1781df307f4ceb98c9aa6ec93fa2df.png
相关 杂谈 仔细想想这么多年定下的这么多的目标,却都没实现。 没考上雅思,失败。 ![20201213211511516.png][] 准备研究网络安全技术,<加密与解密>都没看完。 旧城等待,/ 2022年12月28日 01:44/ 0 赞/ 245 阅读
相关 杂谈123 对象的深浅复制 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG 水深无声/ 2022年11月19日 05:27/ 0 赞/ 263 阅读
相关 震惊123 Coinciding with the new native data dictionary in MySQL 8.0, we have made a number of us 亦凉/ 2022年09月08日 13:51/ 0 赞/ 198 阅读
相关 杂谈 GC 在Hotspot VM实现中,主要有两大类GC Partial GC:并不会堆整个GC堆进行收集 1. young gc:只收集 yo 深碍√TFBOYSˉ_/ 2022年05月30日 09:49/ 0 赞/ 225 阅读
相关 字符串杂谈 一、String类有length()方法吗?数组有length()方法吗? String类当然有length()方法了,看看String类的源码就知道了,这是这个方法 野性酷女/ 2022年05月24日 03:26/ 0 赞/ 239 阅读
相关 杂谈 在别人博客里面发现了一个好现象——有人写作! 作为一个六无(不抽烟,不喝酒,不泡吧,没房,没车,没对象)青年,我觉得自己已经找到组织了,然后看了一部分作品,有一个小小的结论 客官°小女子只卖身不卖艺/ 2022年05月15日 15:52/ 0 赞/ 262 阅读
相关 123 点击蓝字关注这个神奇的公众号~ 开展服务端性能测试时,如果发现系统变慢了,我们通常都会用 uptime 或 top 命令,来观察系统的负载情况。 如上u 太过爱你忘了你带给我的痛/ 2022年04月27日 21:20/ 0 赞/ 231 阅读
相关 123 2314 123123 [wdnmd][] 转载于:https://www.cnblogs.com/lijinran/p/10801744.html [wd 淩亂°似流年/ 2021年12月15日 15:27/ 0 赞/ 301 阅读
相关 123 \\'x+y=1'\\ '\\''(' x+y=1 '\\'')' \\ 一 阿萨 $$ x^2+y^2=1 $$ $ x^2+y^2 快来打我*/ 2021年10月23日 11:48/ 0 赞/ 453 阅读
相关 123 angular指令 1. ng-init(初始化数据) 2. ng-app(边界,模块范围与controller配合) 3. ng-model(数据绑定) 4. ng r囧r小猫/ 2021年10月01日 05:24/ 0 赞/ 340 阅读
还没有评论,来说两句吧...