自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 Mybatis学习笔记之Mybatis的快速开始

文章目录1 Mybatis简介1.3 什么是Mybatis?1.2 Mybais的第一个程序1.3 搭建项目中容易出现的问题1 Mybatis简介1.3 什么是Mybatis?它是一款半自动的ORM持久层框架,具有较高的SQL灵活性,支持高级映射(一对一,一对多),动态SQL,延迟加载和缓存等特性,但它的数据库无关性较低持久化是什么持久化是将程序数据在持久状态和瞬时状态间转换的机制。即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在数据

2022-01-09 14:53:00 1063

原创 SpringMVC学习笔记之使用注解配置SpringMVC

文章目录11 注解配置SpringMVC11.1 创建初始化类,代替web.xml11.2 创建SpringConfig配置类,代替spring的配置文件11.3 创建WebConfig配置类,代替SpringMVC的配置文件11.4 测试功能11 注解配置SpringMVC使用配置类和注解代替web.xml和SpringMVC配置文件的功能11.1 创建初始化类,代替web.xml在Servlet3.0环境中,容器会在类路径中查找实现javax.servlet.ServletContainerIn

2022-01-09 11:02:26 268

原创 SpringMVC学习笔记之异常处理器

10 异常处理器10.1 基于配置的异常处理SpringMVC提供了一个处理控制器方法执行过程中所出现的异常的接口:HandlerExceptionResolver。而这个HandlerExceptionResolver有两个实现类:一个是DefaultHandlerExceptionResolver,一个是SimpleMappingExceptionResolver。SpringMVC提供的自定义的异常处理器SimpleMappingExceptionResolver的使用方式如下:首先,我们

2022-01-09 10:30:16 382

原创 SpringMVC学习笔记之拦截器

9 拦截器9.1 什么是拦截器Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验证、记录请求信息的日志、判断用户是否登录等。要想写一个自己定义的拦截器,我们需要实现HandlerInterceptor接口(推荐)或者继承HandlerInterceptorAdapter类。一个浏览器的请求发送到服务器历经的流程如下:单个拦截器示意图:多个拦截器示意图(注意每个Handler的执

2022-01-09 09:59:47 557

原创 SpringMVC笔记之HttpMessageConverter

8 HttpMessageConverterHttpMessageConverter,报文信息转换器,它有两个作用:将请求报文转换为Java对象或将Java对象转换为响应报文HttpMessageConverter提供了两个注解和两个类型:@RequestBody,@ResponseBody,RequestEntity,@ResponseEntity8.1 环境准备首先,新建一个Moodle,然后修改pom.xml内容如下<?xml version="1.0" encoding="U

2022-01-08 19:52:49 755

原创 Mysql从入门到精通

最近花了不少时间去学习Mysql数据库,学习完后写这篇博客来巩固以下我最近的成果。本篇博客的创建表代码以及表中的数据在这篇文章中。

2022-01-08 14:48:23 1416 1

原创 Nginx学习笔记之反向代理

4 nginx 配置实例-反向代理4.1 反向代理实例一实现效果:使用 nginx 反向代理,访问 www.123.com 直接跳转到 192.168.10.104:80804.1.1 准备工作首先在虚拟机中安装tomcat,在我之前的文章中有提供这些安装包的资源:关闭防火墙或者对外公开端口(我的建议学习阶段是关机防火墙)当前关闭:systemctl stop firewalld永久关闭: systemctl disable firewalld获取当前虚拟机的地址在终端输入ifcon

2022-01-08 14:27:32 330

原创 Nginx学习笔记之Nginx入门

1 Nginx简介1.1 什么是 nginxNginx的特点:  Nginx 是高性能 的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大 的,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。其特点是占有内存少,并发能力强 ,同时Nginx 支持热部署 ,可以在不间断服务的情况下,对软件版本进行升级。中国大陆使用 Nginx 网站用户有:新浪、网易、 腾讯等。Nginx的应用场景:HTTP 服务器:Nginx 是一个 http 服务可以独立提供 http 服务

2022-01-08 09:57:54 1424

原创 SpringMVC学习笔记之RESTful风格

文章目录7 使用SpringMVC完成RESTful的实现7.1 什么是RESTful风格?7.2 传统风格与RESTFul风格对比7.2.1 使用传统风格操作资源7.2.2 使用RESTful风格操作资源7.3 HiddenHttpMethodFilter7.4 RESTful案例7.4.1 准备工作7 使用SpringMVC完成RESTful的实现7.1 什么是RESTful风格?REST:Representational State Transfer,表现层资源状态转移。它就是一个资源定位、资源

2022-01-07 14:15:56 602

原创 SpringMVC学习笔记之视图

文章目录6 SpringMVC的视图6.1 ThymeleafView6.2 转发视图6.3 重定向视图6. 4 视图控制器view-controller6 SpringMVC的视图SpringMVC中的视图是View接口,视图的作用渲染数据,将模型Model中的数据展示给用户。SpringMVC视图的种类很多,默认有转发视图和重定向视图,若使用的视图技术为Thymeleaf,在SpringMVC的配置文件中配置了Thymeleaf的视图解析器,由此视图解析器解析之后所得到的是ThymeleafView

2022-01-06 17:12:48 268

原创 Spring学习笔记之域对象共享数据

文章目录5 域对象共享数据5.1 使用ServletAPI向request域对象共享数据5.2 使用ModelAndView向request域对象共享数据(官网推荐)5.3 使用Model向request域对象共享数据5.4 使用Map向request域对象共享数据5.5 使用ModelMap向request域对象共享数据5.6 Model、ModelMap、Map的关系5.7 使用ServletAPI向session域对象和application域对象共享数据5 域对象共享数据在SpringMVC中常

2022-01-05 10:28:54 827 2

原创 SpringMVC学习笔记之获取请求参数

文章目录4 SpringMVC获取请求参数4.1 通过ServletAPI获取4.2 通过控制器方法的形参获取请求参数4.3 @RequestParam、@RequestHeader与@CookieValue注解4.4 通过POJO获取请求参数4.5 解决获取请求参数的乱码问题4 SpringMVC获取请求参数4.1 通过ServletAPI获取将HttpServletRequest作为控制器方法的形参,此时HttpServletRequest类型的参数表示封装了当前请求的请求报文的对象新创建一个P

2022-01-05 08:18:36 245

原创 SpringMVC学习笔记之SpringMVC快速开始

1 SpringMVC简介1.1 什么是MCVMVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分M:Model,模型层,指工程中的JavaBean,作用是处理数据JavaBean分为两类:一类称为实体类Bean:专门存储业务数据的,如 Student、User 等一类称为业务处理 Bean:指 Service 或 Dao 对象,专门用于处理业务逻辑和数据访问。V:View,视图层,指工程中的html或jsp等页面,作用是与用户进行交互,展示数据C:Controller,控制层,

2022-01-02 13:12:09 623

原创 Netty学习总结

1 Netty 概述1.1 Netty是什么Netty是一个异步的、基于事件驱动的的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端。1.2 为什么使用Netty?这里从两个方面讲述,首先就是原生NIO存在的一些问题:NIO的类库和API繁杂,使用麻烦:需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。需要具备其他的额外技能:要熟悉Java多线程编程,因为NIO编程涉及到Reactor模式,你必须对多线程和网络

2021-12-30 16:01:42 642

原创 大数据常用的算法与数据结构

1 布隆过滤器(Bloom Filter)Bloom Filter(简称BF),是二进制向量数据结构,常被用来检测某个元素是否是巨量数据集合中的成员优点具有很好的空间和时间效率,尤其是空间效率极高:因为不需要存储集合数据本身内容不会漏判(False Negative)缺点:查询某个成员是否属于集合时,会发生误判(False Positive):即如果某个成员不在集合中,有可能BF会得出其在集合中的结论:因此只能适用于允许一定误判率的情况1.1 基本原理BF可以高效地表征集合数据:使用长

2021-12-23 20:38:42 2365

原创 数据复制与一致性

1 基本原则与设计理念1.1 原CAP含义CAP 是对“Consistency/Availability/Partition Tolerance"的一种简称,其内在含义如下:强一致性(Consistency):即在分布式系统中的同一数据多副本情形下,对于数据的更新操作体现岀的效果与只有单份数据是一样的。可用性(Availability):客户端在任何时刻对大规模数据系统的读/写操作都应该保证在限定延时内完成。 分区容忍性(Partition Tolerance):在大规模分布式数据系统中,网络分

2021-12-23 18:37:43 2336

原创 启动Spark-Shell出现hdfs报错

今天在学习Spark-Sql的时候,想要在Spark-Shell来学习语法,启动的时候却报了如下错误:java.lang.NoSuchMethodException: org.apache.hadoop.ipc.RpcException.<init>(java.lang.String) at java.lang.Class.getConstructor0(Class.java:3082) at java.lang.Class.getConstructor(Cla

2021-12-11 11:27:33 666

原创 Hive学习笔记四之Hive实战

需求描述:统计某个影音视频网站的常规指标,各种 TopN 指标:– 统计视频观看数 Top10– 统计视频类别热度 Top10– 统计出视频观看数最高的 20 个视频的所属类别以及类别包含 Top20 视频的个数– 统计视频观看数 Top50 所关联视频的所属类别排序– 统计每个类别中的视频热度 Top10,以 Music 为例– 统计每个类别视频观看数 Top10 – 统计上传视频最多的用户 Top10 以及他们上传的视频观看次数在前 20 的视频数据结构视频表用户表..

2021-12-09 19:38:17 773

原创 Hive学习笔记三之函数操作

5 函数5.1 系统内置函数1)查看系统自带的函数hive> show functions;2)显示自带的函数的用法hive> desc function upper;3)详细显示自带的函数的用法hive> desc function extended upper;数据准备:5.2 常用内置函数5.2.1 空字段赋值1)函数说明NVL:给值为 NULL 的数据赋值,它的格式是 NVL( value,default_value)。它的功能是如果 val

2021-12-09 18:00:01 1078

原创 Hive学习笔记二之表操作

一些与常见的sql语言,我在这里不在赘述了1 DDL 数据定义CREATE DATABASE [IF NOT EXISTS] database_name[COMMENT database_comment][LOCATION hdfs_path][WITH DBPROPERTIES (property_name=property_value, ...)];创建一个数据库,数据库在 HDFS 上的默认存储路径是/user/hive/warehouse/*.db create database

2021-12-09 10:47:57 1754

原创 Flink的简介

1 Flink的介绍1.1 Apache Flink 简介1.1.1 Apache Flink是什么  Apache Flink (简称Flink) 是一个高吞吐、低延迟的分布式流/批处理 引擎框架 ,可以在 无边界和有边界数据流中进行 有状态的计算。在实时处理上,它提供对 事件的支持,解决了实时领域和传统的服务端开发领域 消息无序问题,而且Flink还 提供了Exactly Once语义的支持,保证了实时数据处理的正确性。 在部署方面Flink既可以在服务器上进行独立部署(Stand

2021-12-08 11:05:11 1913

原创 Hbase的介绍与安装

1 HBase 简介HBase —— Hadoop Database的简称,Google BigTable的另一种开源实现方式,从问世之初,就为了解决用大量廉价的机器高速存取海量数据、实现数据分布式存储提供可靠的方案。从功能上来讲,HBase不折不扣是一个数据库,与我们熟悉的Oracle、MySQL、MSSQL等一样,对外提供数据的存储和读取服务。而从应用的角度来说,HBase与一般的数据库又有所区别,HBase本身的存取接口相当简单,不支持复杂的数据存取,更不支持SQL等结构化的查询语言;HBase也没

2021-12-07 19:15:01 2464

原创 Hive学习笔记之hive的介绍与安装

1 Hive 基本概念1.1 什么是 Hivehive 简介Hive:由 Facebook 开源用于解决海量结构化日志的数据统计工具。Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,提供类 SQL 查询功能。...

2021-12-05 09:36:16 1979 1

原创 大数据常用命令总结

Linux(vi/vim)一般模式语法功能描述yy复制光标当前一行y数字y复制一段(从第几行到第几行)p箭头移动到目的行粘贴u撤销上一步dd删除光标当前行d数字d删除光标(含)后多少行x删除一个字母,相当于delX删除一个字母,相当于Backspaceyw复制一个词dw删除一个词shift+^移动到行头shift+$移动到行尾1+shift+g移动到页头,数字shift+g移动到

2021-12-01 23:48:01 491

原创 Spark学习笔记一

1 基于Standalone 模式部署Spark集群local 本地模式毕竟只是用来进行练习演示的,真实工作中还是要将应用提交到对应的集群中去执行,这里我们来看看只使用 Spark 自身节点运行的集群模式,也就是我们所谓的独立部署(Standalone)模式。Spark 的 Standalone 模式体现了经典的 master-slave 模式。集群规划。1.1 上传与解压Spark压缩包将spark安装包上传至虚拟机中的指定路径上解压缩文件tar -zxvf spark-3.0.0-b

2021-11-30 16:53:14 974

原创 Hadoop学习笔记之MapReduce(二)

3 MapReduce 框架原理MapReduce总体步骤:3.1 InputFormat 数据输入3.1.1 切片与 MapTask 并行度决定机制(1)问题引出  MapTask 的并行度决定 Map 阶段的任务处理并发度,进而影响到整个 Job 的处理速度。  思考:1G 的数据,启动 8 个 MapTask,可以提高集群的并发处理能力。那么 1K 的数据,也启动 8 个 MapTask,会提高集群性能吗?MapTask 并行任务是否越多越好呢?哪些因素影响了 MapTask 并行度?

2021-11-29 19:31:59 669

原创 Hadoop学习笔记之MapReduce(一)

2 Hadoop 序列化2.1 序列化概述什么是序列化?序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据,转换成内存中的对象。为什么要序列化?一般来说,“活的”对象只生存在内存里,关机断电就没有了。而且“活的”对象只能由本地的进程使用,不能被发送到网络上的另外一台计算机。 然而序列化可以存储“活的”对象,可以将“活的”对象发送到远程计算机。为什么不用 Java 的序列化

2021-11-27 10:12:47 1006

原创 Hadoop学习笔记之Yarn

1 Yarn 资源调度器在开始讲述Yarn之前我们应该思考:1、Hadoop如何管理集群资源?2、Hadoop如何给任务合理分配资源?这一切都是通过Yarn来进行的,所以Yarn是个什么东西呢? Yarn 是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于 一个分布式的操作系统平台,而 MapReduce 等运算程序则相当于运行于 操作系统之上的应用程序。1.1 Yarn 基础架构YARN 主要由 ResourceManager、NodeManager、Applicatio

2021-11-25 19:30:36 854

原创 Hadoop学习笔记之HDFS

1 HDFS概述1.1 HDFS 产出背景及定义HDFS 产生背景   随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件 ,这就是分布式文件管理系统。HDFS 只是分布式文件管理系统中的一种。 HDFS 定义   HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的 ,由很多服务器联合起来实现

2021-11-23 14:23:56 917

原创 Hadoop学习笔记之Hadoop的介绍与安装

文章目录1 Hadoop概述1.1 Hadoop是什么?1.2 Hadoop的优势(4高)1.3 Hadoop的组成1.3.1 HDFS架构概述1.3.2 YARN 架构概述1.3.3 MapReduce 架构概述1.3.4 HDFS、YARN、MapReduce 三者关系1.3.5 大数据技术生态体系2 Hadoop 运行环境搭建(开发重点)2.1 在在 hadoop104下安装 Hadoop2.2 Hadoop 目录结构3 Hadoop 运行模式3.1 本地运行模式(官方 WordCount)3.2

2021-11-22 17:01:22 1177

转载 ZooKeeper学习笔记

1、Zookeeper入门1.1、Zookeeper是什么?Zookeeper 是一个开源的分布式的,为分布式框架提供协调服务的 Apache 项目。1.1.1、Zookeeper工作机制1.1.2:Zookeeper的特点1.1.3:数据结构ZooKeeper 数据模型的结构与 Unix 文件系统、HDFS很类似,整体上可以看作是一棵树,每个节点称做一个 ZNode。每一个 ZNode 默认能够存储 1MB 的数据(存储空间很小,所以不能用来存储数据,可以用来存储简单的配置信息),每个 ZN

2021-11-21 11:33:10 158

原创 数据库中表结构

这篇文章主要展示实例中表中的数据:总共有如下的表:文章目录1:表中的数据1、customers2、orderitems3、orders4、productnotes5、products6、vendors2:创建表的SQL代码:2.1、creat.sql2.2、populate.sql1:表中的数据1、customers2、orderitems3、orders4、productnotes5、products6、vendors2:创建表的SQL代码:2.1、creat.sql

2021-11-18 14:38:05 1547

原创 如何搭建一个简单的Liunx开发环境

这篇文章主要介绍在Linux虚拟机中如何安装Mysql、JDK以及静态IP的设置。以下操作均是使用root用户1、Mysql的安装在 /opt 目录下创建并进入 mysql 目录:运行:wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar 下载mysql5.7的安装包卸载Centos下原有的mariadb数据库,不然会跟mysql产生冲突。运行 rpm -qa|grep mari ,查询mar

2021-11-18 13:46:57 1046

原创 如何安装一个Linux虚拟机

因为程序员之后要经常在Linux系统下完成任务,所以学习如何安装一个Linux虚拟机以及如何完成它的环境配置是十分重要的,这篇文章将介绍如何安装配置虚拟机,我使用的是centos7.6的版本。1、使用Vmware来安装Centos系统首先新建一个虚拟机:选择典型就可以了:将自己下载的相应系统的iso地址导入就行:创建一个新的用户(并不是根用户root),设置它的密码,此时root密码将跟该用户的密码一致。当然也可以不在这里创建用户,后面还有另外的方法可以创建新的用户。用户根据自己的需要设

2021-11-18 11:06:43 1175

原创 Redis总结6——复制

在分布式系统中为了解决单点问题,通常会把数据复制多个副本部署到 其他机器,满足故障恢复和负载均衡等需求。Redis也是如此,它为我们提 供了复制功能,实现了相同数据的多个Redis副本。复制功能是高可用Redis 的基础,后面章节的哨兵和集群都是在复制的基础上实现高可用的。1:配置1.1:建立连接参与复制的Redis实例划分为主节点(master)和从节点(slave)。默认 情况下,Redis都是主节点。每个从节点只能有一个主节点,而主节点可以 同时具有多个从节点。复制的数据流是单向的,只能由主节点

2021-10-25 10:00:42 139

原创 Redis总结5——持久化RDB与AOP

  Redis支持RDB和AOF两种持久化机制,持久化功能有效地避免因进程退出造成的数据丢失问题,当下次重启时利用之前持久化的文件即可实现数据恢复。1:RDB1.1:RDB的优缺点优点:DB是一个紧凑压缩的二进制文件,代表Redis在某个时间点上的数据快照。非常适用于备份,全量复制等场景。比如每6小时执行bgsave备份, 并把RDB文件拷贝到远程机器或者文件系统中(如hdfs),用于灾难恢复。Redis加载RDB恢复数据远远快于AOF的方式。缺点:·RDB方式数据没办法做到实时持久化/

2021-10-24 15:12:58 632

原创 Redis总结3——慢查询、事务、发布订阅

  Redis提供的5种数据结构已经足够强大,但除此之外,Redis还提供了诸如慢查询分析、功能强大的Redis Shell、Pipeline、事务与Lua脚本、 Bitmaps、HyperLogLog、发布订阅、GEO等附加功能,这些功能可以在某些场景发挥重要的作用,本节将介绍以下内容。1:慢查询分析  所谓慢查询日志就是系统在命令执行前后计算每条命令的执行时间(并不包括命令的网络传输时间,所以没有慢查询不代表客户端没有超时),当超过预设阀值,就将这条命令的相关信息(例如:发生时间,耗时,命令的详细信

2021-10-24 09:43:01 2156

原创 Redis总结2-API的理解与使用(三)

1:键管理本节将按照单个键、遍历键、数据库管理三个维度对一些通用命令进行介绍。1.1: 单个键针对单个键的命令,前面几节已经介绍过一部分了,例如type、del、 object、exists、expire等,下面将介绍剩余的几个重要命令。1.键重命名:rename key newkey注:1:如果在rename之前,键java已经存在,那么它的值也将被覆盖,所以为了防止被强行rename,Redis提供了renamenx命令,确保只有newKey不存在时候才被覆盖如果rename和renam

2021-10-23 15:48:49 218

原创 Redis总结2-API的理解与使用(二)

4:列表列表类型有两个特点:第一、列表中的元素是有序的,这就意味着可以通过索引下标获取某个元素或者某个范围内的元素列表,例如要获取第5个元素,可以执行lindex user:1:message4(索引从0算起)就可以得到第五个元素。第二、列表中的元素可以是重复的。4.1:命令下面将按照对列表的5种操作类型对命令进行介绍,命令如表所示。1.添加操作...

2021-10-23 15:08:46 69

原创 Redis总结2-API的理解与使用(一)

1、预备知识   在正式介绍5种数据结构之前,了解一下Redis的一些全局命令、数据结构和内部编码、单线程命令处理机制是十分有必要的,它们能为后面内容的学习打下一个好的基础,主要体现在两个方面:第一、Redis的命令有上百 个,如果纯靠死记硬背比较困难,但是如果理解Redis的一些机制,会发现这些命令有很强的通用性。第二、Redis不是万金油,有些数据结构和命令必须在特定场景下使用,一旦使用不当可能对Redis本身或者应用本身造成致命伤害。1.1:一些全局命令   Redis有5种数据结构,它们是键值

2021-10-23 11:40:43 327

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除