- 博客(94)
- 资源 (28)
- 收藏
- 关注
原创 个人收集的IT技术网站集合,涉及web前后端,大数据,UI设计等。
IT技术网站直通车个人收集的IT技术网站集合,涉及web前后端,大数据,UI设计等。并持续更新中……个人主页 https://liaocan.topweb后端springhttps://spring.io/https://start.spring.io/https://spring.io/projects/spring-boothttps://springcloud.cc/s...
2019-03-07 16:22:47 918
原创 自己实现一个JDK动态代理
回顾JDK代理Spring AOP 用到了两种动态代理模式:JDK动态代理和CGLIB动态代理,两种动态代理形成互补。今天我们来尝试纯手写一个简版的JDK动态代理,来了解它的底层实现原理。我们先来回顾一下JDK动态代理动态代理的条件两个角色: 代理对象,被代理对象代理对象需要完成被代理对象的需要完成的业务操作代理对象持有被代理对象的引用JDK动态代理 被代理对象必须实现接口,CGLI...
2019-07-14 20:46:03 433
原创 oracle查询比较null的坑
oracle中null是个特殊的类型判空只能用 is null 或者 is not null对比时 null =null 返回的是false判断两个字段内容相等如果为空也是相等 那么 查询结果会过滤掉下面两种结果查询出来均是 falseSELECT CASE WHEN NULL!=NULL THEN ‘true’ ELSE ‘false’ END FROM DUALS...
2019-07-09 10:52:50 1378
原创 oracle 如何使用collection,自定义split函数
自定义的split函数//创建类型CREATE OR REPLACE TYPE "SPLIT_TYPE" IS TABLE OF VARCHAR2 (4000)//创建函数CREATE OR REPLACE FUNCTION SPLIT ( P_STR IN VARCHAR2, P_DELIMITER IN VARCHAR2 DEFAULT('...
2019-06-20 14:26:01 1797
原创 两个标签云动画效果小demo
两个动态标签云效果demo1demo2效果预览地址https://liaocan.top/dynamic-tags-cloud/demo1/https://liaocan.top/dynamic-tags-cloud/demo2/项目传送门https://github.com/nqmysb/dynamic-tags-cloud...
2019-04-25 19:52:06 1372
原创 Springboot2.0从零开始搭建脚手架(三)-集成swagger2+lombok+fastjosn+MP分页
Springboot2.0从零开始搭建脚手架(三)-集成swagger2+lombok+fastjosn+MybatisPlus分页插件+sqlj执行性能监控+添加依赖<!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> ...
2019-04-20 14:46:21 446
原创 基于D3.js绘图组件的后端架构师技术栈图谱树
基于D3.js绘图组件的后端架构师技术栈图谱树组件效果GitHub项目传送门https://github.com/nqmysb/knowledge_graph效果预览地址https://liaocan.top/knowledge_graph/
2019-04-16 21:02:14 357
原创 Springboot2.0从零开始搭建脚手架(二)-集成druid连接池和监控功能
springboot2.0使用 druid-spring-boot-starter 集成druid连接池和监控功能添加maven依赖在 Spring Boot 项目中加入druid-spring-boot-starter依赖<dependency> <groupId>com.alibaba</groupId> <artifactId&...
2019-04-14 16:30:15 1279
原创 Elasticsearch学习笔记(一)之what?
一句话介绍Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。—摘自官方文档他的父亲Elasticsearch 的前世或者父亲应该可以说是Lucene。它是基于Java开发并且开源,目前被认为性能最好的全文检索引擎,但是它并不能...
2019-04-12 18:09:37 458
原创 Springboot2.0从零开始搭建脚手架(一)-初始化和整合MybatisPlus3.0+
初始化springboot项目添加web依赖,基于springboot2.1.3稳定版本初始化spring boot项目地址 https://start.spring.io/包名:com.nqmysb.scaffold导入IDE下载项目,我这里使用eclipse ,导入eclipse之后如下图编写控制器写一个控制器,并启动查看结果,这里直接将controller写在入口类@Re...
2019-04-07 13:29:09 3361 3
原创 chrome浏览器三步搞定完整网页截图
第一步:点击F12进入开发者模式第二步:Ctrl+shift+p 输入full第三步:点击screenshot 即可下载完整网页长图 如下:效果
2019-04-04 21:23:26 1402
原创 弄懂js原型链-对象创建
创建对象几种方法第一种方式:字面量 var o1 = {name: 'o1'}; var o2 = new Object({name: 'o2'});第二种方式:构造函数 var M = function (name) { this.name = name; }; var o3 = new M('o3');第三种方式:Object.create ...
2019-04-04 16:41:56 544
原创 三种方式的树形结构数据库表设计的对比
前言最近项目中有用到无限层级的树结构场景,需求:树的层级无限(理论支持无限层级,实际业务场景最多6层级),查询效率高,树的节点能够实现任意拖拽三种树结构表设计方案:传统方式即邻接表模式通过id,parentId来表达父子层级关系优点:结构明了清晰,新增修改方便缺点:查询需要层层递归,层级较深时查询效率较低,并且容易导致栈溢出子编码=父编码+子扩展编码方式,也称物化路径优点:结...
2019-03-31 21:07:34 4570
原创 巧用gh-pages分支发布自己的静态项目
大家都知道可以通过github pages 发布自己的静态博客,然后通过 username.github.io 可以访问。例如我的博客可以通过 nqmysb.github.io 访问,不过我的已经绑定域名 https://liaocan.top ,所以会直接跳转到域名显示。但是我们通常由很多其他的静态项目需要展示,所以今天我总结一下如何利用gh-pages分支来发布自己的静态项目,然后可...
2019-03-23 17:13:18 7768 4
原创 jdk1.8新特性(三)
Optional类常用方法Optional.of(T t):创建一个Optional实例Optional.empty():创建一个空的Optional实例Optional.ofNullable(T t):若t不为null,创建Optional实例,否则创建空实例isPresent():判断是否包含值orElse(T t):如果调用对象包含值,返回该值,否则返回torElseGet(...
2019-03-21 20:44:58 291
原创 JDK1.8新特性(二)
创建流示例:Collection 提供了两个方法 stream() 与 parallelStream()List<String> list = new ArrayList<>();Stream<String> stream = list.stream(); //获取一个顺序流Stream<String> parallelStream = l...
2019-03-21 20:25:30 1724
原创 JDK1.8新特性(一)
官方文档https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html教程http://www.runoob.com/java/java8-new-features.htmlLambda表达式//示例:集合排序(函数体只有一行不需大括号)List<String> strList = A...
2019-03-21 20:12:14 261
原创 漫谈数据仓库
数据仓库大数据平台简介通常说的大数据平台主要包括三部分:数据相关的工具、产品和技术:批量数据采集传输sqoop,spark离线数据处理Hadoop,Hive,Spark实时流处理Storm,Spark Streaming,Flink数据资产:公司业务本身产生和沉淀的数据公司运作产生的数据(如财务、行政)第三方数据:外界购买、交换或者爬虫而来的数据数据管理:...
2019-03-15 23:00:19 697
原创 [前端] 前端路由优缺点以及实现
前言ssm时代,多页面时代,需要页面渲染模板,如 freemark,jsp 等模板引擎。前后端没有分离时,路由是由后端处理的,浏览器接收到 .do .action的请求,传到后台对应 spring mvc 会进行逻辑处理返回对应的页面,实现路由的分发 return **.jsp 或者 return modelandview对象,封装了实体数据和视图渲染的模板单页应用时代,只有一个html...
2019-03-15 23:00:06 10559 1
原创 [设计] 香港地铁站点主题色的配色
基于香港地铁站点的主题色的配色介绍香港地铁的每个站点都有自己的主题色,比较好看,可以作为配色的参考。所有颜色的汇总: 总共87个颜色 配色色表有人将它做成 CSS 色表,http://metrocolor.live/index.html 我这里把所有颜色代码值整理成为一个数组,可以直接复制/** * 产生随机颜色 */function random...
2019-03-15 22:59:54 4823 3
原创 细数23种设计模式以及Java代码实现
设计模式是在软件开发中,经过验证的,用于解决在特定环境下、重复出现的、特定问题的解决方案。创建型创建型模式是抽象对象实例化的过程,用于帮助创建对象的实例。工厂模式简单工厂描述定义:提供一个创建对象实例的功能,而无须关心其具体实现。被创建实例的类型可以是接口、抽象类,也可以是具体的类。简单工厂方法的功能是选择合适的实现类并创建。本质是选择实现。简单工厂也称为静态工厂,可以把简单工...
2019-03-15 22:59:24 1940
原创 [前端] React.js绑定this的5种方法
This is already quite flexible in javascript, and putting it in React makes our choice even more confusing. Let’s look at five binding methods for React this.Use React. createClassIf you are usin...
2019-03-15 22:58:10 440
转载 Java主流日志工具库
在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息。在 Java 世界,有很多的日志工具库来实现日志功能,避免了我们重复造轮子。我们先来逐一了解一下主流日志工具。日志框架java.util.logging (JUL)JDK1.4 开始,通过 java.util.logging 提供日志功能。它能满足基本的日志需要,但是功能没有 Log4j 强大,而且使用范围也没有 Log4...
2019-03-15 22:57:45 1286
原创 github上面fork代码如何提交分支合并申请
1.Fork一个项目到自己的主页 在想要fork的页面fork一个。2.首先clone自己git clonegit@github.com:nqmysb/hexo-theme-huweihuang.git3.配置本地库与原始库的关联,添加与原始库的关联,命名为upstream,此地址是原项目开发者的项目主页上的clone的地址:这是专门用来与主开发者保持相同进度的方法...
2019-03-07 16:43:30 3848
原创 windows下通过bat处理判断,启动和关闭oracle数据库服务
oracle尽量不要设置开机启动,非常占用内存,请手动启动和关闭,提供bat处理命令!windows下判断oracle服务是否启动,如果启动则关闭服务,如果启动状态,则关闭!StartupOrShutdownOracle.bat@echo offfor /f "skip=3 tokens=4" %%i in ('sc query OracleServiceORCLPDB') ...
2019-03-04 16:50:53 1329
原创 mybatis获取oracle中的clob,long类型字段映射
long字段<!-- 接口数据库用户的视图信息 --><resultMap id="viewsResultMap" type="com.ly.business.entity.servicemanager.ViewsInfoEntity"><result property="styj" column="TEXT" /> //需要放在最前
2019-01-23 17:55:37 3201
原创 mybatis模糊查询的几种写法 bind concat等
0. 好像不行。。AND address LIKE "%"#{address}"%" 1.LIKE CONCAT(CONCAT('%', ?), '%') 预编译 使用占位符AND address LIKE CONCAT(CONCAT('%',#{address},'%'))CONCAT(CONCAT('%',#{zdmc,jdbcType=VARCHAR},'%'))) 不需...
2019-01-23 17:54:23 1719
原创 mybatis逆向生成工具
mybatis-generator.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/...
2019-01-23 17:53:28 594
原创 mybatis中collecton标签的两种使用方式区别
第一种:查询多次,查询部门的时候会根据部门的编号去查询部门下的高基表 n+1<resultMap id="ClassifyVOResultMap" type="com.ly.business.entity.highbasetable.ClassifyVO"><id column="GJBBH" jdbcType="VARCHAR" property="link"
2019-01-23 17:52:33 1321
原创 Mybatis的@Param注解的用法
dao层示例 Public User selectUser(@param(“userName”) String name,@param(“userpassword”) String password); xml映射对应示例<select id=" selectUser" resultMap="BaseResultMap"> select * from user_use...
2019-01-23 17:51:27 730
原创 mybatis调用存储过程-oracle
1.输入输出参数<select id="checkingProcess" parameterMap="checkingParaMap" statementType="CALLABLE">CALL P_CHECKING(?,?,?,?,?)</select><select id="cancelCheck" parameterType="
2019-01-23 17:50:38 1006
原创 mybatis中resultMap,resultType,parameterType ,parameterMap
resultMap,resultType 封装结果集resultMap 推荐表示将查询结果集中的列一一映射到bean对象的各个属性。映射的查询结果集中的列标签可以根据需要灵活变化,并且,在映射关系中,还可以通过typeHandler设置实现查询结果值的类型转换,比如布尔型与0/1的类型转换。 CLOb的转换等<resultMap type="hdu.terence.bean.Me...
2019-01-23 17:49:04 1276 1
原创 React组件的生命周期
import React from 'react';import ReactDOM from 'react-dom'; class Component extends React.Component{// 构造函数constructor(props){super(props)this.state = {data: 'Old State'}cons...
2019-01-22 15:28:17 142
原创 react-router和react-router-dom区别
react-router-v4,我称之为“第四代react-router”,react-router和react-router-dom的区别是什么呢?为什么有时候我们看到如下的写法:写法1:import {Swtich, Route, Router, HashHistory, Link} from 'react-router-dom';写法2:import {Switch, R...
2019-01-22 15:28:07 2542
原创 react开发中遇到的问题
1.Element type is invalid expected a string (for built-in components) or a classfuElement type is invalid: expected a string (for built-in components) or a class/function (for compos {/* <Rou...
2019-01-22 15:27:58 3230
原创 26.react-redux和redux的区别
redux使用回顾和核心1.组件如何触发store中的state改变createStore(reducer)引入storestore.dispatch(action)方法reducer根据不同action type 返回新的state部分2.组件如何监听store的改变从而改变自身的props组件通过store.subscribe(回调方法)方法监听store的改变...
2019-01-22 15:27:40 3613
原创 JS原型链
1.创建对象几种方法<!DOCTYPE html><html><head><meta charset="utf-8"><title>原型链</title></head><body> <script type="
2019-01-22 15:27:28 152
原创 25.redux中间件redux-thunk和redux-saga
redux-thunk通过对dispatch进行升级,让dispatch可以接收函数redux-thunk可以将异步逻辑放在actionCreator里面redux-saga和redux-thunk作用类似store action的中间redux-saga提供许多api put takeEvey takeLast ..redux-thunk 只是让dispatch 可以接收函数...
2019-01-22 15:27:13 403
原创 24.redux-thunk的使用
1.github上搜索redux-thunk,他是redux的中间件,作用主要是让dispatch(action) 方法可以传入一个函数,而不一定是action对象准确的来说是传入的函数的返回值 可以是一个方法或者函数 不一定是action对象 只是这个函数能够接收到dispatch 对象return的时候在执行一下 dispatch(aciton) 这个时候就可以是一个对象了相当于在di...
2019-01-21 09:23:02 458
原创 23.react中UI组件,容器组件,无状态组件用法和区别
import React, { Component } from 'react'import 'antd/dist/antd.css'import { Input, Button, List } from 'antd'//无状态组件 没有生命周期,本身只是一个函数,效率比UI组建高,只有一个render方法时可以考虑使用无状态组件const TodolistUI = (props)...
2019-01-21 09:22:52 533
去哪儿MySQL开发规范.pdf
2019-01-15
23种设计模式汇集.pdf
2019-01-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人