- 博客(29)
- 收藏
- 关注
原创 hadoop64位系统编译
hadoop源码编译64位系统版本写在前面:因为Hadoop不提供64位编译好的版本,只能用源码自行编译64位版本,所以本文以hadoop2.6.0为例进行源码编译。值得注意的是如果想编译2.6.0版本的hadoop需要用JDK7,如果用JDK8编译会报这样的错误:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.8.1:jar (module-javadocs) on project hado
2020-12-06 17:49:27 324
原创 redis哨兵
持久化为了保证数据在服务器故障时不会丢失两种:RDB和AOFRDB:将某个时间点的所有数据都存放到硬盘上,可以创建副本和快照,数据量大的话,保存快照时间较长AOF:将命令追加到AOF文件的末尾连接过程主服务器创建快照文件(RDB文件),发送给从服务器,同时在发送期间使用缓冲区记录执行的写命令,快照文件发送完毕之后,再从主服务器中发送存储在缓冲区的写命令从服务器丢弃所有旧数据,载入主服务器发来的快照文件,之后直接接收主服务器发来的命令主服务器每执行一次写命令,就向所有的从服务器
2020-11-19 22:39:37 136 1
原创 redis不常用四种数据类型
redis其他四种数据类型操作(String看redis第一篇)(1)String类型,字符串(绝大多数情况下使用)redis不常用的数据类型操作(2)Hash类型,字典1 HDEL key field1 [field2]删除一个或多个哈希表字段2 HEXISTS key field查看哈希表 key 中,指定的字段是否存在。3 HGET key field获取存储在哈希表中指定字段的值。4 HGETALL key获取在哈希表中指定 key 的所有字段和值5 HINCRBY key
2020-11-19 22:38:47 1334
原创 redis搭建集群
集群搭建一个redis,存的数据不够多,多个Redis可以组成一个集群,能承受的并发请求增加,总数据量增加,还得像1个redis一样的被人使用。通过数据分片和备份主从同步:主节点的数据操作会同步到相应从节点读写分离:一台机器可以读写,其他机器只能读演示:两台服务器,一主一从,redis1是主节点(领导),redis2是从节点。各自先运行成功,自己只能看自己的数据主从配置:主节点(6379),配置文件:bind 0.0.0.0protected-mode norequirepa
2020-11-17 11:45:10 107
原创 redis
Redis简单安装以及常用操作命令在这之前先了解一下NOSQL:NOSQLNOSQL:非关系型数据库(功能弱,速度快)文档数据库:mongdb键值数据库:redis图表数据库:neo4j列数据库:hbaseRedis1.安装官网直接有安装指导注意在正确目录下再执行命令wget https://download.redis.io/releases/redis-6.0.9.tar.gztar xzf redis-6.0.9.tar.gzcd redis-6.0.9makere
2020-11-16 16:52:32 109
原创 Linux安装常用环境
Linux安装常用环境Linux安装JDK,(CentOS7/Ubuntu都行)tar方式:1.先下载jdk8,tar.gz格式,上传到服务器2.推荐路径:/usr下面3.解压:tar zxvf jdk-8xxxxx.tar.gz4.解压之后,可以rm -f把压缩包删掉5.配置环境变量,非常重要:vi /etc/profile6.在文件最后,添加:export JAVA_HOME=/usr/local/software/jdk1.8.0_241export CLASSPATH=.:@JA
2020-11-13 14:42:31 334
原创 Linux入门
Linux入门Linux:操作系统Windows:效率低,稳定性差,交互体验Linux:高效稳定Linux内核是一样的,并且开源免费Redhat,商业版本,收费CentOS,社区版,免费Ubuntu,免费,更适合个人使用Suse,红旗等等硬盘分区:Linux分为主分区,扩展分区,逻辑分区Linux里面,一切都是文件硬盘:IDE:hdxSCSI:sdx系统中的第一个IDE设备,表示为hda第二个SCSI设备,表示为sdb分区,就是硬盘文件名+分区数
2020-11-11 19:32:45 156
原创 数据库设计
数据库设计1.设计过程:规划,需求分析,概念设计,逻辑设计,物理设计,实现和维护规划:避免设计不合理的数据库,导致数据库无法应对业务的扩展和数据量增长。插入:用户画像羊,头羊,狼大明用户,屌丝用户,女性用户调查研究,对数据库的应用系统,使用单位,面向的对象,数据的关联进行全面了解。可行性分析,可用设备,时间效率,经济效益确定可行性。需求分析:(1)收集好数据库所需要的信息和数据内容(2)画出业务流程交给需求方鉴定概念设计:以某种方法 反映信息数据在数据库中的概念结构比如ER模型
2020-11-11 19:31:28 196
原创 springboot
SpringBoot–约定优于配置springboot版本:2.1.111.配置文件配置端口号server.port=8081配置数据库信息spring.datasource.url=jdbc:mysql://localhost:3306/db1?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8spring.datasource.driver-class-name=com.mysql.cj.jd
2020-11-07 20:08:37 155
原创 Spring
Spring框架IOC AOP SSM不重复造轮子,spring不是一个实现特定功能的框架,是一个框架体系,其中Spring-Core是核心模块,IoC功能就是这个模块的,控制反转学Spring干什么,学会IoC的使用流程,项目中用到的功能,有什么好的插件或框架,就拿过来,让spring管理它的功能对象。IOC使用IoC做的事情,就是管理项目中的对象在applicationContext.xml中声明一个bean<bean id="dcs" class="entity.Student"
2020-11-05 19:09:02 127
原创 SpringMVC
SpringMVC框架的入门一. 概述随着Web应用复杂度的不断提升,单纯使用JSP技术完成Web应用程序开发的弊端越来越明显.在应用程序中引入控制器(Servlet/Filter)则可以有效的避免在JSP页面编写大量的业务和页面跳转代码.而JSP则专门用于展示内容,这种程序设计模式就是我们要学习的MVC设计模式了.了解了MVC设计模式之后,我们就开始学习Controller层的框架产品Spring MVC.二. MVC设计模式1.开发架构的形式C/S 客户端/服务器端B/S 浏览器/服务
2020-11-04 20:01:11 165
原创 mybatis6缓存
缓存Mybatis中的注解开发1. 环境搭建2. 单表CRUD(代理DAO的方式)3. 多表查询操作4. 缓存的配置缓存的概念1. 什么是缓存?存在于内存中的临时数据,比如第一次查询的时候就可以存储进去.2. 为什么使用缓存?减少和数据库的交互次数,提高执行效率.3.1适用于缓存:1) 经常查询并且不经常使用2) 数据的正确与否对最终结果影响不大3.2不适用于缓存:1) 经常改变的数据2) 数据的正确与否对最终结果影响很大3) 比如:商品的库存,银行的汇率,股市的牌价My
2020-10-30 22:14:23 95
原创 mybatis5延迟加载
延迟加载一. 概述1. mybatis中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟规则对关联对象的select查询.延迟加载可以有效的减少数据库的压力.2. 延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓的延迟加载就是当在真正需要的时候,才真正执行数据加载.3. 简单理解为,只有在使用的时候,才会发出SQL语句进行查询.二. Mybatis级联查询方式1. association 一对一2. colleciton 一对多3. 多对多三. 步骤1. 配置开启延
2020-10-30 22:13:30 93
原创 mybatis4动态SQL
动态SQL等动态SQL是Mybatis的一个强大特性,在使用JDBC操作数据时,如果查询条件特别多,将条件串联成SQL字符串是一件痛苦的事情,通常的解决方法是写很多的if-else条件语句对字符串进行拼接.并确保不能忘了空格或在字段的最后省略逗号.Mybatis使用一种强大的的动态Sql语言来改善这种情形.动态SQL基于OGNL的表达式,可使我们方便的在SQL语句中实现某些逻辑,用于实现动态SQL的元素如下:实现动态SQL的元素(9个标签) if:利用if实现简单的条件选择 choose(whe
2020-10-30 22:12:13 128
原创 mybatis3多表查询
mybatis多表查询一对一查询用户表和订单表的关系为,一个用户有多张银行卡,一张卡只从属于一个用户。一对一查询的需求:查询一张银行卡,与此同时查询出该卡所属的用户对应的SQL语句SELECT a.*,u.id,u.userName,u.birthday,u.sex FROM account a INNER JOIN user u ON a.uid=u.id创建实体类时应注意:private User user一对多查询用户表和订单表的关系为,一个用户有多张银行卡,一张卡只从属于一个用户
2020-10-29 16:54:49 1147 4
原创 mybatis2
mybatis day02知识小结MyBatis开发步骤:①添加MyBatis的坐标②创建user数据表③编写User实体类④编写映射文件UserMapper.xml⑤编写核心文件SqlMapConfig.xml⑥编写测试类MyBatis的增删改查操作MyBatis的插入数据操作1)编写UserMapper映射文件 insert into user values(#{id},#{username},#{password})
2020-10-29 16:53:17 154 1
原创 Mybatis1
Mybatis框架的概念建筑学中框架的概念框架(framework)是一个框子——指其约束性,也是一个架子——指其支撑性。是一个基本概念上的结构,用于去解决或者处理复杂的问题。框架这个广泛的定义使用的十分流行,尤其在软件概念。框架也能用于机械结构。软件工程中框架的概念框架( Framework )是构成一类特定软件可复用设计的一组相互协作的类。框架规定了你的应用的体系结构。它定义了整体结构,类和对象的分割,各部分的主要责任,类和对象怎么协作,以及控制流程。框架预定义了这些设计参数,以便于应
2020-10-28 22:03:01 136
原创 JDBC工具类笔记
JDBC1. JDBC基本概念2. 快速入门3. 对JDBC中各个接口和类详解JDBC:1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作数据库 * JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。2. 快速入门: * 步骤: 1. 导入驱动jar包 mysql
2020-10-27 16:55:20 94
原创 MySQLClass
MySQL花式查询(1)模糊查询select c1,c2 from t1 where c3 like ‘表达式’两个通配符:_表示任意一个字符,%表示任意多个字符班级内姓张的同学select * from students where sname like ‘张%’班级内姓张且名字两个字的同学select * from students where sname like ‘张_’班级内姓名中有张这个字的同学select * from students where sname like ‘
2020-10-26 16:58:35 289
原创 2020-10-25
子贡问于孔子曰:“敢问君子贵玉而贱珉,何也?为玉之寡而珉之多欤?”孔子曰:“非为玉之寡故贵之,珉之多故贱之。夫昔者君子比德于玉:温润而泽,仁也;缜密以栗,智也;廉而不刿,义也;垂之如坠,礼也;叩之其声清越而长,其终则诎然,乐矣;瑕不掩瑜,瑜不掩瑕,忠也;孚尹旁达,信也;气如白虹,天也;精神见于山川,地也;珪璋特达,德也。天下莫不贵者,道也。诗云:‘言念君子,温其如玉。’故君子贵之也。”——《孔子家语·问玉第三十六》...
2020-10-25 00:13:20 113 1
原创 mysql
mysql基本操作启动mysql服务/usr/local/MySQL/bin/mysql -u root -p数据库语句中不区分大小写,不过关键字最好大写。单行注释– 或#(–后加空格,#后不用加空格)多行注释/注释/语句分类DDL(操作数据库、表)操作数据库CRUDC(Create):创建create database db(数据库名);检测有无重复数据库若没有则创建:create database if not exists db(数据库名);指定字符
2020-10-23 23:10:12 970 2
原创 多线程(一)
多线程(一)进程和线程并行多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。并发通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。并发往往在场景中有公用的资源,那么针对这个公用的资源往往产生瓶颈,我们会用TPS或者QPS来反应这个系统的处理能力。一个程序(进程)可以同时有很多线程,但同一时间点只能执行其中一条线(单核CPU)多核cpu使用多线程,可以提升运行速度案例一天考4科分着考正常执行一起考来回换着做就是多线程,所以多线程消耗
2020-10-22 16:18:12 128 1
原创 网络通信单例
Socket,Java网络通信,网络编程通信基本单位,A程序找B程序,A就叫客户端,B叫服务端Socket通信基于TCP/IP,TCP(流式)和UDP(数据包)简单的应用Client:public static void main(String[] args) { try { Socket socket = new Socket("127.0.0.1", 8888); OutputStream os = socket.getOut
2020-10-21 19:51:30 157 2
原创 散列表和IO
散列表和IO散列表(也叫哈希表)直接寻址法取关键字或关键字的某个线性函数值为散列地址。即H(key)=key或H(key) = a·key + b,其中a和b为常数(这种散列函数叫做自身函数)。若其中H(key)中已经有值了,就往下一个找,直到H(key)中没有值了,就放进去。数字分析法分析一组数据,比如一组员工的出生年月日,这时我们发现出生年月日的前几位数字大体相同,这样的话,出现冲突的几率就会很大,但是我们发现年月日的后几位表示月份和具体日期的数字差别很大,如果用后面的数字来构成散列地
2020-10-20 17:25:06 305 2
原创 集合
集合Collection(一组允许重复的对象)list(允许重复,维护元素插入顺序)有序可重复list实现类:ArrayListLinkedListset(重复元素不能加入)无序不重复set实现类HashSetTreeSetset不是真正的无序,只是集合中的排列顺序和插入顺序不一样,只有当内容和地址信息都相等时才会出现对象覆盖Map:复制对象,与Collection没什么关系list:有序队列,每个元素都有他的索引。第一个元素索引值是0,实现类还有V
2020-10-19 15:32:01 125 1
原创 0.1 算法分类
0.1 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。0.2 算法复杂度0.3 相关概念稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。时间复杂度:对排序数
2020-10-16 19:25:06 365 2
原创 数据类型:树
数据类型:树二叉树:一个有穷的节点集合,集合可以为空,若不为空,则它是由根节点和左右两个不相交的二叉树组成,左子树叫TL,右子树叫TR这五种情况都叫二叉树:1.空 2.只有A 3.AB 4.AC 5.ABC还有几种情况有特殊叫法斜二叉树满二叉树完全二叉树节点Tree: n(n>=0)个节点构成的有限集合N=0叫空树每个非空的树,都有一个根节点,Root,用r表示。其余节点可分为m(m>0)个互不相交的有限集合每个集合又是一棵树,成为原来的子树(SubT
2020-10-15 18:42:59 255
原创 常见的八种数据结构
常见的八种数据结构数据结构是一种特殊的组织和存储数据的方式,可以使我们可以更高效地对存储的数据执行操作。数据结构在计算机科学和软件工程领域具有广泛而多样的用途。几乎所有已开发的程序或软件系统都使用数据结构。此外,数据结构属于计算机科学和软件工程的基础。当涉及软件工程面试问题时,这是一个关键主题。因此,如果你需要用到编程技能,就应该对数据结构有充分的了解。1.数组数组是固定大小的结构,可以容纳相同数据类型的项目。它可以是整数数组,浮点数数组,字符串数组或什至是数组数组(例如二维数组)。数组已建立索引
2020-10-14 19:29:26 649
原创 计算机硬件
计算机硬件计算机历史发展共分为四代1、第一代计算机(1946~1958)电子管为基本电子器件;使用机器语言和汇编语言;主要应用于国防和科学计算;运算速度每秒几千次至几万次。2、第二代计算机(1958~1964)晶体管为主要器件;软件上出现了操作系统和算法语言;运算速度每秒几万次至几十万次。3、第三代计算机(1964~1971)普遍采用集成电路;体积缩小;运算速度每秒几十万次至几百万次。4、第四代计算机(1971~现在 )以大规模集成电路为主要器件;运算速度每秒几百万次至上亿次。硬件包括中央处理
2020-10-13 16:33:55 270
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人