- 博客(46)
- 收藏
- 关注
原创 2021-03-24
oracle学习sql中使用FROM查询多表和使用JOIN连接(LEFT JOIN,RIGHT JOIN除外),查询结果,查询效率是一样的
2021-03-24 10:57:29
84
原创 java泛型
一.反射和泛型1.使用Class<T>泛型可以避免强制类型转换可以这么理解:Class<Aclass> 是一个类型,Aclass.class是一个实例对象因此:Class<Aclass>a = Aclass.class;对比:String str = "this is a string";二.泛型1.<E>,允许在定义类,接口时...
2020-02-06 15:29:34
114
原创 springboot注解的作用
@EnableAutoConfiguration当spring boot扫描到@EnableAutoConfiguration注解时则会将spring-boot-autoconfigure.jar/META-INF/spring.factories文件中org.springframework.boot.autoconfigure.EnableAutoConfiguration对应的value里...
2020-02-04 18:47:00
215
原创 java并发基础知识
1.volatile关键字的应用原理:线程共享变量,处理器内存(副本内存)和系统内存(主内存)同步刷新,优缺点:可以保证线程之间的可见性,不能保证原子性;2.synchronized关键字的应用原理:无所状态,偏向锁,轻量级锁,重量级锁,只能升级不能降级优缺点:可以保证原子性,性能差于volatile名称 备注静态代理 简单,代理模式,是动态代理的理论基...
2020-01-17 10:58:16
100
原创 高频面试点总结
一.hashmap1.初始化数组table,数组维护了Node,Node里面有key v hash和下一个Node2.扩容,扩容两倍,将旧数据放到新的数组中去3.modCount记录hashmap结构发生变化的次数为什么hashmap是线程不安全的? 多个线程同时扩容操作,需要对将table复制到新的table或者红黑树中,可能会造成数据丢失等问题如何处理hash冲突,...
2020-01-08 11:11:25
85
原创 CPU满了或者其他性能问题分析步骤
1.堆(Heap):几乎所有的对象和数组都被分配到了堆内存中,堆内存分为新生代和老年代.2.java栈:java对和程序数据密切相关,java栈和线程密切相关,java栈是显示私有的一卡空间1. top -c2. top -H -p 86184 ,查询该进程下的线程资源3、使用jstack 86184 > jstack.txt ,输出 该进程下的线程信息,4、比如,...
2019-11-26 11:25:44
246
转载 MySQL 索引最左匹配原则
MySQL 索引最左匹配原则2016-10-24 22:11:58zhifeng687阅读数 4750csdn原文:http://blog.csdn.net/zhu19774279/article/details/46473981本文的原文地址在此:https://www.percona.com/blog/2015/04/27/indexing-101-optimizing-mys...
2019-10-09 15:29:16
139
转载 Java性能优化的50个细节(珍藏版)
转载https://www.jianshu.com/p/7a466955f588Java性能优化的50个细节(珍藏版)Java资讯库关注在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。 1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所...
2019-07-27 15:58:00
151
原创 sql优化
优化原则:1.避免排序,可以考虑联合索引2.jion避免被驱动表全表扫描,增加索引1.问题点:按照id倒排序和分页放在jion之后导致解决方案:先进行排序和分页已经条件查询,后join原有sqlSELECT a.id, b.bu_name buName, c.brand_name brandName, e.real_name memb...
2019-07-25 14:23:47
154
3
转载 Java集合必问
Java集合必会14问(精选面试题整理)我没有三颗心脏关注转载https://www.jianshu.com/p/939b8a672070前言:把这段时间复习的关于集合类的东西整理出来,特别是HashMap相关的一些东西,之前都没有很注意1.7 ->> 1.8的变化问题,但后来发现这其实变化挺大的,而且很多整理的面试资料都没有更新(包括我之前整理的...)...
2019-04-17 11:27:23
113
转载 mysql和java类型对应关系
varchar不定长字符串字符串或是没有合适类型时,可以选择它作为字段类型对应Java中的Stringint bigint数值一般以int作为数字的默认选择,数值很大时使用bigint对应Java中的Longchar定长字符串适用于盐、md5加密后的密码等情况对应Java中的Stringfloat double浮点数适用于各...
2019-03-27 10:36:56
308
转载 代码质量管理平台SonarQube的安装、配置与使用
https://www.cnblogs.com/qiumingcheng/p/7253917.html
2019-01-30 14:21:19
93
原创 程序员的软技能修炼
目录黄金法则一:不要认为所有人都能认同你,绝对不可能!黄金法则二:处理人际关系的学习没有终点,是个终身过程.黄金法则三:听别人说话猜测他的关键点,每一句都挺懂我觉得不可能,要找关键点黄金法则四:有些人你需要以礼待之,有些人不需要太客气,因为他觉得你不要对他客气,那你就不需要客气.一.领导力1.通过信任关系对别人施加影响,从而大大提高领导能力,失去了信任关系,领导能力急...
2019-01-17 11:40:09
166
转载 代码重构小技巧
例子1:原文:https://blog.csdn.net/csh_275308734/article/details/82150983 if(a == 1) { if (b == 2) { //逻辑 }}可以改为:if(a == 1 && b == 2) { //逻辑}例子2: if(a==1) { i...
2019-01-10 11:08:45
110
原创 java基础知识
1父子类构造方法因此得出结论,在定义一个类时,如果没有特殊需求,尽量在类中定义一个无参的构造方法,避免被继承时出现错误。 如果父类的构造方法是带参数的,而且没有无参数的构造方法,那么在子类的构造方法中必须显式地调用父类的构造方法。 如果父类的构造方法是无参数的,那么在子类中写不写都可以,不写的话会隐式地调用。 若父类中没有空参数的构造函数,那么子类的构造函数内,必须通过super语句指...
2018-12-28 11:18:32
116
转载 git
如何用命令将本地项目上传到githttp://www.cnblogs.com/eedc/p/6168430.html1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库git init2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件git add .3、用命...
2018-12-26 14:28:17
89
转载 java8集合排序
原文https://blog.csdn.net/gao1440156051/article/details/71126194 目录1.普通排序2.使用增强版的Comparator接口3.使用lamda表达式进行排序4.多条件排序1.普通排序Collections.sort(voList);//逆序voList.sort(comparing(Apple::ge...
2018-12-25 09:18:16
2600
1
原创 编写框架ssm总结
一.常见错误反射调用失败 通常是有成员变量没有注入成功,出现再AopHelper代理生成的时候 反射调用失败lang.IllegalArgumentException: argument type mismatch request获得的参数类型跟方法中的参数类型不一致 package com.hikvision.sro.core.config;import ...
2018-12-21 20:42:51
140
转载 JAVA集合
目录 ArrayList和LinkedList是常用的两种存储结构交集,并集,差集迭代器循环ArrayList和LinkedList是常用的两种存储结构 ArrayList和LinkedList可想从名字分析,它们一个是Array(动态数组)的数据结构,一个是Link(链表)的数据结构,此外,它们两个都是对List接口的实现。 前者是数组队列,相当于动态数组;...
2018-12-21 20:20:37
84
原创 多线程+并发基础知识
1.springmvc中线程安全问题 int = 0 常量 static volatile 无修饰 @Scope("prototype") 不安全 安全 安全 @Scope("single") 不安全 不安全 不安全 2.volatile关键字只能保...
2018-12-21 17:10:36
109
原创 常见报错及解决方案
一.数据库或SQL相关1.无效的列类型1111很大可能是字段类型对不上,看实体类,xml,和数据库,采用字段二分排除法排查,还有可能是参数为空 mybatis.configuration.jdbc-type-for-null = NULL 而当参数不为 NULL 时,Mybatis 会针对参数自身的类型调用 PreparedStatement 上不同的方法,此时 JdbcTyp...
2018-12-21 11:00:18
612
原创 日期时间处理
目录1.时间格式2.日期加加减3.遍历最近15天4.遍历两个日期1.时间格式yyyy-MM-dd HH:mm:ssyyyy年MM月dd日 HH时mm分ss秒2.日期加加减 //获取时间加一年或加一月或加一天 Date date = new Date(); Calendar cal = Calendar.getInstance();...
2018-12-20 09:18:20
415
原创 如何快速通过url定位到controller中的方法(采用AOP)
aspect 拦截controller显示指明import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Pointc...
2018-12-15 22:29:30
7850
1
原创 Excel导入导出操作
基本步骤1.校验是否是导入模板如果是从导出的Excel填充数据然后再导入,可考虑把数据缓存到redis校验,提升校验速度2.校验数据一次性全部校验,考虑校验速度3.考虑数据量大批量导入4.HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls; XSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx;...
2018-12-13 15:48:55
873
原创 linux命令
1.开启某个端口firewall-cmd --zone=public --add-port=10000/tcp --permanent2.解压tar xzvf elasticsearch-6.5.0.tar.gz3.授权chmod 775 -R root(路径)
2018-12-11 14:02:04
424
原创 spring启动过程
1. Spring 在web容器中通常是通过在web.xml文件中配置切入点来进行相关初始化的。2.public class ContextLoaderListener extends ContextLoader implements ServletContextListener从图中可以看出,首先要执行的是static初始化方法。 问题:1.aop是不是一定要在io...
2018-12-03 14:43:50
94
原创 jdk自带wsimport生成webservice客户端
1.webservice带用户名和密码的代码生成wsimport -encoding utf-8 -d D:\test -keep http://sapwsp50.sapdns.cn:8850/dir/wsdl?p=sa/155f5e1d47ab33d0a6fdb1a9b55b833e -Xauthfile D:\Xauthfile.txt -p hikvision.wsbx.oa在本地添...
2018-11-27 10:00:04
399
1
原创 数字
目录一.基本类型比较只能用"==",不能用"equals"二.包装类型推荐用equals(BigDecimal 除外)三.Integer 和int 比较四.BigDecimal 比较五.Long 比较六.float,double 类型不能比较相等或不等,但可以比较>,<,>=,<=七.数字格式化八.char 是基本数据类型,没有的new的时候...
2018-11-26 10:05:39
117
原创 设计模式
https://www.jianshu.com/p/d6ff54d72afb目录一.代理模式二.责任链模式三.策略模式四.观察者模式五.适配器模式六.模板方法七.装饰者模式八.工厂模式九.单例模式一.代理模式 通过生成代理对象,控制原对象的或者增强原对象。静态代理jdk动态代理:代理接口 实现InvocationHandler,通过反射...
2018-11-24 23:07:49
133
原创 sql(复杂)
目录1.两个字段确定唯一,查询有没有重复2.删除ID不同其他字段都相同的数据3.多个字段in查询4.分组查询前N个5.select distinct 后面跟left jion 分页可能会导致数据重复问题6.left jion 统计统计右表与右表每条数据的关联 数据7.查询两个时间间隔的小时数8.按照拼音排序9.left join关联表可以添加条件10...
2018-11-22 20:17:44
305
转载 java流处理
转载: 深蓝至尊 https://www.cnblogs.com/shenlanzhizun/p/6027042.html目录一. 流式处理简介二. 中间操作2.1 过滤filterdistinctlimitskip2.2 映射mapflatMapdistinct三. 终端操作3.1 查找allMatchanyMatchnoneM...
2018-11-22 14:14:41
691
原创 编程经验
字段命名必须做目录一.编程规约二.数据库或SQL相关三.java代码相关一.编程规约1.规避空指针是一个程序员的基本素养2.开发完成之后按照文档测试每一个功能(注意必须每一个功能都自测到)3.数据库设计考虑冗余4.添加字段或者新增查询注意历史数据,避免空指针5.新建和修改校验是否重复新建根据param1和param2去数据库查询 修改根据id去数据库...
2018-11-21 16:29:27
305
1
转载 sql优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: ...
2018-11-21 15:30:06
81
原创 java常见执行速度慢优化
1.排查是否有循环操作数据库,如果有改为批量插入或者更新;2.排查是否有循环操作数据库,改为一次性查询数据库得到所有结果,使用map来缓存结果后操作(如通过code来查询name);3.排查是否循环调用微服务,改为一次性调用微服务并用map来缓存结果;4.采用spring cache redis缓存来提升效率(缓存地区,枚举,常量等等数据);5.无法规避循环操作可以考虑用java8...
2018-11-19 13:30:46
2364
转载 spring加载过程
spring中文文档https://muyinchen.gitbooks.io/spring-framework-5-0-0-m3/content/322-%E5%AE%9E%E4%BE%8B%E5%8C%96%E5%AE%B9%E5%99%A8.html1.spring容器初始化的整个流程图如下 2.创建WebApplicationContext对象流程如下3.读取X...
2018-11-09 10:32:18
3129
原创 springmvc学习
springmvc默认是单例模式存在线程安全问题有几种解决方法:在Controller中使用ThreadLocal变量 在spring配置文件Controller中声明 scope="prototype",每次都创建新的controller 所有在使用spring开发web 时要注意,默认Controller、Dao、Service都是单例的。1、SpringMVC的运行流程...
2018-11-05 15:08:12
421
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人