- 博客(48)
- 收藏
- 关注
原创 Java8 Function 用法简介
先看代码:public class ZhihaoTest { public static void main(String[] args) { new ZhihaoTest().test(); } public void test() { Function<Numbers, Integer> test1 = i ->...
2020-04-29 17:58:18
5863
1
原创 redis从下载安装到整合Springboot
一、下载安装redisLinux 安装参考:https://blog.csdn.net/gaokcl/article/details/83109684下面是Windows安装步骤:1,下载地址:https://github.com/MicrosoftArchive/redis/releases/tag/win-3.2.100( redis官网:https://redis.io/...
2020-04-16 15:32:07
337
原创 mybatis 的SQL语句做去空格和特殊符号的处理
有时候查询字段,需要去除特殊符合再匹配,比如 “FLR40SEX-N/M36HP-A” 要求能匹配到 “FLR40SEXNM36H” ,这样便于页面输入,不用输入特殊符合。mybatis处理如下:and <![CDATA[((i.item_name LIKE CONCAT(#{itemSubType},'%') ) or (regexp_replace(i.item_name,'[(...
2020-04-15 16:36:00
4499
转载 Java8-9-Stream介绍与操作方式详解
转载:https://segmentfault.com/a/1190000012302965Java8中的Stream与lambda表达式可以说是相伴相生的,通过Stream我们可以更好的更为流畅更为语义化的操作集合。Stream api都位于java.util.stream包中。其中就包含了最核心的Stream接口,一个Stream实例可以串行或者并行操作一组元素序列,官方文档中给出了一个示...
2020-04-13 16:02:42
253
转载 Function接口的使用
转载:https://www.cnblogs.com/rever/p/9725173.html探索Java8:Function接口的使用Java8 添加了一个新的特性Function,顾名思义这一定是一个函数式的操作。我们知道Java8的最大特性就是函数式接口。所有标注了@FunctionalInterface注解的接口都是函数式接口,具体来说,所有标注了该注解的接口都将能用在lambda...
2020-04-13 16:00:09
226
原创 Springboot整合reids的工具类
Springboot整合reids的工具类,便于使用API来操作redispackage com.midea.isc.isales.util;/** * @program: redis-demo->RedisUtil * @description: redis工具类 * @author: ChenZhihao * @create: 2020-03-23 11:59 **/...
2020-03-23 15:25:43
144
原创 Java 判断字符串仅包含半角字符
/** * @Author: ChenZhihao * @Description: 判断仅包含半角字符,返回TRUE ,否则返回FALSE * @Param: [str] * @return: boolean * @Date: 2020/3/17 */ public static boolean checkHalf(String s...
2020-03-18 09:21:35
853
原创 Java枚举类型Enum用途总结
枚举类型Enum主要用途之一,是用来管理错误码,状态码。Enum类型实质是一种特殊的class,它不可以继承其他类,也不可以被其他类继承,但可以实现接口。示例一:public class EnumDemo { public static void main(String[] args){ //直接引用 Day day =Day.MONDAY; ...
2020-01-16 11:32:39
1523
原创 短小精悍的总结一下alibaba fastjson 的JSONObject
Java操作json有很多种派别,下面总结一下热门的派别 ,alibaba fastjson 的JSONObject。JSONObject 是一种数据结构,操作起来类似map。可以把对象转换成字符串在服务之间传送,也可以把字符串解析为Java对象使用。引入使用先添加Jar 包: <!--alibaba fastjosn jsonObject--> ...
2020-01-15 16:01:17
764
原创 springboot整合redis经典示例
废话不多说,简短精悍地贴出来。项目结构图:步骤如下:(1),如果没有redis 的,先去安装一个redis。下载地址:redis 下载安装包地址创建一个普通的Springboot项目。(2)pom 代码。<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache...
2020-01-13 15:19:36
183
原创 MySQL 另一种强大的模糊匹配——正则表达式(Regexp)的示例详解
说到MySQL的模糊匹配,大家都能想到like,很少人会知道regexp,regexp 可以实现更强大的模糊匹配功能,而且还有很多其他好用的功能。比如有一个学生表 student ,要查询姓赵、王、李、陈的学生,用like写会啰嗦,而且性能不好:SELECT * FROM student WHERE name like '赵%' orname like '王%' orname lik...
2019-12-27 10:50:52
2554
原创 非常简单的用Springboot+websocket 实现聊天室小项目(并保存用户登录信息)
websocket 是http的补充,为了实现实时通信,一次握手便可以保持长连接,避免繁琐的请求头浪费宽带。websocket 可以非常简单的实现一个聊天室的项目。下面,我简易地用Springboot+websocket 实现聊天室小项目。(1)pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns...
2019-12-26 17:09:01
2221
原创 springcloud 系列入门教程整理(之三 ) feign 消费者
之一传送门:注册中心eureka之二传送门:feign服务提供者(1)搭建一个普通的maven项目(2)pom 如下添加依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www...
2019-04-16 21:53:18
169
原创 springcloud 系列入门教程整理(之二)feign服务提供者
之一传送门:注册中心eureka的搭建feign 是springcloud体系中,系统与系统互相调用接口的技术。底层利用httpclient 实现。(1)搭建普通的maven项目。(2)pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4...
2019-04-16 21:36:33
618
原创 springcloud 系列入门教程整理(之一 ) 注册中心eureka
(1)如下图先创建一个普通的maven项目。项目名为 eurekaServer (随意起名)(2)pom 增加以下依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o...
2019-04-16 21:24:38
184
原创 spring cloud 从入门到精深系列-----Eureka 客户端(2)
前一篇文章,已经搭建了一个子系统的盘点中心,但是还没有子系统被它盘点呢!那么本文就创建一个子系统,向Eureka中心注册。跟着下面的步骤,很快就可以搭建完成。(1)搭建一个普通的maven项目。如下图,红框的文件是必要的,如果没有请创建,然后把本文的代码粘贴过去即可。其他文件是测试用的,忽视即可。one_eureka_client 是我们的项目名,随意命名,假设它是某一具体功能的后端项...
2019-03-08 18:27:19
127
原创 spring cloud 从入门到精深系列-----Eureka 注册中心(1)
Java 一直在发展,到目前阶段,spring cloud 算是这个领域最上乘的武功,正如一派武功有多个板块,拳、脚、刀、剑等等,spring cloud 也由多个板块组成,每个板块都有它独当一面的特性,它主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路由(Zuul),客户端负载均衡(Ribbon)等。 本文说说服务发...
2019-03-08 17:51:52
149
原创 eureka项目输入java -jar XXX.jar 启动报错怎么办?
如果报错,很可能是找不到启动类,需要在pom加入以下代码,让它找到启动类,mainClass就是你的启动类。如下: <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId>...
2019-01-28 11:31:51
1120
原创 springboot 日志的调用及日志文件路径的设置
springboot 开箱即用,已经包含日志的配置,下面介绍调用方法及日志文件的路径设置。(1)调用第一步,先在Controller 里面设置log属性,把controller的类名作为参数@RestControllerpublic class ErrorController extends AbstractErrorController { Log log = LogFa...
2018-07-29 01:16:06
24369
2
原创 springboot 对异常的统一处理方法
在spring boot 中,Controller 中抛出的异常默认交给 /error 来处理(Controller 中匹配此路径的方法),应用程序可以将 /error 映射到一个特定的Controller 中处理,应用可以继承 AbstractErrorController 来统一处理系统的各种异常。请看下面代码,有解释。读者可以复制这段代码到项目中,故意抛出异常来测试,代码中示例的页面...
2018-07-29 00:39:51
894
原创 单例模式实现的3种方式,推荐
以下为单例模式实现的3种常用方式。(1)饿汉模式 public class Hungry { private Hungry() { }//单例模式都要注意隐藏构造器 private static Hungry singleTon = new Hungry(); public static Hungry getSingleTon(){ retur...
2018-07-21 13:45:08
1017
原创 springboot 用beetl 搭建展示页面的注意点
(1)springboot 可以加入以下依赖,用beetl 搭建展示页面(beetl 页面以.btl结尾,位置位于 /resources/templates/ 下面): <dependency> <groupId>com.ibeetl</groupId> <artifactId>be...
2018-07-20 01:20:26
2484
1
原创 用springboot 搭建一套简易的前后端代码
(1)先把spring 基础项目创建出来。参考文章(点击以下链接):Intellij IDEA创建SpringBoot项目(2)前后端分离,为解决跨域问题,写一个过滤器设置header。注意,springboot 增加过滤器需要在启动类增加注解@ServletComponentScan@WebFilter(filterName = "accessFilter",urlPatte...
2018-07-18 01:02:26
1851
原创 CSS增加这3行,盒子模型的内边距和边框不再会增加它的宽度
做前端的知道,盒子外观的宽度=2*border的宽度+2*padding的宽度+内容的宽度。因为,为了外观的宽度是想要的效果,需要通过麻烦的数学计算。但是,福音来了,加上下面这3行,元素的内边距和边框不再会增加它的宽度。* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-si
2018-01-29 16:33:32
2081
原创 用HttpURLConnection 在Java后台发送请求并接收返回数据
我们通常做Java后台接口,是让前端访问的,让前端获取数据或者做增删改查,但是有时候,我们做的Java接口是让其他系统的Java后台调用的,让其他系统从我们这个系统获取数据或者做业务,这样就要用到HttpURLConnection。本文写得急,仅贴出样例供参考。(1)先写一个简单的,只发送请求,不附带参数。思路是打开一个URL连接,设置请求的方式,获取输入流,从流里面解析出数据。@Re
2018-01-29 11:22:56
30766
1
原创 单例模式这样写比较严谨
我先贴出正确的写法,在分析(注意标红部分):注意点已经在代码标红,下面分析巧妙之处:(1) 避免锁定整个 getInstance() ,如果锁定整个获取实例的方法,那么多线程每次获取的时候,都有可能等待,等其他线程执行完,会有性能的损失。所以在先在(1)处判断一下,非空的话,直接拿出来用。(2)第二个if(instance==null) 是因为,进入同步块的时候,可能其他线
2018-01-29 00:05:09
265
转载 Java并发编程:volatile关键字解析
转载自 http://www.cnblogs.com/dolphin0520/p/3920373.htmlJava并发编程:volatile关键字解析Java并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在J
2018-01-28 22:39:42
186
原创 Java 动态代理怎么写?
代理模式分为静态代理和动态代理。静态代理其实我们经常用,比如我们在controller里面注入一个service的实例,需要的时候,调用service实例去做业务,就是静态代理的使用。也就是说,静态代理是:代理对象里面放一个被代理对象的实例,用代理对象去调用这个实例的方法。 下面用简洁通俗易懂的例子,去讲解一下动态代理。 我们先写一个被代理对象的接口和实现类。被代理的实现类是鸭子Duc
2018-01-28 14:40:42
1315
原创 springboot 用监听器统计在线人数,小案例
本文在springboot 的项目,用HttpSessionListener 监听器(监听器的其中一种) 统计在线人数,实质是统计session 的数量。 思路很简单,但是有个细节没处理好,让我调试了大半天,才把bug搞好。 先写个HttpSessionListener 监听器。count 是session的数量(人数),session 创建的时候,会触发监听器的sessionCreat
2018-01-27 17:17:53
10639
7
原创 springboot 监听器的简单示例
在上家公司,有一次我面试别人时问过一个问题“如果你在web项目启动时,就要做一个操作,删除服务器里面某个硬盘的日志,这些日志是之前留下来的,现在重新启动需要把之前的日志清除,你可以怎么做?”答案是,可以写一个监听器去做这个操作。监听器有很多种,本文介绍 servlet上下文监听器 ServletContextListener。下面给一个入门例子,只需要简单的2部。(1)用注解@We
2018-01-26 16:57:22
2992
原创 springboot 的切面aop 实现方法
前面介绍了过滤器和拦截器,本文介绍切面aop在springboot中的实现方法。aop在业务方法的前后增加一些额外操作,不适合做安全过滤。想象你有一个夹层的汉堡包,中间的那层馅是业务方法,切面就是外面的2层面包,如果你不喜欢,你还可以把这2片面包拿掉,换成其他的食物,但他还是切面。我意思是切面是灵活的组件,随意放在业务方法的上面或者下面。先写一个你们熟悉的controller (里面是业务
2018-01-26 16:25:30
4687
1
原创 javascript 函数后面有多个小括号是怎么回事?f( )( )( )...
有时我们看见js函数后面跟着多个小括号是怎么回事?f( )( )( )...f()意思是执行f函数,返回子函数f()()执行子函数,返回孙函数f()()()执行孙函数... ...但注意,如果想这样执行,函数结构必须是这样,f的函数体里要return 子函数,子函数里要return 孙函数,如果没有return关键字,是不能这样连续执行的,会报错的。举个例子:k是f的子函数
2018-01-21 14:05:20
10439
原创 javascript 匿名函数
javascript 匿名函数有两种常用模式:1,(function(参数){逻辑})(给参数赋值)2. (function(参数){逻辑}(给参数赋值))javascript 匿名函数的作用:1.在页面加载时立即启动一个函数,并可以获得参数。2.避免变量名和函数名被污染(名字相同而冲突)下面举两个例子: (function (x,y) { a
2018-01-20 23:24:45
161
原创 springboot 拦截器实现的具体步骤
拦截器的功能是拦截action请求,底层通过反射机制实现。具体步骤:(1)先写一个拦截器,实现HandlerInterceptor。拦截逻辑写在方法preHandle 里面,如果让通过 return true,否则return false。postHandle 是完成action请求后回到这个方法里面,这个时候还没渲染页面(没有展示页面)。afterCompletion 是渲染页面后执行的
2018-01-20 18:47:10
687
原创 springboot 过滤器实现的具体步骤
过滤器,顾名思义,能够过滤一切请求(而拦截器只能过滤action请求),包括静态资源的请求。实现很简单:(1)写一个过滤器。过滤实现在doFilter方法里面。chain.doFilter(request, response) 表示过滤通过,能够往下执行。所以过滤操作要写在chain.doFilter(request, response) 前面,作一些条件判断,如果不符合条件,则不执行c
2018-01-20 18:05:02
8109
3
原创 springboot 增加对jsp的支持,具体步骤
现在前后的分离的,一般springboot 就用来做后台restful 接口,那么如果要前后端合并在springboot呢?可以通过下面几个简单的步骤,增加对jsp的支持。(1)pom增加依赖: <!--springboot tomcat jsp 支持开启--> <dependency> <groupId>org.apache.tom...
2018-01-19 16:14:50
9538
原创 springboot 的简单搭建讲解及目录结构注意点
搭建一个spring boot 项目的雏形很简单,见一个空的项目外壳(file-new project(不勾选模版)-填写groupId和artifactId 一直next完成),然后在pom加上以下代码: org.springframework.boot spring-boot-starter-parent 1.4.0.RELEASE
2018-01-17 00:26:36
6209
原创 javasript 的面向对象特性
(1)构造函数的简单介绍构造函数的特点有:a.构造函数的首字母大写;b.内部使用this,指向生成的对象的实例c.使用new 创建实例构造函数的缺点:所有对象都继承构造器里面的方法和属性,但这些方法和属性都是独有的,不是共享的。下面举个例子说明: function Persion() { this.name='陈志豪'; t
2018-01-14 12:38:26
201
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人