- 博客(34)
- 资源 (2)
- 收藏
- 关注
原创 红黑树学习
红黑树基础为什么红黑树不适合做索引计算机组成原理:磁盘,SSD,内存磁盘页:16kb读取磁盘次数过多读取浪费,每次读取可能还没有1kb为什么HashMap选用红黑树?因为HashMap存储的数据时在内存中,所以就不涉及上述问题...
2021-11-06 13:55:08 96
原创 java调试体系(JDPA)
参数解释transport=dt_socket //JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。address=8000 //JVM在8000端口上监听请求。server=y //y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。suspend=y //y表示启动的JVM会暂停等待,直到调试器连接上。//suspend=y这个选项很重要。如果你想从Tomcat启动的一开始就进行调试,那么就必须设置suspend=y。在t
2021-11-04 17:59:43 575
原创 mysql索引优化
mysql索引优化全值匹配 ,效率好;最佳左前缀法则 ,底层数据结构为b+tree的原因;不在索引列上做任何操作(计算,函数,自动/手动类型转换),会导致索引失效而转向全表扫描;存储引擎不能使用索引中范围条件右边的列;尽量使用覆盖索引(索引列和查询列一致/部分一致),减少select *;mysql在使用不等于(!=,<>)的时候无法使用索引会导致全表扫描;is null,is not null 也无法使用索引 ;like以通配符%开头,mysql索引失效会变成全表扫描,可使用
2021-02-15 14:15:48 128
原创 git maven linux环境自动更新代码打包
git maven linux环境自动更新代码打包前置条件shell脚本前置条件已安装jdk已安装git已安装maven项目已在服务器上shell脚本#!/bin/bash# 打包后的jar名称name="demo.jar"# 分支名称feature="a01"# 项目所在路径path="/e/temp/gittest/gittest"#1.更新分支信息git -C ${path} fetch --all #2.强制切换并覆盖分支git -C ${path} che
2021-01-13 16:18:45 306
原创 @Value设置默认值后,获取不到配置值的原因
当前使用版本:Spring Framework version is 5.2.5.RELEASE解析@Value的代码位置:org.springframework.beans.factory.support.AbstractBeanFactory#resolveEmbeddedValue假设配置了: @value("${server.servlet.context-path:/}")1、当存在多个值解析器时,如果第一个解析器获取不到配置项(server.servlet.context-path)的值
2020-12-31 14:07:25 4389 1
原创 shipyard安装不迷茫
ship安装环境准备centos7已安装好docker开启端口# 用于访问shipyard页面firewall-cmd --zone=public --add-port=8080/tcp --permanent# 服务发现(etcd)firewall-cmd --zone=public --add-port=4001/tcp --permanentfirewall-cmd --zone=public --add-port=7001/tcp --permanent# Docker代理服务
2020-12-29 01:37:36 410 1
原创 vsftpd安装,配置虚拟用户
vsftpd安装,配置虚拟用户,问题总结准备工作检查是否有安装vsftpd检查是否有db_load关闭SElinux下载vsftpd(\color{red}{这是我使用的版本 vsftpd-3.0.2-25.el7.x86_64.rpm})并上传到服务器安装vsftpd配置vsftpd新建一个宿主用户,用于vsftpd虚拟用户登录关联映射生成虚拟用户数据文件配置虚拟用户验证文件启动测试问题总结准备工作检查是否有安装vsftpd# 执行命令无输出,表示没有安装rpm -qa | grep vsftp
2020-09-15 22:34:18 705
原创 volatile关键字与内存可见性
内存可见性问题来源多个线程操作共享变量的情况下,存在内存可见性问题。如下图所示,主线程根据flag的状态来决定是否继续执行循环;但是当线程1将flag改为false后,主线程可能会因为内存可见性的原因,不能及时发现flag已经从true改为了false,导致不能及时结束或不能结束while循环。这是可以使用volatile关键字对flag进行修饰,从而保证flag变量的内存可见性。volatile不能够保证变量的原子性i被volatile修饰,线程在操作i之前会直接从主存获取i的值,从而保证了内存可
2020-09-13 00:31:52 146
原创 java bio&nio学习
传统io(BIO)单线程环境下单线程环境下阻塞,要么读,要么写多线程环境下(伪异步IO)多线程环境下,对于局部(单个线程)而言是阻塞的;对于全局(整个多线程环境)而言是非阻塞的优点阻塞io对于大文件的读写效率较高,因为建立读取连接后,就可以持续进行读写,直到操作完成。缺点操作系统对于应用可创建的线程数有限制频繁的创建和销毁线程,导致开销大,可使用线程池来解决该问题(使用线程池时不推荐使用Executors进行创建,因为Executors创建的线程可能不符合业务场景的需求,从而导致资源
2020-09-12 23:01:02 123
原创 springboot+ueditor+OSS+若依框架+vue-cli3前后端分离
一、准备UEditor在 官网下载合适的UEditor(这里使用的是jsp版本)解压红色框部分是前端需要的\color{red}{红色框部分是前端需要的}红色框部分是前端需要的,jsp文件夹里面的是后台需要的\color{blue}{jsp文件夹里面的是后台需要的}jsp文件夹里面的是后台需要的二、vue-ueditor-wrap组件安装vue-ueditor-wrapnpm i vue-ueditor-wrap在main.js引入vue-ueditor-wrapimport VueUedi
2020-05-24 13:01:36 2500 8
原创 处理字符串中英文宽度不一致问题小工具
java获取指定宽度字符串的小工具实现功能通过给定下标计算出指定宽度的下标位置计算字符串宽度计算字符串宽度(按英文宽度)计算字符串宽度(按中文宽度)填充空白字符到字符串头部,以达到期望的宽度填充空白字符到字符串末尾,以达到期望的宽度实现功能通过给定下标计算出指定宽度的下标位置计算字符串宽度计算字符串宽度(按英文宽度)计算字符串宽度(按中文宽度)填充空白字符到字符串头部,以达到期望的宽度...
2019-10-15 17:32:25 2400
原创 Zookeeper安装
内容概要一、单节点安装二、单节点伪分布式安装(不建议)三、完全分布式安装四、常见问题准备工作1、由于zookeeper使用java编写,所以需要java运行环境,这也就意味着,在安装zookeeper之前需要安装jdk。2、下载zookeeper并上传到服务器。开始安装Linux目录结构在这里插入图片描述一、单节点安装1、解压tar -zxvf zookeeper-3.4...
2019-06-07 11:36:07 415
原创 Linux环境下Jdk安装
准备工作:下载符合自己使用要求的jdk(Linux环境的)版本,上传到服务器。开始安装我所使用的Linux目录结构一、进行解压tar -zxvf jdk-7u65-linux-i586.tar.gz -C ../app解压完成后可以cd到app目录下查看解压后的jdk文件夹二、配置环境变量解压完成后,jdk就算是安装完成了,但是想在任何地方都可以直接使用java命令来进行操...
2019-06-07 10:02:36 164
原创 SSH免密登录
SSH免密登录SSH免密登录原理生成SSH密钥对将生成的公钥拷贝到目标主机上将请求主机的公钥加入目标主机的授权列表在目标主机用户家目录查看.ssh目录下是否存在authorized_keys文件将请求主机的公钥追加到authorized_keys文件检验免密登录效果SSH免密登录原理生成SSH密钥对ssh-keygen -t rsa将生成的公钥拷贝到目标主机上scp id_rsa....
2019-02-10 15:49:04 856 2
原创 hadoop伪分布式环境搭建
hadoop伪分布式环境搭建一、修改主机名,IP映射修改主机名修改IP映射二、安装jdk三、安装hadoop四、配置hadoop修改slaves修改hadoop-env.sh配置core-site.xml配置hdfs-site.xml配置mapred-site.xml配置yarn-site.xml关闭防火墙格式化启动hadoop一、修改主机名,IP映射为了在集群管理中,能够方便的对各个节点进行...
2019-02-10 15:37:36 5737
原创 使用oracle发生标识符无效解决办法
使用oracle时,发生标识符无效解决办法一直以来写SQL语句发生标识符无效一般多为列名写错导致但是今天发生了一个意外的情况,在oracle数据库建了一张表,创建成功后,发现数据表的列名是小写的,想了想看过的书里面说过oracle会自动将小写转换成大写,于是就选择性忽略了. 由于oracle会自动将我们写的SQL语句列名自动转为大写,所以平时写SQL时,采用全小写方式居多. 但是今...
2018-08-18 12:16:15 94811 16
原创 第1章计算机系统漫游(1.1)
第一章通过一个C语言的hello小程序,对计算机系统的进行一个轮廓性的描述,并在其中穿插本书各个章节的的主要讲述内容,作为了解本书知识串接的引导。 关键字: 上下文,程序翻译过程,系统硬件组成,高速缓存,对管理硬件的抽象,Amdahl定律上下文相同的数据,处于不同的环境,就会表达出不同的含义,这里的环境即是上下文程序翻译过程计算机只能识别机器语言,所以任何的编程语言都需要通...
2018-05-13 11:44:44 244
原创 js请求Java WebService出现问题的解决
根据网上的方法使用js调用WebService,但是出现Expected elements are <{}arg1>,<{}arg0>,<{}arg2>错误,在网上搜了解决办法,好多都是说WebService后台配置没有明确表示参数名,在后台使用注解方式标识参数名后即可。但是我修改了以后还是不行。 解决思路: 参数名只是显示出来让程序员看懂的,所以应该不会因...
2018-04-18 15:32:17 1468
原创 MySQL笔记(三):操作表中的数据记录
一、新增数据二、查询数据三、修改数据三、删除数据在上一篇文章(MySQL笔记(二):操作表)中,忘了补充一下auto_increment(MySQL数据库特有)的知识了。 现在补充一下:auto_increment代表的是自动递增,使用这个关键字,要求被该关键字修饰的字段拥有索引。默认每次递增1,既是插入一条记录前,关键字修饰的自段值自动增加1,然后使用自增后的值作为当前记录...
2018-04-06 19:19:57 220
原创 MySQL笔记(二):操作表
一、创建表使用 create table 表名( 字段名 类型(长度) [约束], 字段名 类型(长度) [约束], 字段名 类型(长度) [约束] );进行数据表的创建 有时我们需要查看创建表的SQL语句,以便做出修改,这时需要使用show create table 表名;命令,注意图中显示的字符集名称 修改数据表字符集 alter talbe...
2018-03-29 15:11:39 202
原创 MySQL笔记(一):操作数据库
虽然现在各种数据库连接工具层出不穷,但是了解必要的sql命令还是有必要的,学会了底层的SQL命令后,在使用连接工具时,就能清楚的知道他到底为我们做了哪些事。一、登录MySQL打开命令行,将当前目录切换到{$MySqlHome}\bin下(如果了解配置环境变量的,可以将这个路径配置到环境变量中,这样就可以在任意目录下执行bin目录下的程序了)。使用mysql -h主机名/IP地址 -P端...
2018-03-29 14:19:28 214
原创 Nginx简单配置
Nginx简单配置及无法关闭的问题下载Nginx启动Nginx配置Nginx关闭Nginx一、下载Nginx在浏览器地址栏输入Nginx官网地址http://nginx.org/,或者在百度直接搜索Nginx即可查到官网 选择需要的版本进行下载 二、启动NginxNginx解压即可启动,解压后的目录结构如图 鼠标左键双击nginx.exe或者在命...
2018-03-26 13:21:12 371
原创 Java对象的序列化与反序列化
Java对象序列化到文件或数据库由于前段时间在学习Java web方面的知识,涉及到了session对象的钝化与活化,对于将Java对象如何序列化到数据库中一直没有解决。今天看到一篇文章,得到了启发,并做了改进,得出本文一、准备一个Java类用于序列化与反序列化,该类必须实现Serializable接口package ser_test;import java.io.Serial...
2018-03-18 21:03:54 240
原创 Android真机测试出现No target device found
出现该问题的原因有很多,总结如下: 1、设备驱动安装不成功,造成Android设置没有处于OnLine状态,导致不能识别Android设备 解决办法: 下载360手机助手或者百度手机助手等,他们会自动安装与手机匹配的驱动 2、没有开启开发者模式或者没有允许使用USB进行调试 3、没有进行相应设置 解决办法: (1)点击app选择Edit Configurations.. (
2018-01-30 18:35:49 5969
原创 安卓实现图片放大镜效果
Android实现图片放大镜效果,可以将用于存储图片ID的数组换为动态获取手机照片,从而实现更强大的功能----->图片浏览器
2018-01-15 17:05:04 4522
原创 安卓模拟器访问不了Tomcat
导致安卓模拟器访问不了Tomcat,主要是因为android模拟器本身的IP地址就是127.0.0.1或者localhost了,而在Tomcat中默认的host就是电脑的localhost,所以最好的方法就是将Tomcat的server.xml文件中的host配置成电脑的真实IP地址。 1、找到自己的IP地址 1) 2) 3) 4) 2、找到{Tomcat
2017-12-29 16:03:29 2590 2
原创 Tomcat虚拟主机配置
Tomcat配置虚拟主机有两种方式,但是两种方式都是对Tomcat安装目录\conf\server.xml文件进行修改从而达到目的 方式一: 基于主机名 在F盘新建hostVirtual目录,并在hostVirtual目录中创建hello文件夹,在此文件夹下编写haha.html用于测试 万事具备,只差修改host 找到C:\Windows\System32\drive
2017-11-28 16:47:46 370
原创 servlet在后台获取不到值的原因
关于Servlet在后台接收不到前端传递的数据问题,可能原因如下: 1、前端传递的参数名和后台获取数据时使用的参数名不一致 2、Servlet接收参数时(包括URL传递参数),方法调用错误 我就是因为使用了错误的方法:request.getAttrbute(“参数名”); 来获取前端传递过来的值。 正确接收前端传递过来的参数的方法是: reques
2017-11-28 16:07:19 7373
原创 hibernate中NoSession问题
在Spring整合hibernate的环境中,由于hibernate将所有全权交给了Spring管理,所以Session的开启与关闭也有Spring管理 Spring会开启Session的几种情况 1、在web.xml中配置了OpenSessionInViewFilter,当有访问经过filter时,session会被开启。 2、在事务环境中,session会被开启所以发生NoSession的
2017-11-17 16:59:06 1755
原创 springmvc整合ueditor,ueditor修改上传路径及页面回显问题
ueditor上传图片,文件,视频等的配置,实现了上传图片到项目外,可以进行复制粘贴图片上传,可以复制网页图片上传,还涉及到tomcat虚拟路径的配置
2017-10-17 13:08:18 1047
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人