- 博客(33)
- 收藏
- 关注
原创 HashMap和Hashtable源码分析
我们都知道HashMap和Hashtable的区别是:HashMap线程不安全,允许NULL值和Null键。Hashtable线程安全,不允许Null值和Null键。下面我们用多线程去分别操作HashMap和Hashtable看看会出现什么状况。首先是用多线程去操作HashMap:package com.xql.thread.MyThread;import java.util.Has...
2019-04-07 12:34:45
497
原创 可重入锁、不可重入锁、公平锁、读写锁
可重入锁:指的是在同一个线程中,获取锁之后再次使用同样的方法或对象中的其他方法可以直接操作,而不需要重新获取锁,它基于线程的粒度,per-thread不可重入锁:指的是每次使用锁方法时,都需要获取新的锁,即使在同一个线程中调用同一个方法都需要等待上一个锁的释放,它是基于method粒度,per-invocation可中断锁:在等待获取锁过程中可中断,注意是在等待锁过程中才可以中断,如果已经获取...
2019-03-22 00:15:23
821
原创 ArrayList线程不安全的体现原理
我们从学习集合时就知道Arraylist线程不安全,但是它到底怎么线程不安全呢?从源码中我们看到add方法public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! elementData[size++] = e; return tru...
2019-03-15 17:15:08
1088
原创 java.util.zip.ZipException: invalid CEN header (bad signature)
解决方法:删除maven仓库中的jar包 然后更新项目
2019-01-28 18:56:12
3974
原创 linux安装mysql遇错
Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid).错误解决:创建此文件 /var/log/mariadb/mariadb.log删除此文件:/etc/my.cnf
2019-01-18 20:52:34
416
原创 Nginx(二)之负载均衡
什么是负载均衡:负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外供应效力而无须其他服务器的辅助。经过某种负载分管技术,将外部发送来的央求均匀分配到对称结构中的某一台服务器上,而接收到央求的服务器独登时回应客户的央求。均衡负载可以平均分配客户央求到服务器列阵,籍此供应快速获取重要数据,解决很多并发访问效力问题。这种群集技术可以用最少的出资取得接近于...
2019-01-17 17:17:19
170
原创 Nginx(二)之反向代理
反向代理,代理的是服务端的服务。Nginx的反向代理操作:1、上传一张图片到html文件夹中2、开启Nginx并访问图片无需做任何配置直接端口访问+图片名称即可。二、反向代理多个项目1、首先在html文件夹下创建一个名为wwwroot的文件夹。2、在wwwroot中创建3个文件夹分别是111,222,333。3、将html中的index.html分别复制进111,222,33...
2019-01-17 15:48:28
209
原创 Nginx(一)
什么是Nginxnginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定,所以现在很多知名的公司都在使用nginx。Nginx应用场景1、http服务器(静态网页展示)2、虚拟主机。可以实现在一台服务器虚拟出...
2019-01-17 11:11:38
231
原创 linux命令界面下怎么链接网络
Linux命令界面下怎么链接网络:1、输入ifconfig命令获取网卡2、输入ifup ens33 命令,表示成功
2019-01-10 14:17:39
2012
原创 索引实现原理和规则
数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用 B 树及其变种 B+ 树。1、当我们查询一条数据时, 它会在数据库中一个个去查找。这样是比较耗费时间的。如果这个条数据时唯一的,在后面加上limit 1 查询时 它就不会往后面查。2、添加了索引,因为B树的原因,查询时间和次数就会大大减少具体的详细原理太多了 就不上传了。。。...
2019-01-10 10:49:46
371
原创 mysql优化--全文索引
创建一张表:CREATE TABLE fullindex ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title,body) )engine=myisam charset utf8;...
2019-01-10 10:13:41
534
原创 The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. Yo
解决方案直接在url后面加上&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
2019-01-09 22:24:51
156
原创 mysql优化(二)
全文索引什么事全文索引:MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度。停止词, 因为在一个文本中,创建索引是一个无穷大的数,因此,对一些常用词和字符,就不会创建,这些词,称为停止词.比如(a,b,mysql,the)mysql> select match(title,body) against (‘mysql’) from f...
2019-01-09 20:27:02
226
原创 mysql优化(一)
MySQL如何优化表的设计合理化(符合3NF)添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]SQL语句优化分表技术(水平分割、垂直分割)读写[写: update/delete/add]分离存储过程 [模块化编程,可以提高速度]对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]mysql服务器硬件升级定时的去清除不需要...
2019-01-09 11:37:38
303
转载 swagger2 注解整体说明
@Api:用在请求的类上,表示对类的说明tags=“说明该类的作用,可以在UI界面上看到的注解”value=“该参数没什么意义,在UI界面上也看到,所以不需要配置”@ApiOperation:用在请求的方法上,说明方法的用途、作用value=“说明方法的用途、作用”notes=“方法的备注说明”@ApiImplicitParams:用在请求的方法上,表示一组参数说明@ApiImpli...
2019-01-08 17:31:38
397
原创 eclipse和STS安装svn插件
1、下载subeclipse插件,下载地址[http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=22402、根据svn版本下载subeclipse插件的版本一般是下载3、将下载好的插件解压并在STS或者eclipse中创建Plugins文件夹,将解压后的插件复制到这个文件夹。4、在STS或者eclipse中创建d...
2019-01-04 09:37:12
393
1
原创 Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/upload
出现这个错的时候百度了,大部分说是缺少javax.faces-api-2.2.jar这个jar包。然后自己添加了这个jar包过后还是出错,后来发现是设置问题。在IDEA中不能加这个。把这个删除就好了。运行成功:希望对 大家有帮助...
2018-12-29 17:40:30
236
原创 error code [0]; sql injection violation, syntax error: syntax error, error in :'rder by picture_ord
前端传值未能接收到时应当怎么改?修改controller层:然后发现还是报错,报错如下:修改:这样就解决了。成功:
2018-12-28 15:44:24
6795
原创 Error resolving template "picturepicture", template might not exist or might not be accessible by an
Error resolving template “picturepicture”, template might not exist or might not be accessible by any of the configured Template Resolvers项目中做图片上传时出现的一个错误,认识到出了错不要第一时间去百度,因为你百度出来的答案很大的几率是错误的。报了404第...
2018-12-27 18:16:33
433
原创 $('#bannerAddId').serialize()
$("button").click(function(){ $("div").text($("form").serialize());});定义和用法serialize() 方法通过序列化表单值,创建 URL 编码文本字符串。详细说明.serialize() 方法创建以标准 URL 编码表示的文本字符串。它的操作对象是代表表单元素集合的 jQuery 对象。表单元素有几种类型:...
2018-12-26 10:04:25
929
原创 Mybatis缓存机制及mybatis的各个组成部分
Mybatis一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。 2. 二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定...
2018-12-18 19:57:00
203
原创 IDEA从svn检出项目报错Cannot checkout from svn: 'C:\Program' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
Cannot checkout from svn: ‘C:\Program’ 不是内部或外部命令,也不是可运行的程序或批处理文件。解决方法:去掉默认框里面的勾就可以了
2018-12-18 15:39:09
15802
8
原创 org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template
一:网上大部分的解决办法:@Controller@RequestMapping("")public class ExampleController {@GetMapping(“example”)public String Example(){return “/example/list”;}然后自己的出错原因是:路径和html的文件名写错。修改:测试成功;...
2018-12-15 16:21:27
39104
11
原创 Error starting ApplicationContext. To display the conditions report re-run your application with 'de
当创建springboot出现Error starting ApplicationContext. To display the conditions report re-run your application with ‘debug’ enabled.在网上看了很多有的说是jar包重复,有的说是Controller包和Application包处于平行位置。然后我都检查了,然后我出的错不属于这...
2018-12-14 10:35:49
377992
36
原创 sql事务总结
一、事务概述1.什么是事务一件事情有n个组成单元 要不这n个组成单元同时成功 要不n个单元就同时失败就是将n个组成单元放到一个事务中2.mysql的事务默认的事务:一条sql语句就是一个事务 默认就开启事务并提交事务手动事务:1)显示的开启一个事务:start transaction2)事务提交:commit代表从开启事务到事务提交 中间的所有的sql都认为有效 真正的更新数据库...
2018-12-13 14:26:05
758
原创 文件目录分离算法
目录分离算法:private String makePath(String filename, String savePath) {//得到文件名的hashCode的值,得到的就是filename这个字符串对象在内存中的地址int hashcode = filename.hashCode();//得到名为1到16的下及文件夹int dir1 = hashcode & 0xf;S...
2018-12-13 14:13:26
935
1
原创 web和debug问题
遇到的问题:前台不显示数据?通过debug运行,查看数据是否已经被拿到,如果已经被拿到而前端无法显示,就说明是前端代码有问题。此时应该查看前端代码是否写错。遇到的问题: 页面在加载完成时就出现后台查询数据使用js代码通过jsp从上到下从左到右的解析方式解析。DEBUG调试出现传值问题:传值参数是否相同,直接复制sql语句进行查询,思维:连贯性的去想每一行代码,养成连贯性思维。遇到此...
2018-12-13 14:05:20
354
1
原创 java反射总结
反射是获取运行时的类,对类的各个组成部分进行剖析,得到类个组成部分(方法、属性),把各个组成部分映射为独立的java对象,并可以对各个组成部分进行操作。反射的好处?编程之高级,框架之灵魂。反射技术可以用来做底层代码的封装,提高了代码的复用性和扩展性。获取Class对象方式类名.classClass clazz = Student.class对象.getClass()Class ...
2018-12-13 13:59:00
143
原创 javaweb--servlet学习总结
doget(httpservlet…)中的servlet由tomcat服务器创建GenericeServlet实现了servlet接口,然后HttpServlet继承了GenericeServlet,servlet接口中有init(),service(),destroy()等方法,然后GenericeServlet实现了servlet接口之后将service方法改为抽象service方法。H...
2018-12-13 13:52:29
214
原创 javaweb学习总结
重定向请求转发区别:重定向后浏览器地址值会发生改变。重定向request域对象不能共享数据,因为request域的范围是一次请求一次响应。而转发能够共享数据请求转发的路径写法,只是需要写url-pattern的地址即可,不用带项目名,因为是在内部操作,属于服务器端的写法重定向是属于客服端的路径,客户端要再次向服务器端发起请求,如果路径不对将无法请求到。请求转发只能跳转站内资源,不能...
2018-12-13 13:40:00
467
转载 MyBatis学习总结——优化MyBatis配置文件中的配置
MyBatis学习总结——优化MyBatis配置文件中的配置一、连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下:复制代码 <?xml version="1.0" encoding="UTF-8"?> ...
2018-12-13 13:31:24
166
转载 MyBatis学习总结——Mybatis缓存
MyBatis学习总结——Mybatis缓存一、MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。 2. 二级缓存与一级缓存其机制...
2018-12-13 13:23:30
179
原创 当出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)时怎么解决
当出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)时怎么解决这是楼主遇见的错误用maven整合ssm的时候出现的。出现这种错误的原因分析:1、dao和mapper里面没有这个方法或者mapper里面id配置错误2、classes文件夹没有编译过去。3、mybatis配置文件出...
2018-12-12 15:44:10
359
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人