自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

祖哥的博客

看淡人生情无悔 惟愿红尘一生醉

  • 博客(45)
  • 收藏
  • 关注

原创 Centos7下载和安装教程

1.CentOS下载CentOS是免费版,推荐在官网上直接下载,网址:https://www.centos.org/download/DVD ISO:普通光盘完整安装版镜像,可离线安装到计算机硬盘上,包含大量的常用软件,一般选择这种镜像类型即可。Everything ISO:包含了完整安装版的内容,并对其进行补充,集成了所 有软件。Minimal ISO:这个版本为精简版的镜像,可以安...

2020-12-18 17:37:42 255513 36

原创 Stream流递归查询部门树

Java 递归查询树是很常见的功能,也是很有多写法,小编这里记录stream流递归部门树写法,自从小编用上stream流之后,是爱不释手,的确是个不错的好东西,话不多说,直接上代码。第一步:先创建dept部门表,简单塞点数据。stream流递归查询部门树,你学会了吗。第五步:启动程序,并调用接口,结果如下。第三步:编写controller层。第四步:业务层代码逻辑实现。第三步:创建部门vo对象。

2024-01-11 15:21:18 555

原创 EasyPOI导出报表(二)-合并单元格

这里我是在上篇的基础上粘贴的主要代码,如有需要可先看EasyPOI导出报表第一篇(http://t.csdnimg.cn/2ndg2)上篇讲到EasyPOI导出常规报表,本篇是在此基础上再增加新的东西-合并单元格,这个功能在需求中也很常见。接下来启动程序并调用接口,导出结果如下。EasyPOI工具类加上如下方法。controller层。

2024-01-11 09:50:42 766

原创 EasyPOI导出报表(一)-常规报表导出

报表导出是一种很常见的功能,只要是开发都会设计到这一功能,早些年经常集成poi完成导出功能,我之前也有写过关于poi导出的文章,现如今,也有了更为方便的导出插件 — EasyPOI,废话不多说,开始撸代码。

2024-01-10 21:35:42 467 1

原创 springboot配置多数据源

在开发过程中,为了满足需求,会从第三方获取需要的数据,这个时候,除了使用原始的jdbc方式读取数据外,还可以配置多数据源来获取我们想要的数据。

2024-01-10 16:55:17 520

原创 Java Stream流对多个字段进行排序

通过代码我们可以知道通过stream的sorted()方法就可实现我们想要的结果,原理还是利用Comparator比较器对要排序的字段进行比较,如果想倒序,则在比较器后面加上reversed(),该方法是对排序后的数据进行一个反转。谈起Java 8,不少熟悉它的人,都会知道有一个对我们帮助很多大新特性,没错,就是我们在项目中经常用到的stream,它在我们对数据的处理的过程中提供了很多的便利,而这边文章主要讲述stream的便利之一:对多个字段进行排序。

2023-07-15 14:26:20 3717

原创 SpringBoot使用@Async注解实现异步调用

什么是@Async被@Async标注的方法,称之为异步方法,会被独立的线程所执行,调用者无需等待它执行完毕,也可以执行其他操作。@Async标注在类上,表名类的所有方法都是异步方法@Async的具体使用1、添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId>

2021-03-24 16:57:13 521

原创 ApplicationRunner——SpringBoot启动加载类

在实际开发项目中,我们总会遇到这样的情景,在项目启动后需进行初始化操作,最为常用的就是使用ApplicationRunner接口,然后使用该接口中的run()方法,在run()方法中进行你需要初始化的操作。具体实现:可以允许创建多个加载类,在类上加上@Oeder注解,并指定加载的顺序,数字越小,优先级越高启动程序...

2021-03-16 17:28:51 420

原创 git常用命令大全

git提交代码流程git pull 拉取最新代码,在提交代码之前,先更新代码以避免代码冲突git status 查看当前项目中有哪些文件被修改过git add . 将所有修改的文件全部提交到暂缓区git commit -m “提交代码说明” 将代码提交到本地仓库git push origin master 将本地分支推送到远程分支git branch相关命令git branch 查看当前分支git branch - a 列出远程分支git branch --al

2020-11-13 11:13:43 409

原创 SpringBoot+AOP实现用户操作日志的记录

任何一个项目都会有一个用户操作日志(也叫行为日志)的模块,它主要用来记录某个用户做了某个操作,当出现操作失败时,通过日志就可以快速的查找是哪个用户在哪个模块出现了错误,以便于开发人员快速定位问题所在。

2020-09-27 16:57:05 8199 20

原创 SpringBoot如何集成Swagger2

现在开发大多都是基于前后端分离,传统编写和维护接口文档及测试已经不能满足前后端各自开发的需要,因此swagger2的出现便解决了这一困扰,并且也能减少后端的工作量一、swagger2是什么?swagger2 是一个规范和完整的框架,用于生成、描述、调用和可视化Restful风格的web服务二、集成swagger2步骤添加依赖 <dependency> <groupId>org.springframework.boot</gro

2020-09-17 09:42:45 343

原创 如何配置数据库带有下划线字段对应Java实体类属性(驼峰命名)

一般开发中,数据库字段设计推荐使用下划线(u_name),Java实体类属性使用驼峰命名(uName),为了能使数据库字段与Java实体类属性一一映射,需要做一下的配置,这里我用的是spring boot+mybatis首先在application.properties配置文件中开启驼峰命名#开启驼峰命名mybatis.configuration.mapUnderscoreToCamelCase=true如果是mybatis全局配置文件,就加入下面一段代码<settings>

2020-06-25 04:13:51 10578 3

原创 Windows下实现Mysql8.0自动备份数据库

相信大家在项目开发过程中,都会下意识地想要对数据库的数据进行备份,数据库的备份还是很重要的 ,可以防止数据丢失进行恢复,避免造成不必要的损失和麻烦,数据库的备份有很多种方法,小编在这里用mysqldump脚本来备份数据库1. 首先我们创建一个文本文档,在文本文档里面复制以下内容@echo off set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%" "C...

2020-05-06 17:28:56 2321

原创 springboot内嵌tomcat不能处理特殊字符的解决方案

相信大家在使用spring boot进行开发项目中会遇到下面如图所示的问题:导致出现这样的原因我想大家在网上都能百度到:没错,这个问题是高版本tomcat中的新特性:就是严格按照 RFC 3986规范进行访问解析,而 RFC 3986规范定义了Url中只允许包含英文字母(a-zA-Z)、数字(0-9)、-_.~4个特殊字符以及所有保留字符(RFC3986中指定了以下字符为保留字符:! * ’...

2020-02-22 13:52:26 3299

原创 spring boot—— WebMvcConfigurer接口的用法

我们用spring boot搭建开发环境的时候,总会去自定义一些消息转换器、拦截器,跨域支持等,所以也在网上看了不少有关这方面知识,把WebMvcConfigurer接口的用法借用过来以供以后开发使用,具体用法如下import com.alibaba.fastjson.serializer.SerializerFeature;import com.alibaba.fastjson.suppor...

2019-11-21 15:32:09 298

原创 mybatis实现批量添加、修改和删除操作

在开发过程中,我们经常会对某个数据库表进行批量增删改的操作,批量的好处在于它可以减少对数据库的访问次数,减轻数据的库压力,同时也会提高项目的性能,这里我只贴sql语句的批量增删改批量添加<insert id="batchInsert"> insert into user values(name,age,password,hobby) <foreach coll...

2019-10-31 15:35:34 2611

原创 Java 校验密码工具类

通常来说 密码校验都是前端进行正则控制,其实后端也可以做密码校验,简单来说,有很多功能前后端都可以实现,只是根据不同的场景进行选择

2019-10-31 14:45:46 1839

原创 输入IP和端口号即可访问项目

在工作中我们会遇到这样的一个需求,只输入IP和端口号就可以访问项目,换句话说就是把tomcat默认页面改成我们自己项目的登录页面,其实很简单,只需修改一下tomcat的配置文件就可以了,具体操作如下:首先 ,我们找到tomcat下的conf下的 server.xml文件在< /Host>加上这一句代码:< Context path="" docBase=“C:/apach...

2019-09-18 11:25:31 4928

原创 Idea+springboot+schedule定时任务的简单使用

相信大家在项目开发中几乎都会用到定时任务这一功能,小编在此简单的介绍定时任务schedule的基本使用。话不多说,开始撸代码第一步:创建一个定时任务类@Componentpublic class ScheduledTask { protected static Logger log=Logger.getLogger(ScheduledTask.class);// 定时任务时间表...

2019-08-15 17:01:49 3917 1

原创 idea+spring boot+mybatis分页查询

这里的分页使用的是mybatis的分页插件PagehHelper,话不多说,开始我们的分页之旅。第一步:在pom.xml添加mybatis插件依赖 <!--mybatis分页插件--> <dependency> <groupId>com.github.pagehelper</groupId> ...

2019-07-18 18:05:49 1895

原创 POI导出excel表---HSSFWorkBook工具类

导出excel表有三种方式,分别是HSSFworkbook,XSSFworkbook,SXSSFworkbook,这里我只写了HssfWorkBook导出excel表,她支持2003版本的格式为.xsl的excel,下面就开始导出excel表1、在pom.xml里面添加依赖2、HSSFWorkBook导出excel表的代码编写ExcelUtilpublic class ExcelUtil ...

2019-07-05 14:58:58 3418

原创 springboot基于IDEA实现热部署

实现热部署最大的好处在于:在不重启服务器的情况下自动进行编译/部署,从而提高开发效率1、在pom.xml添加热部署的依赖2、【File】——【Settings…】——【Build,Execution,Deployment】——【Compiler】3、使用 Ctrl+Shift+A 快捷键搜索"Registry",选择搜索出来的第一个至此spring boot已成功实现热部署...

2019-06-26 21:43:48 138

原创 Java 递归查询部门树形结构数据

说明:在开发中,我们经常使用树形结构来展示菜单选项,如图:那么我们在后端怎么去实现这样的一个功能呢?1、数据库表:department2、编写sql映射语句 <select id="selectDepartmentTrees" resultType="com.welb.entity.Department"> select * from department...

2019-05-21 00:24:48 32721 12

原创 Java代码实现杨辉三角

一、杨辉三角的概念杨辉三角是二项式系数在三角形中的一种几何排列,南宋数学家杨辉在《详解九章算法》中有记载,欧洲的帕斯卡也发现这一规律,故又称帕斯卡三角形,比杨辉晚几百年发现该规律二、杨辉三角的特性他的两条斜边都是数字1组成,其余的数等于他肩上的两数之和每行数字左右对称,由1开始,逐渐增大第n行的数字个数为n第n行的数字之和为2^n-1;三、Java代码实现杨辉三角定义一个6行...

2019-03-24 18:25:38 19909 2

原创 线程安全的懒汉式饿汉式的单例模式

线程安全的饿汉式单例//饿汉式:类加载的时候就创建实例对象,所以线程安全public class Singleton { private static Singleton singleton=new Singleton(); private Singleton(){}; public static Singleton getSingleton(){ re...

2019-03-12 19:23:21 593 2

原创 redis相关知识

redis简介redis是一个基于key_value的存储系统,支持的数据类型很丰富:string、list、set、hash、zsetredis是用内存来存储数据,读写效率远远高于数据库;存储在 redis中的数据都是持久化的,断电或者重启后不用担心数据会丢失,redis的存储可以分为三部分:内存存储、磁盘存储、log文件,重启后,redis可以从磁盘重新把数据加载到内存中redis支持...

2018-12-14 10:40:11 183

原创 (二)手写一个简单的shiro实例

注:这里只是简单地写个demo,旨在理解shiro,在实际开发中并不会这么写。1、新建一个Java项目,并导入以下jar包log4j-1.2.7.jarshiro-all-1.3.2.jarslf4j-api-1.7.25.jarslf4j-log4j12-1.7.25.jar2、 在src目录下创建 log4j.properties和shiro.ini两个配置文件log4j.p...

2018-12-11 11:49:12 627

原创 (一)认识shiro

1、什么是shiro?shiro是一个开源的安全管理框架,可以完成认证、授权、加密、会话管理、缓存等功能2、shiro功能介绍Authentication:认证登录,验证用户的合法性Authorization :授权,授予谁具有访问某些资源的权限Session Management :会话管理,用户登录后的用户信息通过Session Management进行管理,也就是说用户登陆后就是...

2018-12-11 10:37:47 236 2

原创 CentOS7安装redis图文教程

1 . 下载Redis 使用wget下载,命令如下:wget http://download.redis.io/releases/redis-4.0.9.tar.gz因为redis是c编写的,gcc编译c的,所以我们先安装下gccyum install gcc-c++2 . 解压Redis:tar -xzvf redis-4.0.9.tar.gz3 .将解压后的redis移...

2018-12-05 23:04:03 3242

原创 Linux常用命令

说明:这里我只记载了在开发中常用到的一些命令1、查找相关的命令whereis filename              #查找文件或软件的位置find / -name filename       #查找文件或软件的位置which filename                 #查找文件或软件的路径fdisk -l |grep Disk             #查看硬盘大小...

2018-12-04 15:20:24 189

转载 (五) 集合处理

1. 【强制】关于 hashCode 和 equals 的处理,遵循如下规则:1) 只要重写 equals,就必须重写 hashCode。2) 因为 Set 存储的是不重复的对象,依据 hashCode 和 equals 进行判断,所以 Set 存储的对象必须重写这两个方法。3) 如果自定义对象作为 Map 的键,那么必须重写 hashCode 和 equals。说明:String 重写...

2018-11-26 15:59:55 496

转载 (四)OOP 规约

说明:本文摘自阿里巴巴开发手册1. 【强制】避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。2. 【强制】所有的覆写方法,必须加@Override 注解。说明:getObject()与 get0bject()的问题。一个是字母的 O,一个是数字的 0,加@Override可以准确判断是否覆盖成功。另外,如果在抽象类中对方法签名进行修...

2018-11-26 15:08:25 1213

转载 (三)代码格式

说明:本文摘自阿里巴巴Java开发手册1. 【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:1) 左大括号前不换行。2) 左大括号后换行。3) 右大括号前换行。4) 右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行2. 【强制】左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格;而左大括号...

2018-11-26 14:16:25 772 1

转载 (二)常量定义

说明:本文章是摘自阿里巴巴最新开发手册1. 【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。反例:String key = "Id#taobao_" + tradeId; cache.put(key, value);2. 【强制】在 long 或者 Long 赋值时,数值后使用大写的 L,不能是小写的 l,小写容易跟数字1 混淆,造成误解。说明:Long a =...

2018-11-26 11:57:41 1595

转载 (一)Java命名风格

说明:本文章是摘自阿里巴巴最新开发手册1. 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例:_name / __name / $name / name_ / name$ / name__2. 【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名...

2018-11-26 11:50:42 1407

原创 如何在jsp页面中获取存在后台请求域中的的值。

说明:这里我简单的总结了一下如何在jsp页面中获取存在后台请求域中的的值。request.setAttribute()取值:第一种: //后台设置属性值 request.setAttribute("role",role);&lt;script&gt; //获取后端设置的值 var role="&lt;%=request.getAttribute("role")%&g...

2018-10-31 17:57:20 7085 2

原创 js实现隐藏和显示div的两种通用方法

说明:这里我只是简单的写个demo,只要掌握怎么写怎么实现就ok了第一种:jquery实现隐藏和显示div&lt;div &gt;&lt;div id="demo1"&gt;隐藏&lt;/div&gt;&lt;div id="demo2"&gt;显示&lt;/div&gt;&lt;/div&gt;&lt;script&gt;$("#d

2018-10-30 15:09:53 13033

原创 工具类---Pinyin4j工具类的使用

说明:在开发中我们遇到把汉字转换成拼音这样一个需求,下面就是我从网上看了相关的资料总结的一个工具类,可以直接使用。第一步:在创建的maven项目的pom.xml文件加入下列代码 &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;com.belerweb&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;

2018-10-16 17:13:26 1964 1

原创 解决中文乱码问题大全

相信大家在开发过程中遇到很多中文乱码的问题,为此小编在这里汇集了很多不同情况下怎么解决中文乱码,希望对大家有所帮助1、IDEA控制台输出乱码修改idea配置文件:找到idea的安装目录,在bin目录下找到dea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别在这两个文件添加:-Dfile.encoding=UTF-8依次点击File | Setting...

2018-09-30 20:18:36 490587

原创 IDEA快捷键使用大全

IDEA常用快捷键Ctrl + Shift + Space 提示输入关键字相关信息Alt + Insert 自动生成某个类的 Getters, Setters, Constructors, hashCode/equals, toString 等代码Ctrl + o 展示该类中所有覆盖或者实现的方法列表Ctrl + Alt + T 自动生成具有环绕性质的代码Ctrl + / 单行注释Ct...

2018-09-29 11:57:21 893

空空如也

空空如也

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

TA关注的人

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