Spring Boot整合Netty 注入Service
Spring Boot整合Netty(二):注入Service1、添加依赖
1. <!--netty--> 2. <dependency> 3. <groupId>io.netty</groupId> 4. <artifactId>netty-all</artifactId> 5. <version>4.1.24.Final</version> 6. <scope>compile</scope> 7. </dependency>
2、创建TcpServer
2. @Slf4j 3. @Component 4. @Order(value = 1) 5. public class TcpServer implements CommandL ...
SpringBoot + Flowable的入门篇
SpringBoot + Flowable的入门篇,完整例子一、Flowable简介Flowable是什么Flowable是一个使用Java编写的轻量级业务流程引擎。Flowable流程引擎可用于部署BPMN 2.0流程定义(用于定义流程的行业XML标准), 创建这些流程定义的流程实例,进行查询,访问运行中或历史的流程实例与相关数据,等等。
Flowable可以十分灵活地加入你的应用/服务/构架。可以将JAR形式发布的Flowable库加入应用或服务,来嵌入引擎。 以JAR形式发布使Flowable可以轻易加入任何Java环境:Java SE;Tomcat、Jetty或Spring之类的servlet容器;JBoss或WebSphere之类的Java EE服务器,等等。 另外,也可以使用Flowable REST API进行HTTP调用。也有许多Flowable应用(Flowable Modeler, Flowable Admin, Flowable IDM 与 Flowable Task),提供了直接可用的UI示例,可以使用流程与任务。
所有使用Flowable方法的共同点是核心引擎 ...
Dubbo
Dubbo 官网:http://dubbo.apache.org/zh-cn/index.html
Dubbo 中文文档: http://dubbo.apache.org/zh-cn/index.html
一 重要的概念1.1 什么是 Dubbo?Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC 框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。简单来说 Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。
Dubbo 目前已经有接近 23k 的 Star ,Dubbo的Github 地址:https://github.com/apache/incubator-dubbo 。 另外,在开源中国举行的2018年度最受欢迎中国开源软件这个活动的评选中,Dubbo 更是凭借其超高人气仅次于 vue.js 和 ECharts 获得第三名的好成绩。
Dubbo 是由阿里开源,后来加入了 Apache 。正式由于 Dubbo 的出现, ...
CSS-00-准备
前言css 进阶的主要内容如下。
1、css 非布局样式
html 元素的分类和特性
css 选择器
css 常见属性(非布局样式)
2、css 布局相关
css 布局属性和组合解析
常见布局方案
三栏布局案例
3、动画和效果
属于 css 中最出彩的内容。
多背景多投影特效
3D特效编写实践
过渡动画和关键帧动画实践
动画细节和原理深入解析
4、框架集成和 css 工程化
预处理器作用和原理
less/sass 代码实践
Bootstrap 原理和用法
css 工程化的的实践方式
js 框架中的 css 集成实践
常见问题
不会 css 的前端称之为伪前端。
Vue 中模拟Scoped CSS的方式方案一:随机选择器。css modules。
方案二:随机属性。<div abcd>、div[adcd]{}
其他问题
html 元素的嵌套关系是怎么确定的?哪些嵌套不可以发生?
比如说,为什么 div 可以放在 a 标签里面?
css 选择器的权重是如何计算的?写代码时要注意什么?
浮动布局是怎么回事?有 ...
01-Bootstrap入门
Bootstrap 介绍Bootstrap 是非常流行的前端框架。特点是:灵活简洁、代码优雅、美观大方。它是由Twitter的两名工程师 Mark Otto 和 Jacob Thornton 在2011年开发的。
简单来说,Bootstrap 让 Web 开发更简单、更快捷。使用 Bootstrap 框架并不代表我们再开发时不用自己写 CSS 样式,而是不用写绝大多数常见的样式。
PS:Amaze UI 这个框架其实跟 Bootstrap 很像。
官网网站
官方网站:https://getbootstrap.com/
中文网站:http://www.bootcss.com/
V3版本:
V4版本:
列举几个用 Bootstrap 做的网站:
Bootstrap 优站精选
https://mobirise.com/
http://snappa.io/
Bootstrap 版本目前市面上使用的最多的是 3.x.x 版本。各个版本的介绍:
2.3.2版本:
2013年之后,停止维护;
支持更广泛的浏览器
代码不够简洁, 功能不够多。
3.x.x 版本:
目前最 ...
01-CSS中的非布局样式
前言CSS中,有很多非布局样式,这些样式(属性)和与布局无关,包括:
字体、字重、颜色、大小、行高
背景、边框
滚动、换行
装饰性属性(粗体、斜体、下划线)等。
这篇文章,我们来对上面的部分样式做一个回顾。
边框如何用边框画一个三角形?详见《02-CSS基础/06-CSS盒模型详解》中的最后一段。
文字换行
ovferflow-wrap:通用的属性。用来说明当一个不能被分开的字符串(单词)太长而不能填充其包裹盒时,为防止其溢出,浏览器是否允许这样的单词中断换行。
word-break:指定了怎样在单词内断行。这里涉及到CJK(中文/日文/韩文)的文字换行。
white-space:空白处是否换行。
上面这三个 css 属性进行组合,可以设置各种不同的属性。
当然,如果想让一段很长的文本不换行,可以直接设置white-space: nowrap 这一个属性即可。如果想换行,可以试试white-space: pre-wrap。
CSS Hack
CSS Hack 的方式:不合法但可以生效的写法。
可以用来解决一些浏览器的兼容性问题。
缺点:难理解、难维护、易失效(比如浏览器 ...
01-CSS基础练习:JD首页的制作(顶部和底部)
前言京东是典型的电商类网站,学习这个网站的制作比较有价值。我们准备用WebStorm进行开发。
京东首页的截图为:http://img.smyhvae.com/20180119_1653.jpg
页面规划:新建一个空的工程我们首先新建一个空的工程:
CSS初始化(基本样式)京东网站有一些基本样式,在各个页面中都要用到:(将这些基本样式copy到css.base里面去)
base.css中的公共的部分:
@charset "UTF-8";/*css 初始化 */html, body, ul, li, ol, dl, dd, dt, p, h1, h2, h3, h4, h5, h6, form, fieldset, legend, img { margin:0; padding:0; }fieldset, img,input,button { border:none; padding:0;margin:0;outline-style:none; } /*去掉边框、去掉轮廓(比如输入框外面的蓝边框)*//*去掉列表前面的圆点* ...
01-CSS属性:字体属性和文本属性
title: 01-CSS属性:字体属性和文本属性publish: true
本文重要内容
CSS的单位
字体属性
文本属性
定位属性:position、float、overflow等
CSS的单位html中的单位只有一种,那就是像素px,所以单位是可以省略的,但是在CSS中不一样。CSS中的单位是必须要写的,因为它没有默认单位。
绝对单位1 in=2.54cm=25.4mm=72pt=6pc。
各种单位的含义:
in:英寸Inches (1 英寸 = 2.54 厘米)
cm:厘米Centimeters
mm:毫米Millimeters
pt:点Points,或者叫英镑 (1点 = 1/72英寸)
pc:皮卡Picas (1 皮卡 = 12 点)
相对单位px:像素em:印刷单位相当于12个点%:百分比,相对周围的文字的大小
为什么说像素px是一个相对单位呢,这也很好理解。比如说,电脑屏幕的的尺寸是不变的,但是我们可以让其显示不同的分辨率,在不同的分辨率下,单个像素的长度肯定是不一样的啦。
百分比%这个相对单位要怎么用呢?这里也举个例子:
font 字体属性CSS中,有很多 ...
02-Bootstrap使用
title: 02-Bootstrap使用publish: false
02-CSS基础练习:JD首页的制作(快捷导航部分)
title: 02-CSS基础练习:JD首页的制作(快捷导航部分)publish: true
我们在上一篇文章中制作的网页最顶部的导航,是属于网页导航。
本文中,Banner图上方的导航,叫做快捷导航(shortcut)。
##快捷导航的骨架
我们先制作快捷导航的骨架。如下图所示:
上图中,shortcut-nav-menu-all和shortcut-nav-menu-one都是属于shortcut-nav-menu部分,只不过,后者是将父亲撑破了。
为了实现上图,对应的html代码如下:
<!--shortcut-nav部分start--><div class="shortcut-nav"> <div class="w"> <div class="shortcut-nav-menu"> <div class="shortcut-nav-menu-all"> <a ...
02-CSS属性:背景属性
title: 02-CSS属性:背景属性publish: true
background 的常见背景属性css2.1 中,常见的背景属性有以下几种:(经常用到,要记住)
background-color:#ff99ff; 设置元素的背景颜色。
background-image:url(images/2.gif); 将图像设置为背景。
background-repeat: no-repeat; 设置背景图片是否重复及如何重复,默认平铺满。(重要)
no-repeat不要平铺;
repeat-x横向平铺;
repeat-y纵向平铺。
background-position:center top; 设置背景图片在当前容器中的位置。
background-attachment:scroll; 设置背景图片是否跟着滚动条一起移动。属性值可以是:scroll(与fixed属性相反,默认属性)、fixed(背景就会被固定住,不会被滚动条滚走)。
另外还有一个综合属性叫做background,它的作用是:将上面的多个属性写在一个声明中。
CSS3 中,新增了一些backgr ...
02-CSS布局
title: 02-CSS布局publish: true
前言常见的布局属性(1)display 确定元素的显示类型:
block:块级元素。
inline:行内元素。
inline-block:对外的表现是行内元素(不会独占一行),对内的表现是块级元素(可以设置宽高)。
(2)position 确定元素的位置:
static:默认属性值。
relative:相对定位。相对于元素本身进行偏移,不会改变它所占据的空间。
absolute:绝对定位。相对于父元素中最近的 relative/absolute 进行偏移,会脱离文档流。音标:[ˈæbsəluːt]。
fixed:固定定位。相对于可视区域固定,会脱离文档流。
relative、absolute、fixed这三个属性,可以结合 z-index 来设置层级。
常见的布局方法1、table 表格布局:早期使用的布局,如今用得很少。
2、float 浮动 + margin:为了兼容低版本的IE浏览器,很多网站(比如腾讯新闻、网易新闻、淘宝等)都会采用 float 布局。
3、inline-block 布局:对外的 ...
03-CSS样式表和选择器
title: 03-CSS样式表和选择器publish: true
本文主要内容
CSS 概述
CSS 和 HTML 结合的三种方式:行内样式表、内嵌样式表、外部样式表
CSS 四种基本选择器:标签选择器、类选择器、ID选择器、通用选择器
CSS 几种扩展选择器:后代选择器、交集选择器、并集选择器
CSS 样式优先级
前言CSS 概述CSS:Cascading Style Sheet,层叠样式表。CSS 的作用就是给 HTML 页面标签添加各种样式,定义网页的显示效果。简单一句话:CSS 将网页内容和显示样式进行分离,提高了显示功能。
css 的最新版本是 css3,我们目前学习的是 css2.1。 因为 css3 和 css2.1 不矛盾,必须先学 2.1 然后学 3。
接下来我们要讲一下为什么要使用 CSS。
HTML 的缺陷:
不能够适应多种设备
要求浏览器必须智能化足够庞大
数据和显示没有分开
功能不够强大
CSS 优点:
使数据和显示分开
降低网络流量
使整个网站视觉效果一致
使开发效率提高了(耦合性降低,一个人负责写 html,一个人负责写 ...
03-DOM操作练习:基础练习
title: 03-DOM操作练习:基础练习publish: true
DOM操作练习举例1:点击按钮时,显示和隐藏盒子。代码实现:
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> button { margin: 10px; } div { width: 200px; height: 200px; background-color: pink; } .show { display: block; } .hide { displ ...
03-Less详解
title: 03-Less详解publish: true
CSS 预处理器为什么要有 CSS 预处理器CSS基本上是设计师的工具,不是程序员的工具。在程序员的眼里,CSS是很头痛的事情,它并不像其它程序语言,比如说PHP、Javascript等等,有自己的变量、常量、条件语句以及一些编程语法,只是一行行单纯的属性描述,写起来相当的费事,而且代码难以组织和维护。
很自然的,有人就开始在想,能不能给CSS像其他程序语言一样,加入一些编程元素,让CSS能像其他程序语言一样可以做一些预定的处理。这样一来,就有了“CSS预处器(CSS Preprocessor)”。
什么是 CSS 预处理器
是 CSS 语言的超集,比CSS更丰满。
CSS 预处理器定义了一种新的语言,其基本思想是:用一种专门的编程语言,为CSS增加了一些编程的特性,将CSS作为目标生成文件,然后开发者就只要使用这种语言进行编码工作。
通俗的说,CSS预处理器用一种专门的编程语言,进行Web页面样式设计,然后再编译成正常的CSS文件,以供项目使用。CSS预处理器为CSS增加一些编程的特性,无需考虑浏览器的兼容性问题,例如 ...