自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(166)
  • 资源 (14)
  • 收藏
  • 关注

原创 SpringBoot实现广州健康通疫苗预约提醒

一、前言终于轮到了打第二针疫苗的时候,无奈每次打开“广州健康通”或“粤康通”小程序,每次都是被预约完的状态,广州人口众多,说不定有很多人一直守在小程序前

2021-06-15 17:34:54 83 1

原创 RabbitMQ的安装教程

本文介绍RabbitMQ在Linxu上的安装教程。https://wwr.lanzoui.com/b02c5gn6f密码:9rqv

2021-06-11 16:38:20 16 3

原创 MySQL生成随机姓名

CREATE DEFINER=`root`@`localhost` FUNCTION `rand_name`(n int) RETURNS varchar(16) CHARSET utf8begin -- 初始化一个16姓氏字符串,作为姓氏字符库 declare family_str varchar (128) default '陈刘赵钱孙李周吴郑王卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章苏潘奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷汤滕殷罗毕郝邬安常'; .

2021-05-24 11:28:53 42 2

原创 Java实现List按条件分成多个子List

一、业务场景相信很多开发的小伙伴都有遇到过需要对表按特定条件进行查询,然后再进行归类,比如:对员工表进行检索,然后分别按他们所在的部门进行归类,一般的做法都是按部门唯一标识(比如部门编号、部门名称等)进行一次一次查询,这样做的缺点显而易见,会造成与数据库的多次连接,从而影响效率和性能。而我的做法是直接对员工表进行一次全部读取,然后在本地根据条件再进行归类,这就涉及到需要对List进行处理,将父List直接拆分成多个子List。当然,上面举的例子只是最简单的业务场景,实际场景可能错综复杂,但二、Jav

2021-05-17 11:43:31 53 2

原创 什么是线程池?为什么使用线程池?

1.什么是线程池?线程池和数据库连接池非常类似,可以统一管理和维护线程,减少没有必要的开销。2.为什么要使用线程池?因为频繁的开启线程或者停止线程,线程需要重新从cpu从就绪状态调度到运行状态,需要发送cpu的上下文切换,效率非常低。线程池是复用机制,提前创建好一些固定的线程数一直在运行状态,实现复用,从而可以减少就绪到运行状态的切换。...

2021-04-09 13:49:16 33

原创 Groovy学习-IO/文件操作

读取文件// 读取文本文件并打印每一行文本new File('./', 'a.txt').eachLine{ line -> println line}// eachLine方法是Groovy为File类自动添加的方法,同时提供多个变体方法,比如你想知道读取的行数,你可以使用它的变体方法,如下new File('./', 'a.txt').eachLine{ line, nb -> println "Line $nb: $line"}// 如果你需要收集文本

2021-02-02 22:40:11 52

原创 Groovy学习-集合语法增强

GPath支持def listOfMaps = [['a': 11, 'b': 12], ['a': 21, 'b': 22]]assert listOfMaps.a == [11, 21] //GPath 标记assert listOfMaps*.a == [11, 21] //扩展点符号listOfMaps = [['a': 11, 'b': 12], ['a': 21, 'b': 22], null]assert listOfMaps*.a == [11, 21, null] // 适

2021-01-31 15:00:50 54

原创 Groovy学习-map操作

创建和获取def map = [name: 'Gromit', likes: 'cheese', id: 1234]assert map.get('name') == 'Gromit'assert map.get('id') == 1234assert map['name'] == 'Gromit'assert map['id'] == 1234assert map instanceof java.util.Mapdef emptyMap = [:]assert emptyMap.si

2021-01-31 13:30:58 156

原创 Groovy学习-list操作

assert [1, 2, 3].find { it > 1 } == 2 // 找出第一个符合条件的元素assert [1, 2, 3].findAll { it > 1 } == [2, 3] //找出所有符合条件的元素assert ['a', 'b', 'c', 'd', 'e'].findIndexOf { // 找出符合条件的第一个元素的index it in ['c', 'e', 'g']} == 2assert ['a', 'b.

2021-01-30 21:39:55 61

原创 Sharding-JDBC实现水平分库分表

一、前言“分库分表”这一词大家都基本都知道,无非就是数据量过于庞大,几百万,几千万,甚至过亿的数据,在查询的时候特别地耗性能且查询等待时间过长,如果是碰上多张表关联的情况,那后果可想而知。之前在一次工作中,项目组长要我优化一句SQL,这句SQL关联了10多张表,数据量在500百万左右,而且没有建索引,在SQL里面还用到了模糊查询,我直接当场裂开,优化了老半天,勉勉强强从原来的3分多中优化到了2分多种,老实说,尽力了,按他现在的数据库表结构,这已经是极限了。归咎到底还是在数据量太庞大的原因上,一条数据有很

2021-01-17 16:24:45 221

原创 什么是ORM框架?

现在各大公司比较流行的ORM框架有MyBatis,Hibernate,Spring Data JPA等,甚至一些公司会进行封装后成为自己公司专用的框架。相信后端方向的各位小伙伴都知道,ORM框架就是连接数据库的桥梁,比较官方的说法叫“对象关系映射”。单单这六个字并不能很好地理解ORM框架。ORM 英文全称为Object Relational Mapping,翻译过来就是对象关系映射。ORM的核心到底是什么呢?万变不离其宗,各种ORM框架的核心说白了都一样,就是将数据库类型转换成面向对象编程语言的类型,可以理

2021-01-02 20:23:19 1557 1

原创 SpringBoot整合ActiveMQ

一、前言相信看到这篇文章,大家也应该知道ActiveMQ是一个消息中间件。主要特点就是异步处理,用来减少响应时间和解耦。主要的使用场景就是将比较耗时而且不需要即时同步返回结果的操作作为消息放入消息队列。由于使用了消息队列,只要保证消息格式不变,消息的发送方和接收方并不需要彼此联系,也不需要受对方的影响,即解耦合。二、理解ActiveMQ怎样理解ActiveMQ呢?ActiveMQ有两种消息传递模型,一种是点对点模型,一种是发布-订阅模型。我个人比较喜欢拿微信作为对象来代入进行理解。点对点模型,就

2020-12-30 20:55:03 1877 8

原创 微信公众号实现淘宝查券机器人

一、前言 前几年是微信公众号的急速发展时期,那个时期有不少的淘宝客利用微信公众号,将推广转移到微信公众号上面,利用所谓的“信息差”,将淘宝联盟平台的优惠券,以公众号查券的方式进行赚取佣金。可惜那个时候我才刚入大学,不然还真可能让我赚到人生的第一桶金。可能有些人看不起这几毛几块的佣金,但是如果推广的好,达到一定的数量,那么大家可想而知。最近突然想到这么一个有趣的东西,然后也经过研究,和其他的查券机器人一样,将它实现在了公众号里面。可以以此博客为参考,自己实现微信查券机器人。二、注册淘宝联...

2020-12-27 15:31:34 1499 2

原创 ActiveMQ初步安装

一、官网下载ActiveMQ官网:http://activemq.apache.org/安装ActiveMQ的前提是已经安装好了JAVA JDK环境。PS:我这里下载的是经典版下载完之后将它放进Centos的opt目录下,进行解压tar -zxvf apache-activemq-5.16.0-bin.tar.gz可以选择新建一个目录将解压出来的文件拷贝进去,我这里放入根目录下的myactivemq文件夹mkdir /myactivemqcp -rapache-..

2020-12-13 18:41:08 96

原创 nginx安装教程

前言:自从上了班之后博客就一直没更新了,但不能阻止我获取新知识的脚步。本文主要讲述Linux下nginx的安装。准备工作:需要有Linux环境,这里我是使用虚拟机进行安装学习的。一共需要安装四个软件,才能完成nginx的安装。这四个软件可从我的网盘获取:链接:https://pan.baidu.com/s/1zpuIvkga147ACbsyBHQ0Hw提取码:abt8一、需安装C语言和C++编译环境安装gcc和g++:yum -y install gcc gcc-c++ autoco..

2020-12-06 16:49:43 58 1

原创 Java设计模式——职责链模式

前言(废话):走出大学工作了差不多10个月,新东西没学到,整天crud,备受甲方摧残,秃了头发,对互联网行业也日益厌倦。除了在业务能力变强了以外,啥也没学到,工作也没了什么挑战性。这不,最近在准备软考,对Java23种设计模式有了那么一点点了解。当知道有“职责链”模式存在的时候,突然来了兴趣,这不就是我工作了这么久项目用的设计模式吗?想当初刚入公司的时候,一不小心入了这个项目的坑,负责带我实习的那个,和我说这个项目用的设计思想是“策略”模式,当时对设计模式并不了解,还真就信以为真,一直在想这个项目的框架是哪

2020-10-20 23:02:31 135 3

原创 媒体查询+rem+flexible.js实现移动端适配

技术栈简介:媒体查询:通过查询当前属于哪种设备, 让网页能够在不同的设备下正常的预览。(再通俗点来说,就是通过媒体查询,能够自动判断该浏览器所在屏幕的大小)rem:CSS3新增的相对长度单位,是指相对于根元素html的font-size计算值的大小。简单可理解为屏幕宽度的百分比。flexible.js:用来适配移动端的javascript框架。根据宽度的不同设置不同的字体大小,样式间距都使用rem作为单位,不同屏幕大小适配不同的样式。下载normalize.css:这一步可跳过,Norm

2020-06-09 22:04:18 557 2

原创 SpringBoot整合SpringSecurity+JWT实现用户验证和鉴权

前言之前一直都是用shiro在做用户的验证和鉴权,最近在SpringSecurity上也踩了不少坑。对于SpringSecurity比较官方的解释是:Spring Security是Spring提供的一个安全框架,提供认证和授权功能,最主要的是它提供了简单的使用方式,同时又有很高的灵活性,简单,灵活,强大。但在使用的时候,却没有说的那样轻松,明明作为一个框架,应该是又简单又方便使用,配合上JWT,那就是双倍的快乐。技术栈SpringBoot、SpringSecurity、JWT、Spring D

2020-05-28 11:56:03 689

原创 前端面试题 (一)

此处省略一万个字表达我的心情...............................1.<img>的title和alt有什么区别?通常当鼠标滑动到元素上的时候显示; alt是<img>的特有属性,是图片内容的等价描述,用于图片无法加载时显示、读屏器阅读图片。可提图片高可访问性,除了纯装饰图片外都必须设置有意义的值,搜索引擎会重点分析。2.HTTP的几种请求...

2020-04-15 22:06:54 174

原创 Java 面试题 -- Spring

1.什么是 Spring IOC 容器?Spring 框架的核心是 Spring 容器。容器创建对象,将它们装配在一起,配置它们并管理它们的完整生命周期。Spring 容器使用依赖注入来管理组成应用程序的组件。容器通过读取提供的配置元数据来接收对象进行实例化,配置和组装的指令。该元数据可以通过 XML,Java 注解或 Java 代码提供。2.什么是依赖注入?在依赖注入中,您不必...

2020-04-13 14:55:05 135

原创 Java 面试题 -- 基础(三)

1.抽象类(abstract class)和接口(interface)有什么异同?抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的...

2020-04-12 10:12:05 106

原创 Java 面试题 -- 基础(二)

1.String 是最基本的数据类型吗?不是。Java 中的基本数据类型只有 8 个 :byte、short、int、long、float、double、char、boolean;除了基本类型(primitive type),剩下的都是引用类型(referencetype),所以String属于引用类型。Java 5 以后引入的枚举类型也算是一种比较特殊的引用类型。2.float f=3....

2020-04-10 17:33:00 97

原创 百万数据使用子查询进行SQL优化

操作:查询条件放到子查询中,子查询只查主键ID,然后使用子查询中确定的主键关联查询其他的属性字段。原理:减少回表操作。适用场景:使用limit分页查询-- 优化前SQLSELECT 各种字段FROM `table_name`WHERE 各种条件LIMIT 0,10;-- 优化后SQLSELECT 各种字段FROM `table_name` main_ta...

2020-04-06 16:06:10 218

原创 Java 面试题 -- Java Web

1.jsp 和 servlet 有什么区别?jsp经编译后就变成了Servlet。(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)jsp更擅长表现于页面显示,servlet更擅长于逻辑控制。Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,Htt...

2020-04-06 10:15:58 82

原创 Java 面试题 -- 多线程

1.并行和并发有什么区别?并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔发生。并行是在不同实体上的多个事件,并发是在同一实体上的多个事件。在一台处理器上“同时”处理多个任务,在多台处理器上同时处理多个任务。如hadoop分布式集群。所以并发编程的目标是充分的利用处理器的每一个核,以达到最高的处理性能。2.线程和进程的区别?简而言之,进程是程序运行和...

2020-04-05 17:32:41 107

原创 Java 面试题 -- 基础(一)

哈哈哈,从今天开始重新踏上求职之路。一、Java 基础1.final 在 java 中有什么作用?final 修饰的类叫最终类,该类不能被继承。final 修饰的方法不能被重写。final 修饰的变量叫常量,常量必须初始化,初始化之后值就不能被修改。2.java 中的 Math.round(-1.5) 等于多少?等于 -1,因为在数轴上取值时,中间值(0.5)向右取整,所以...

2020-04-05 12:09:10 100 1

原创 SpringCloud篇:基于RestTemplate的风格调用

一、什么是RestTemplateRestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。所以从本质上来说,RestTemplate并不属于SpringCloud中的内容,而是属于Spring中的一个生态。而SpringCloud,并不是一个框架,而是一堆框架的集合体,包含了多种技...

2020-03-06 11:40:52 148

原创 SQL Server实现敏感信息以星号处理

最近有个需求,就是需要把一些敏感信息,如姓名,身份证号,手机号等涉及个人隐私的信息,以*号进行表示。我这里使用的是SQL Server数据库,不适合其他数据库使用,但是思路一样。解决思路:办法有很多,可以通过正则表达式、字符串截取、拼接的形式,我使用的是字符串截取、拼接的方式,比如身份证,我只需要截取它左边4个字符,右边2个字符,而中间的字符我用 * 进行拼接。我这里用到了SQL Serve...

2020-02-26 18:00:02 1487

原创 Spring Data JPA -- 多表操作(一对多)

前言在实际的开发中,一对多是家常便饭。举个栗子,比如一个部门,在部门里面包含了多个员工,其中,部门就是一,而员工当然就是多。接下来就以这个栗子进行开发。以下是我所用到的表数据:表employee:表department:1.新建两个实体类Employee类:package com.chen.domain.entity;import lombok.Getter;...

2020-02-24 18:41:02 393

原创 Spring Data JPA -- 多表操作(一对一)

一、一对一所谓一对一,就是在两个表中有唯一的两条数据相互对应。举个栗子,一个人只有一个身份证号,这就是一对一。下面讲解怎么在Spring Data JPA 中实现一对一操作。首先我们这里有两张表,一张Person表,一张Address表,也就是一个人只有一个家庭住址。person表: Address表:1.新建两个实体类Person类:package com.c...

2020-02-24 16:50:11 297 1

原创 Spring Data JPA -- 单表操作

1.利用 JPA 特有的接口方法实现单表操作从上一篇环境搭建的文章中可以发现,只是继承了两个接口,就简单的实现了查询操作。这是因为继承的 JpaRepository 中已经为我们封装了很多方法,底层则是一些jdbc操作。package com.chen.service;import com.chen.dao.UserDao;import com.chen.domain.en...

2020-02-18 19:52:29 174

原创 Spring Data JPA -- 环境搭建

1.新建SpringBoot项目,在 pom.xml 导入需要的依赖所需依赖:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2020-02-17 19:19:35 187 1

原创 SQL 笔记--函数

AVG 函数作用:AVG 函数返回数值列的平均值。NULL 值不包括在计算中。语法:SELECT AVG(column_name) FROM table_nameCOUNT(column_name) 语法作用:返回指定列的值的数目(NULL 不计入)。语法:SELECT COUNT(column_name) FROM table_nameCOUNT(*) 语法...

2020-02-16 15:18:37 79

原创 SQL 笔记--高级

TOP 子句作用:TOP 子句用于规定要返回的记录的数目。对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。注释:并非所有的数据库系统都支持 TOP 子句。语法:SELECT TOP number|percent column_name(s) FROM table_nameLIKE 操作符作用:LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。...

2020-02-16 14:39:34 1106

原创 SQL 笔记--基础

前言SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。用法SELECT 语句作用:SELECT 语句用于从表中选取数据。结果被存储在一个结果表中(称为结果集)。...

2020-02-15 19:46:43 113

原创 Spring Boot项目打包成war包

在pom.xml文件中,将打包方式改为war:<packaging>war</packaging>然后添加如下的Tomcat依赖配置,覆盖Spring Boot自带的Tomcat依赖:<dependency> <groupId>org.springframework.boot</groupId> <...

2020-02-10 20:08:22 123

原创 zookeeper 安装

zookeeper安装步骤:将本地zookeeper包上传到Linux:scp C:\Users\chen\Desktop\zookeeper-3.4.9.tar.gz chen@192.168.40.128:soft将zookeeper包移动到/opt目录下:mv soft/zookeeper-3.4.9.tar.gz /opt解压:tar -zxvf /opt...

2020-02-10 14:39:05 97

原创 Java 使用枚举定义常量

前言JDK1.5之后出现了枚举类型,最近在公司的项目中一直出现了枚举,发现枚举真香。对于项目比较庞大的,使用枚举不仅可以增加代码的可读性,也就是大佬们说的“优雅”,还有利于后期代码的维护。枚举比较常用的场景就是用于常量的定义,但是相比于使用“static final”,枚举类型会增加内存的消耗,这个就是枚举的缺点,但是对于目前的硬件来说,这点还是可以忽略的。使用枚举定义常量packa...

2020-02-10 10:07:22 1350 1

原创 AES算法进行加密解密--工具类

AES介绍:密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES(Data Encryption Standard),已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS...

2020-01-27 20:42:15 163

原创 Docker安装步骤

建议最好在安装之前,将镜像源修改为阿里云或网易云的镜像源。修改源步骤1.安装wgetyum install -y wget2.下载CentOS 7的repo文件wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo3.清除缓存yum cl...

2020-01-22 14:30:33 1420

flexible.js

flexible.js手淘框架,是一个用来适配移动端的js框架。手淘框架的核心原理就是根据不同的width给网页中html跟节点设置不同的font-size,然后所有的距离大小都用rem来代替,这样就实现了不同大小的屏幕都适应相同的样式了。

2020-06-12

软件工程02333自考复习资料

软件工程02333自考复习资料

2021-03-30

Java语言程序设计04747自考历年真题

Java语言程序设计04747自考历年真题

2021-03-30

闹钟源代码

简易闹钟源代码,很不错的参考代码,下载自取。谢谢!

2018-05-24

hibernate-release-5.0.7.Final

hibernate-release-5.0.7.Final版本,因为受csdn限制,我把压缩包放在了百度网盘,可通过百度网盘链接下载。

2019-03-04

植物大战僵尸源码

制作的一款java植物大战僵尸游戏,适合新手学习,关键对于实训有很好的参考价值

2018-06-02

用java写的代码雨

用java写的应用程序,可以实现代码雨,关键还可以用做电脑桌面。

2018-06-09

java 推箱子游戏

适合新手学习使用,附有游戏素材,关卡共有50关,实现了背景音乐的功能,同时可以控制关卡数。

2018-05-31

人脸识别小程序

该小程序基于face++平台进行开发,可以实现颜值检测,人脸识别,智能美颜,物体识别,手势识别等功能。

2019-07-06

新浪新闻APP

利用JSoup对新浪新闻网页源码进行解析,提取新闻数据到APP中,可以实现对新闻的实时刷新

2019-02-05

用Ajax和JavaSc实现对省份城市的三级联动

用Ajax和JavaScript实现对XML文件的解析,并实现省份城市的三级联动效果

2018-12-07

智能捡球车最终版源码.zip

基于树莓派的智能捡球车,可以实现捡球车对乒乓球的抓取,同时可通过安卓端对捡球车进行控制。

2019-07-06

bootstrap-3.3.7-dist

前端bootstrap框架,官网下载bootstrap-3.3.7-dist压缩版本。

2019-02-08

java 2D迷宫源码

非常适合新手参考使用,附有游戏素材,可以运行使用。

2018-05-31

空空如也

空空如也

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

TA关注的人 TA的粉丝

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