- 博客(48)
- 收藏
- 关注
原创 Shiro登陆认证流程(源码)
本文是基于springboot版本的,不多逼逼,直接上码1、依赖<!--shiro--><dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> <version>1.8.0</.version></dependency>2、配置类package com.dua
2021-11-18 20:43:33
581
原创 RabbitMQ安装(Mac版本)
RabbitMQ安装(Mac版本)RabbitMQ是采用Erlang语言开发的,所以系统环境必须提供Erlang环境。安装brew install rabbitmq注:前提必须是mac安装了HomeBrew(软件包管理系统),以下都是基于mac版本的。如图显示的两种启动方式#方式一:brew services start rabbitmq;#方式二:进入默认的安装目录下,手动启动RabbitMQWeb管理界面及授权操作默认情况下,rabbitmq是没有安装的rabbitmq
2021-09-22 22:18:18
3084
原创 System.arraycopy()实现数组之间的复制
System.arraycopy()System中提供了一个native静态方法arraycopy(),可以使用这个方法来实现数组之间的复制。对于一维数组来说,这种复制属性值传递,修改副本不会影响原来的值。对于二维或者一维数组中存放的是对象时,复制结果是一维的引用变量传递给副本的一维数组,修改副本时,会影响原来的数组。public static void arraycopy( ...
2020-03-21 16:28:55
314
原创 SpringMVC工作流程
(1)用户发送请求至前端控制器DispatcherServlet;(2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handler;(3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;(4)DispatcherServlet 调用 Handler...
2020-03-20 10:56:15
130
原创 idea热部署
idea热部署1、添加依赖<!--spring-boot-devtools --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <v...
2020-03-19 00:02:58
130
原创 Docker安装(CentOS7)
Docker安装(CentOS7)1、准备工作目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。2、查看内核版本#需要是root用户un...
2020-03-07 19:35:50
330
原创 SpringBoot整合pagehelper
SpringBoot整合pagehelperpagehelper相关知识了解PageHelper.startPage(int PageNum,int PageSize):用来设置页面的位置和展示的数据条目数,我们设置每页展示5条数据。PageInfo用来封装页面信息,返回给前台界面。PageInfo中的一些我们需要用到的参数如下表:相关属性说明PageInfo.list...
2020-03-04 12:08:11
244
原创 Java8新特性
Java8新特性1.1 Lambda表达式1.1.1 函数式编程思想面向对象的思想:做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情.函数式编程思想:只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程Java8引入了Lambda表达式之后,Java也开始支持函数式编程。Lambda表达式不是Java最早使用的,很多语言就支持...
2020-02-25 23:13:02
309
原创 MySQL高级(五)——慢查询日志
MySQL高级(五)——慢查询日志1、简介MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语...
2020-02-15 17:24:30
653
原创 Springboot整合Shiro——认证和授权
Shiro1、简介Apache Shiro是一个Java的安全(权限)框架。Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以完成认证、授权、加密、会话管理、Web集成、缓存等。下载地址:https://shiro.apache.org/2、运行原理Subject:Subject其实代表的就是当前正在执行操作的...
2020-02-14 12:42:01
217
原创 SpringBoot整合Mybatis
SpringBoot整合Mybatis1、添加依赖<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1&l...
2020-02-08 13:17:07
273
原创 Thymeleaf
Thymeleaf模板引擎的作用就是我们来写一个页面模板,比如有些值呢,是动态的,我们写一些表达式。而这些值,从哪来呢,我们来组装一些数据,我们把这些数据找到。然后把这个模板和这个数据交给我们模板引擎,模板引擎按照我们这个数据帮你把这表达式解析、填充到我们指定的位置,然后把这个数据最终生成一个我们想要的内容给我们写出去,这就是我们这个模板引擎,不管是jsp还是其他模板引擎,都是这个思想。只不过呢...
2020-02-05 20:24:25
110
原创 YAML
YAMLYAML是 “YAML Ain’t a Markup Language” (YAML不是一种置标语言)的递归缩写。YAML语法基础语法k:(空格) v表示一对键值对(空格不能省略),以空格的缩进来控制层级关系,只要是左边对齐的一列数据都是同一个层级的。注意:属性和值的大小写都是十分敏感的。值的写法字面量字面量:普通的值【数字、布尔值、字符串】k: v字面量直接写在...
2020-02-05 12:05:58
360
原创 Linux系统准备(CentOS7)之jdk安装
1.1、查看系统自带的jdkrpm -qa | grep jdk1.2、删除系统自带的jdkrpm -e --nodeps java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64rpm -e --nodeps java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64rpm -e --nodeps java-...
2020-02-03 14:01:56
193
原创 MySQL高级(三)——索引单表优化案例
MySQL高级(三)——索引单表优化案例#创建表格CREATE TABLE if not exists `article`( `id` int(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, `author_id` INT(10) UNSIGNED NOT NULL, `category_id` INT(10) UNSIGNED NOT...
2020-01-31 19:30:25
225
原创 MySQL高级(二)
MySQL高级(2)索引(Index)是帮助MySQL高效获取数据的数据结构。可以简单理解为排好序的快速查找数据结构。数据本身之外,数据库还维护着一个满足特定查找算法的数据结构,这些数据结构以某种方式指向数据,这样就可以在这些数据结构的基础上实现高级查找算法,这种数据结构就是索引。1、索引的分类(1)单值索引:一个索引只包含单个列,一个表可以有多个单列索引。(2)唯一索引:索引列的值必须...
2020-01-30 23:15:48
114
原创 MySQL高级(一)
MySql高级(一)1、MySQL逻辑架构首先,mysql的查询流程大致是:mysql客户端通过协议与mysql服务器建连接,发送查询语句,先检查查询缓存,如果命中,直接返回结果,否则进行语句解析,也就是说,在解析查询之前,服务器会先访问查询缓存(query cache)——它存储SELECT语句以及相应的查询结果集。如果某个查询结果已经位于缓存中,服务器就不会再对查询进行解析、优化、以及...
2020-01-29 12:37:37
207
原创 JDBC
JDBC1、简介JDBC:Java Database Connectivity,它是代表一组独立于任何数据库管理系统(DBMS)的API,声明在java.sql与javax.sql包中,是SUN(现在Oracle)提供的一组接口规范。由各个数据库厂商来提供实现类,这些实现类的集合构成了数据库驱动jar。2、JDBC使用步骤(1)注册驱动(2)获取数据库连接对象Connection(3...
2020-01-28 23:55:15
116
原创 Linux系统准备(CentOS7)之MySQL安装
MySQL安装——LinuxMySQL下载链接:http://downloads.mysql.com/archives/community/mysql安装(5.5)(1)查询是否安装过#查看系统是否安装了mysqlrpm -qa | grep mysql #查看系统是否安装了mariadb,MariaDB是MySQL关系数据库管理系统的一个复刻rpm -qa | grep maria...
2020-01-28 12:17:21
88
原创 Elasticsearch系列(二)安装kibana
说明:由于安装Elasticsearch的版本是elasticsearch-5.6.4.rpm,所以Kibana的版本应该和Elasticsearch一致。1、安装包下载下载链接:https://www.elastic.co/cn/downloads/past-releases2、将安装包上传到Linux将kibana-5.6.4-x86_64.rpm拷贝到opt目录下3、安装rp...
2020-01-27 11:40:29
325
原创 Elasticsearch系列(一)安装Elasticsearch
0、安装说明本文选择的版本是elasticsearch-5.6.4.rpm,Linux系统是CentOS7,需要给Linux配置jdk环境1、安装包下载下载链接:https://www.elastic.co/cn/downloads/past-releases#elasticsearch2、将安装包上传到Linux将elasticsearch-5.6.4.rpm拷贝到opt目录下...
2020-01-26 19:51:16
160
原创 SpringBoot配置文件的加载位置
SpringBoot配置文件的加载位置SpringBoot启动会扫描以下位置的application.propertie或者application.yml文件作为SpringBoot的默认配置文件——file: ./config/——file: ./——classpath: /config/——classpath: /以上是按照优先级从高到低的顺序,所有位置的文件都会被加载,优先级高...
2020-01-26 15:22:28
155
原创 SpringBoot常用注解
SpringBoot常用注解@Autowired按类型装配@PathVariable与@@RequestParam@PathVariable注解的用法和作用通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过注解@PathVariable(“xxx“) 绑定到操作方法的入参中。/**1. @Request...
2020-01-26 15:03:18
84
原创 SpringMVC常用的注解
SpringMVC常用的注解@RequestMapping@RequestMapping注解处理控制器上的url请求,可以标记在类和方法。@RequestMapping中有value、method、params、heads,分别表示请求URL、请求方法、请求参数、请求头。@Controller@RequestMapping("/springmvc")public class Sprin...
2020-01-04 11:31:16
188
原创 MyBatisPlus的代码生成器
MyBatisPlus的代码生成器(1)添加依赖<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-generator --><dependency> <groupId>com.baomidou</groupId> <artifactId>...
2019-12-23 20:11:58
310
1
原创 springboot整合
SpringBoot整合手动创建1、准备工作首先,要在eclipse环境下使用springboot,必须先配置好maven环境变量(详细步骤请看maven快速使用)。2、STS整合MavenMaven插件的设置:Window→Preferences→Maven→Installations3、创建maven工程4、在pom.xml文件中引入父工程和依赖<parent>...
2019-10-08 20:29:03
114
原创 Maven快速使用
Maven快速使用1、简介Maven是一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理。2、构建环节①清理:删除以前的编译结果,为重新编译做好准备。②编译:将Java源程序编译为字节码文件。③测试:针对项目中的关键点进行测试,确保项目在迭代开发过程中关键点的正确性。④报告:在每一次测试后以标准的格式记录和展示测试结果。⑤打包:将一个包含诸多文件的工程封装为一个压缩文件...
2019-10-08 19:11:54
145
原创 Redis简单介绍及安装
Redis简单介绍及安装文章目录Redis简单介绍及安装1.1、NoSQL数据库概述1.2、NoSQL适用场景1.3、简介1.4、Redis安装1.5、redis的启动1.6、客户端访问1.7、关闭Redis服务1.1、NoSQL数据库概述NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库。NoSQL 不依赖业务逻辑方式存储,而以简单的k...
2019-09-22 14:44:13
101
原创 JQuery
JQuery1、简介JQuery:是一个兼容多浏览器的、轻量级的JavaScript库,其宗旨为:WRITE LESS,DO MORE。2、jQuery的核心函数:$()$是jQuery的核心函数,jQuery的核心功能都是通过这个函数实现的。$的四个作用:$(function(){}):相当于window.onload = function(){}$(“选择器”):根据这个选择器...
2019-09-16 20:37:09
135
原创 MyBatis映射文件
MyBatis映射文件文章目录MyBatis映射文件简介mappers映射器MyBatis——CRUD(增删改查)(1)准备工作(2)创建接口EmployeeMapper(3)查询(4)添加主键生成方式(5)删除(6)更新(7)根据员工id和姓名获取员工对象(8)测试类简介MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单...
2019-09-14 22:06:55
84
原创 MyBatis 缓存机制
MyBatis缓存机制文章目录MyBatis缓存机制1、缓存机制简介2、一级缓存的使用3、一级缓存失效的几种情况4、二级缓存的使用1、缓存机制简介用户发送请求,dispatchServlet会根据请求调用对应的Controller进行处理,然后经过Service和Mapper,当Mapper去数据库查询数据之前,会先去缓存里去找,如果在缓存里没有找到,再去数据库里查询,这样可以避免和数据库的...
2019-09-14 22:03:17
100
原创 拦截器
拦截器文章目录拦截器1、自定义拦截器概述2、单个拦截器3、多个拦截器4、 多个拦截方法的执行顺序4.1、多个拦截器的执行顺序以及方法的执行情况1、自定义拦截器概述Spring MVC也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器可以实现HandlerInterceptor接口,也可以继承HandlerInterceptorAdapter适配器类。①...
2019-09-08 21:08:59
119
原创 JSTL
JSTL1、简介全称:JSP Standard Tag Library(jsp标准标签库)JSTL主要是以html形式,表达java的语义。JSTL一共有五大功能,常用核心、格式化、函数。2、JSTL使用准备工作(1)导入两个jar包taglibs-standard-impl-1.2.5taglibs-standard-spec-1.2.5(2)引入标签库<%@ ...
2019-09-07 15:59:10
74
原创 EL
EL1、简介EL是JSP内置的表达式语言。2、作用①用以访问页面的上下文以及不同作用域中的对象 ,取得对象属性的值,或执行简单的运算或判断操作②EL表达式用于代替JSP表达式(<%= %>)在页面中做输出操作。3、特点EL在得到某个数据时,会自动进行数据类型的转换。EL表达式仅仅用来读取数据,而不能对数据进行修改。使用EL表达式输出数据时,如果有则输出数据,如果为n...
2019-09-07 15:37:41
92
原创 Servlet
Servlet1.1什么是Servlet(Server Applet)服务器端小程序。为什么使用Servlet ?因为客户端(html或者jsp无法直接访问java文件,而我们需要客户端请求java文件。所以,需要特殊的java文件,即Servlet。特点:①可以被页面直接请求,即是URL特性(页面可以直接访问、浏览器也可以直接访问)。②全类名(让Servlet容器、JSP容器、Web容...
2019-09-07 13:39:11
93
原创 JdbcTemplate
JdbcTemplate简介为了使JDBC更加易于使用,Spring在JDBC API上定义了一个抽象层,以此建立一个JDBC存取框架。 作为Spring JDBC框架的核心,JDBC模板的设计目的是为不同类型的JDBC操作提供模板方法,通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低。①环境准备所需要的jar包(1)IOC容器所需要的JAR包commo...
2019-09-03 20:51:52
103
原创 REST
REST简介REST:即 Representational State Transfer。(资源)表现层状态转化。是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用① 资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。可以用一个URI(统...
2019-09-03 20:34:46
89
原创 SpringMVC(简单介绍)
SpringMVC(简单介绍)1.1SpringMVC 概述Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的MVC 框架之一。Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。一种轻量级的、基于MVC的Web层应用框架。偏前端而不是基于业务逻辑层。Spring框架的一个后续产品。支持 REST ...
2019-09-03 19:58:45
284
原创 Cookie
CookieCookie简介由于HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分中两次请求是否由一个客户端发出。这样的设计严重阻碍的Web程序的设计。Cookie实际上就是服务器保存在浏览器上的一段信息,用于区分不同用户。浏览器有了Cookie之后,每次向服务器发送请求时都会同时将该信息发送给服务器,服务器收到请求后,就可以根据该信息处理请求。Cookie的用途...
2019-09-01 22:24:02
67
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人