自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL进阶篇之 ‘锁’

概述介绍锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。分类MySQL中的锁,按照锁的粒度分,分为以下三类全局锁:锁定数据库中的所有表。表级锁:每次操作锁住整张表。行级锁:每次操作锁住对应的行数据全局锁介绍

2022-05-14 01:57:54 394

原创 Java后端生成二维码(QrCode)

Java后端二维码生成

2022-04-04 16:05:15 3962

原创 Java 后端实现全国省市区树形结构数据查询

使用到的sql文件自取链接:https://pan.baidu.com/s/1YmpGH6UXCgie-T6xUrIwxQ提取码:regnentityimport lombok.Data;import java.io.Serializable;import java.util.List;@Datapublic class Region implements Serializable { private Integer id; /** * 区划码 *

2021-12-04 19:15:50 4585 7

原创 MyBatis Plus(三) 自动生成代码

MyBatis Plus 自动生成根据数据库表自动生成实体类、Mapper、Service、ServiceImpl、Controller。1.pom.xml中 引入MyBatis Plus Generator<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version

2021-07-02 22:15:00 221

原创 MyBatis Plus(二) 常用注解

常用注解@TableName :映射数据库的表名package com.weiruan.cn.mybatisplus.entity;import com.baomidou.mybatisplus.annotation.*;import lombok.Data;@Data@TableName(value="t_user")public class User { private Long id; private String username; private Stri

2021-07-02 22:12:30 259 2

原创 MyBatis Plus(一) 快速入门

MyBatis Plus一、MyBatis Plus基本介绍国产的开源框架,基于MyBatis , 在MyBatis基础之上只做增强核心功能:为了简化开发、提升效率而生。二、MyBatis Plus 快速上手SpringBoot(2.5.2)+MyBatis Plus(国产的开源框架,并没有加入Spring的官方孵化器当中)1.创建springboot项目2.pom.xml文件引入mybatis-plus的依赖 <dependency> <groupId>

2021-07-02 22:05:02 117

原创 SpringBoot(六) war包部署

一、程序入口类扩展继承SpringBootServletInitializer类@SpringBootApplicationpublic class Application extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(Application.class,args); }}二、程序入口类覆盖如下方法@Spr

2021-05-28 17:27:13 210

原创 FreeMarker介绍与使用

1.FreeMarker引言FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据,并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。2.FreeMarker的设计思想3.FreeMarker的第一个java程序引入freemarker -2.3.23 依赖设置模板<html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-

2021-04-22 23:15:44 1376

原创 Thymeleaf(三) 常用标签和方法

6.常用th标签都有那些?关键字功能介绍案例th:id替换id<input th:id="'xxx' + ${collect.id}"/>th:text文本替换<p th:text="${collect.description}">description</p>th:utext支持html的文本替换<p th:utext="${htmlcontent}">conten</p>th:object

2021-04-22 22:50:03 954 2

原创 Thymeleaf (二) 标准表达式语法

https://zhidao.baidu.com/question/119569892.html

2021-04-22 22:22:35 246

原创 初识 Thymeleaf (一)

1.什么是thymeleaf?Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSP 。帮助文档2.thymeleaf的特点Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可

2021-04-22 22:01:18 284

原创 第九章 Spring Cloud Config

9-1. Spring Cloud Config是什么?​   在分布式的系统中,尤其是当我们的分布式项目越来越多,每个项目都有自己的配置文件,对配置文件的统一管理就成立一种需要,而Spring Cloud Config就提供了对各个分布式项目配置文件的统一管理支持。Spring Cloud Config也叫分布式配置中心,市面上开源的分布式配置中心有很多,比如国内的,360的QConf、淘宝的diamond、百度的disconf都是解决分布式系统配置管理问题,国外也有很多开源的配置中心,Apache的

2021-02-15 18:04:01 128

原创 第八章 API网关Zuul

8-1. Spring Cloud 的zuul是什么?​   通过前面的学习,我们已经基本搭建出一套简略版的微服务架构了,我们有注册中心Eureka,可以将服务注册到注册中心去,我们有Ribbon或Feign可以实现对服务的负载均衡调用,我们有Hystrix可以实现服务的熔断,但是我们还缺少什么呢?​   我们首先来看一个微服务架构图:​   在上面的架构图中,我们的服务包括:内部服务ServiceA和内部服务ServiceB,这两个服务都是集群部署的,每个服务部署了三个实例,他们都会通过Eu

2021-02-15 18:00:57 195

原创 第七章 声明式服务Feign

7-1. Feign是什么?​   Feign是NetFlix公司开发的一个声明式的REST调用客户端。​   Ribbon负载均衡、Hystrix服务熔断器是我们Spring Cloud中进行微服务开发非常基础的组件,在使用的过程中我们也发现它们一般都是同时存在的,而且配置也都非常相似,每次开发中有很多相同的代码,因此Spring Cloud基于Netflix Fegin整合了Ribbon和Hystrix两个组件,让我们的开发工作变得非常简单,就像Spring Boot是对Spring + Spr

2021-02-15 17:56:40 184

原创 第六章 服务熔断器Hystrix

6-1.Hystrix是什么?​   在微服务的框架中,我们是将一个单体应用拆分成多个服务单元,各个服务单元之间通过注册中心彼此发现和消费对方提供的服务,每个服务器单元都是单独部署,在各自服务的运行进程中,服务之间通过远程调用实现信息交互,那么当某个服务响应太慢或者故障,又或者因为网络波动或故障,则会造成调用者延迟或调用失败,当大量请求到达,则会造成请求的堆积,导致调用者的线程挂起,从而引发调用者无法响应,调用者也发生故障。​   比如电商中的用户下订单,我们有两个服务,一个下订单服务,一个减库存服

2021-02-15 17:52:48 279

原创 第五章 客户端负载均衡Ribbon

5-1. Spring Cloud 中的Ribbon是什么?​   我们通常说的负载均衡是将一个请求均匀分摊到不同的节点单元上执行,负责均衡分为硬件负载均衡和软件负载均衡硬件负载均衡: 比如F5、深信服、Array等。软件负载均衡: 比如 Nginx,LVS、HAProxy等。  硬件负载均衡或者软件负载均衡,他们都会维持一个可用的服务端清单,通过心跳检测来剔除故障的服务端节点以保证清单中都是可以正产访问的服务端节点。当客户端发送请求到负载均衡设备的时候,该设备按照某种算法(比如:轮询、权重

2021-02-15 17:47:35 194

原创 第四章 服务注册中心Eureka

4-1. Eureka 注册中心高可用集群概述​   在微服务架构的这种分布式系统中,我们要充分考虑各个微服务组件的高可用性问题,不能有单点故障,由于注册中心eureka本身也是一个服务,如果它只有一个节点,那么它有可能发生故障,这样我们就不能注册和查询服务了,所以我们需要一个高可用的服务注册中心,这就需要注册中心集群来解决。​   eureka服务注册中心它本身也是一个服务,它可以看做是一个提供者,又可以看做是一个消费者,我们之前通过配置 eureka.client.register-with-e

2021-02-15 17:41:13 170 1

原创 第三章 Spring Cloud 快速开发入门

3-1. 搭建和配置一个服务的提供者我们知道,Spring Cloud 构建微服务是基于Spring Boot开发的。创建一个Spring Boot工程,并且添加Spring Boot的相关依赖创建一个服务提供者的访问方法,也是后期消费者如何访问提供者Spring Cloud 是基于rest的访问,所以我们添加一个Controller,在该Controller中提供一个访问入口:@RestControllerpublic class ProviderController{ @Requ

2021-02-15 17:34:28 152

原创 第二章 认识Spring Cloud

2-1. Spring Cloud 是什么?Spring Cloud是一个一站式的开发分布式系统的框架,为开发者提供了一系列的构建分布式系统的工具集Spring Cloud为开发人员提供了快速构建分布式系统中一些常见的工具(比如:配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分部署会话和集群状态管理等)。开发分布式系统都需要解决一系列共同关心的问题,而使用Spring Cloud可以快速地实现这些分布式开发共同关心的问题,并能方便地在任何分布式环境中部署与运行。Spri

2021-02-15 17:19:49 135

原创 第一章 微服务架构概述

1-1.系统进化理论概述在系统架构和设计的实践中,经历了两个阶段,一阶段是早些年常见的集中式系统,一阶段是今年来流行的分布式系统。集中式系统集中式系统也叫单体应用,就是把所有的程序、功能、模块都集中在一个项目中,部署在同一台服务器上,从而对外提供服务;分布式系统分布式系统就是把所有的程序、功能拆成不同的子系统,部署在不同的服务器上,这些子系统相互协作共同向外提供服务,而对用户而言他并不知道后台是多个子系统和服务器在提供服务,在使用上和集中式系统一样;集中是系统和分布式系统是两个相反的概念,他们

2021-02-15 17:11:17 310 1

原创 PHP实现倒计时功能demo

<!DOCTYPE html><html><head> <title>PHP实现倒计时功能</title></head><body><?php date_default_timezone_set('PRC'); $starttimestr = date('Y-m-d H:i:s', strtotime('now')); $starttimestr= mktime(0,0,0

2020-11-12 09:26:25 351

原创 WPS全部常用快捷键

**WPS全部常用快捷键:** 1.F1:打开WPS在线帮助网页。 2.F5:幻灯片放映〖WPS演示〗。 3.F7:打开“检查拼写”对话框。  4.F12:打开“另存为”对话框。  5.Enter:应用对话框设置,相当于对话框中的“确定”按钮。强行分段〖WPS文字,WPS演示〗。活动单元格向下移动一格〖WPS表格〗。  6.Esc:不应用对话框设置,相当于对话框中的“取消”按钮。退出复制单元格后的流水框〖WPS表格〗。退出幻灯片放映〖WPS演示〗。  7.Tab:活动单元格向右移动一格〖WP

2020-09-30 10:01:29 6258

原创 Java实现word文档转pdf(无需插件,仅需一个jar包)

实现功能docx文档转换为PDF转换之后排版不混乱依赖aspose-words-15.8.0-jdk16.jar包提取路径(用于PDF转换 )链接:https://pan.baidu.com/s/1myCbpT7_H8MXY-oQD10S4Q提取码:yxzs环境JDK1.8代码import com.aspose.words.Document;import com.aspose.words.License;import com.aspose.words.Save.

2020-09-28 09:45:39 3310 1

原创 多个word合并成一个word java实现(合并后格式完美匹配)

import org.apache.poi.openxml4j.opc.OPCPackage;import org.apache.poi.xwpf.usermodel.Document;import org.apache.poi.xwpf.usermodel.XWPFDocument;import org.apache.poi.xwpf.usermodel.XWPFPictureData;import org.apache.xmlbeans.XmlOptions;import org.openx.

2020-09-27 18:07:30 3327 8

原创 String类型的金额 转换成大写汉字金额 工具类

import java.text.DecimalFormat;import java.util.Scanner; /** * 描述:只能计算到小数点后两位 超过两位直接取整了 * 作者: Mr Yang * 创建日期: 2020-9-27 * 修改记录: */public class ConvertMoney { private static final String STR_UNIT[] = {"","拾","佰","仟","万","拾","佰","仟","亿"}; .

2020-09-27 17:34:20 484

原创 idea svn 提交拉取代码抛出 Error:‘C:\Program‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

换个文件夹名,即可

2020-08-05 19:10:29 331

原创 ocacle数据库相关练习二(分页、子查询、表连接)

分页查询练习1. 查询工资最高的3名员工信息select t1.* from (select * from employees order by salary desc) t1 where rownum<=32. 查询工资排名第5到第10的员工信息select t2.* from (select t1.*,rownum rn from (select * from employees order by salary desc)t1 where rownum<=10)t2

2020-07-29 20:30:30 641

原创 oracle数据库相关练习一(基础、单行函数、组函数)

1.查询员工表所有数据select * from employees;2. 打印公司里所有的manager_idselect manager_id from employees where job_id like '%MAN';3. 查询所员工的email全名,公司email 统一以 "@zpark.cn" 结尾select email||'@zpark.cn' "email" from employees4. 按照入职日期由新到旧排列员工信息select * from employees o

2020-07-29 20:28:55 1355

原创 idea集成gitBash

1.登录gitHub2.git相关配置3.替换idea的终端为gitBash4.把本地项目交由git管理5.查看修改alt+9 打开git控制台6.在github上创建仓库7.快捷键commit ctrl+kcommit and push ctrl+alt+k更新github上的变更 ctrl+t8.代码冲突1.代码没有交集 合并2.代码有交集 最好先把更改并未commit的代码,做备份和你发生冲突的同事商议...

2020-07-24 18:43:49 552

原创 Redis的安装步骤

1. 安装gcc运行环境yum -y install gcc 或手动导入安装2. 上传redis的资料包在CRT中 alt+p , 直接拖进3. 解压redis的压缩包tar -zxvf xxx.zip4. 进入redis包执行指令make5. 编译完成之后安装redismake install PREFIX=/usr/redis6. 启动redis./redis-server /root/redis-4.0.9/redis.conf7. 使用redis的客户端连接

2020-07-24 17:46:28 79

原创 Redis缓存后台实现

需要的jar<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency> <groupId>org.springframework.boot</groupId&g

2020-07-24 17:38:22 187

原创 使用CXF框架客户端调用SOAP协议的WebService服务

步骤1.生成客户端代码使用wsimport命令 生成客户端调用代码wsimport ­d(生成.class 默认参数) .(当前目录) ­p(指定包名) wsdl地址simport ­s(生成源代码) .(当前目录) ­p(指定包名) wsdl地址 一般使用这个或者使用ideas/eclipse工具直接生成2.创建一个web项目 将生成的代码放入到项目中即可3.引入cxf和spring的jar <dependency> <groupId>org.sp

2020-07-22 18:24:43 868 1

原创 使用CXF框架发布SOAP协议的 WebService服务

引言Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Se

2020-07-22 16:27:45 281

原创 shiro框架(一)

什么是shiro?Shiro是apache旗下一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。为什么要学shiro?既然shiro将安全认证相关的功能抽取出来组成一个框架,使用shiro就可以非常快速的完成认证、授权等功能的开发,降低系统成本。shiro使用广泛,shiro可以运行在web应用,非web应用,集群分布式应用中越来越多的用户开始使用shiro。java领域中spring security(原名A

2020-07-21 16:55:35 137

原创 html页面去掉滚动条

有时候特别需要,个别网页要去掉横向滚动条和竖向滚动条,那该怎么去掉呢,很简单,看代码:让竖条没有:<body style=`overflow:-Scroll;overflow-y:hidden` > </body>让横条没有:<body style=`overflow:-Scroll;overflow-x:hidden` > </body>火狐底部滚动条不显示:html { overflow:-moz-scrollbars-vertical

2020-07-06 15:26:10 1299

原创 org.apache.catalina.LifecycleException: Failed to start component

web项目部署到tomcat出现错误ContainerBase.addChild: start: org.apache.catalina.LifecycleException:Failed to start component简单粗暴的方法先检查web.xml如果web.xml没问题删除tomcat webapps和work文件夹下的项目文件夹再重新部署即可...

2020-07-04 08:56:25 172

原创 idea 模糊搜索 ctrl + f(单词不完整搜索不到的解决办法)

1,现象描述,笔者在用 idea 的 ctrl + f 搜索文件的内容时,发现了很神奇的问题,就是字符串必须输入完整才能搜索到,输入一半,哪怕是个字母输入了9个也搜不到2,可以发现,就差一个字母 h 没有输入,就显示的红框搜索不到3,输入完整时,就可以搜到了4,其实,这是由于笔者对 idea 不熟悉,或者是眼力不好,在搜索框的后面是有选项的,系统默认勾选了 words,所以就必须是完整的单词才能搜索到5,也许是出于性能考虑或者比的什么,我们只需要将 words 前面的勾选去掉,就能够实现友好的

2020-07-02 10:58:09 2715 1

原创 idea 常用快捷键

Idea 常用快捷键!【使用Ctrl+F搜索】Ctrl+Z:撤销Ctrl+Shift+Z:重做Ctrl+X:剪贴Ctrl+C:复制Ctrl+V:粘贴Ctrl+Y:删除当前行Ctrl+D:复制当前行Ctrl+Shift+J:将选中的行合并成一行Ctrl+N:查找类文件Ctrl+Shift+N:查找文件Ctrl+G:定位到文件某一行Alt+向左箭头:返回上次光标位置Alt+向右箭头:返回至后一次光标位置Ctrl+Shift+Backspace:返回上次编辑位置Ctrl+Shift+

2020-07-02 10:49:06 309

原创 SpringBoot(五) 切面编程AOP 和 拦截器

切面编程(AOP)springboot是对原有项目中spring框架和springmvc的进一步封装,因此在springboot中同样支持spring框架中AOP切面编程,不过在springboot中为了快速开发仅仅提供了注解方式的切面编程.使用1.引入依赖<dependency> <groupId>org.springframework.boot</...

2020-04-08 02:14:33 650

原创 SpringBoot(四)集成 logback日志

1. logback简介Logback是由log4j创始人设计的又一个开源日志组件。目前,logback分为三个模块:logback-core,logback-classic和logback-access。是对log4j日志展示进一步改进2. 日志的级别DEBUG < INFO < WARN < ERROR日志级别由低到高: 日志级别越高输出的日志信息越少3. 项目中...

2020-04-08 01:38:30 128

空空如也

空空如也

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

TA关注的人

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