自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (1)
  • 收藏
  • 关注

原创 一起来学SpringColud 初识微服务

项目的演变从个大搜索指数来看,微服务的热度在进入 2017 年后突然爆发,国内各大会议和论坛的相关讨论也如雨后春笋般层出不穷,各大一线互联网公司也纷纷将这一技术引入并在实际业务中落地。这里选取Dubbo官网的一副图作为分析从左到右依次为单一应用=》垂直应用架构=》分布式服务架构=》流动计算架构 单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本...

2018-10-29 23:08:27 1051

原创 Centos7 安装gitlab

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后...

2018-10-20 16:28:27 270

原创 Gitblit的搭建

Git是一款注重速度、数据完整性、分布式支持和非线性工作流的分布式版本控制工具。Git最初由LinusTorvalds在2005年为Linux内核开发而设计,如今已经成为被广泛接受的版本控制系统。和其他大多数分布式版本控制系统比起来,不像大多数客户端-服务端的系统,每个Git工作目录是一个完整的仓库,带有完整的历史记录和完整的版本跟踪能力,不需要依赖网络或者中心服务器。像Linux内核一样,Gi...

2018-10-20 16:02:20 942

原创 一起来学SpringBoot(十六)优雅的整合Shiro

Apache Shiro是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理。借助Shiro易于理解的API,您可以快速轻松地保护任何应用程序 - 从最小的移动应用程序到最大的Web和企业应用程序。网上找到大部分文章都是以前SpringMVC下的整合方式,很多人都不知道shiro提供了官方的starter可以方便地跟SpringBoot整合。请看shiro官网关于sp...

2018-10-14 11:10:30 3994 4

原创 Java8新特性 Stream 快速上手

Java 8引入了全新的Stream API。这里的Stream和I/O流不同,它更像具有Iterable的集合类,但行为和集合类又有所不同。stream是对集合对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作,或者大批量数据操作。只要给出需要对其包含的元素执行什么操作,比如 “过滤掉长度大于 10 的字符串”、“获取每个字符串的首字母”等,Stream 会隐式地在内部进行...

2018-10-07 18:05:42 551

原创 模版引擎 FreeMarker基本使用

Apache FreeMarke是一个模板引擎:一个Java库,用于根据模板和更改数据生成文本输出(HTML网页,电子邮件,配置文件,源代码等)。模板是用FreeMarker模板语言(FTL)编写的,这是一种简单的专用语言(不像PHP这样的完整编程语言)。通常,使用通用编程语言(如Java)来准备数据(发布数据库查询,进行业务计算)这篇文章呢就来介绍freemarker 的常见用法Free...

2018-10-07 18:05:35 1237

原创 一起来学SpringBoot(十五)MybatisPlus的整合

MyBatis-Plus(简称 MP)是一个MyBatis的增强工具 ,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。本篇文章介绍的是与springboot的整合。特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mappe...

2018-10-07 18:05:26 19603 3

原创 一起来学SpringBoot(十四)Dubbo的整合

Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。在2月15日,大年三十,经过一系列紧张的投票,来自阿里巴巴的广受社区欢迎的RPC开源框架Dubbo宣布正式进入Apache孵化器。说起Dubbo框架,可...

2018-10-07 18:05:17 448

原创 一起来学SpringBoot(十三)Druid数据源

Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。考虑到可能是数据库连接的问题,所以我打算引入其他的数据池,引入数据池的时候找来找去,比较了当前两个最火的数据池,druid和HikariCP,比来比去选了阿里的druid,虽然spring boot默认不支持druid,而是支持HikariCP,而且HikariCP的性能更好,但是阿里功能多,界面友好方便,性价比...

2018-10-07 18:05:02 492 1

原创 一起来学SpringBoot(十二)发送邮件

发送邮件应该是网站的必备功能之一,什么注册验证,忘记密码或者是给用户发送营销信息。最早期的时候我们会使用JavaMail相关api来写发送邮件的相关代码,后来spring退出了JavaMailSender更加简化了邮件发送的过程,在之后springboot对此进行了封装就有了现在的spring-boot-starter-mail,本章文章的介绍主要来自于此包。首先呢肯定是要加入依赖 &l...

2018-10-07 18:04:52 1805 1

原创 一起来学SpringBoot(十一)优雅的整合Quartz

Quartz是一个功能丰富的开源作业调度库,几乎可以集成在任何Java应用程序中 - 从最小的独立应用程序到最大的电子商务系统。Quartz可用于创建简单或复杂的计划,以执行数十,数百甚至数万个作业; 将任务定义为标准Java组件的作业,这些组件可以执行几乎任何可以编程的程序。Quartz Scheduler包含许多企业级功能,例如支持JTA事务和集群。springboot在2.x后加入了quar...

2018-10-07 18:04:44 973 1

原创 一起来学SpringBoot(十)缓存的使用

Spring Framework支持透明地向应用程序添加缓存。从本质上讲,抽象将缓存应用于方法,从而根据缓存中可用的信息减少执行次数。缓存逻辑应用透明,不会对调用者造成任何干扰。只要通过@EnableCaching 注释启用了缓存支持,Spring Boot就会自动配置缓存基础结构。下面我就介绍两个我比较常用的缓存。JSR-107为了统一缓存的开发规范,以及我们系统的扩展性。java发布了...

2018-10-07 18:04:34 4198

原创 一起来学SpringBoot(九)整合Redis

Nosql的全称是Not Only Sql,这个概念早起就有人提出,在09年的时候比较火。Nosql指的是非关系型数据库,而我们常用的都是关系型数据库。就像我们常用的mysql,sqlserver一样,这些数据库一般用来存储重要信息,应对普通的业务是没有问题的。但是,随着互联网的高速发展,传统的关系型数据库在应付超大规模,超大流量以及高并发的时候力不从心。而就在这个时候,Nosql得到的告诉的发展...

2018-10-06 09:12:08 447

原创 一起来学SpringBoot(八)事务的控制

所有的数据访问技术都有事务处理机制,这些技术提供了API用来开启事务、提交事务来完成数据操作,或者在发生错误的时候回滚数据。而Spring的事务机制是用统一的机制来处理不同数据访问技术的事务处理。Spring的事务机制提供了一个PlatformTransactionManager接口,不同的数据访问技术的事务使用不同的接口实现。SpringBoot提供了非常方便的事务操作,通过注解就可以实现事务的...

2018-10-06 09:12:01 9075 1

原创 一起来学SpringBoot(七)持久层框架

springboot具有非常棒的持久层框架支持,下面我将介绍我用过的三种持久层框架进行简述使用。由于这里操作的都是一张表,这里贴出通用的yml和建表语句 切记这里使用的是mysql8 ,5.8之前的朋友请修改后缀去掉com.mysql.cj.jdbc.Driver 中的cj。DROP TABLE IF EXISTS `Test`;CREATE TABLE `Test` ( `id`...

2018-10-06 09:11:52 5188

原创 一起来学SpringBoot(六)web开发与错误的处理

在互联网时代,我们所开发的应用大多是直面用户的,程序中的任何一点小疏忽都可能导致用户的流失,而程序出现异常往往又是不可避免的,那该如何减少程序异常对用户体验的影响呢?其实方法很简单,对异常进行捕获,然后给予相应的处理即可,springboot 提供了比较方便的错误处理方式。首先呢我们新建一个springboot项目,并且新建一个百分百会出错的controllerpackage com.mao...

2018-10-06 09:11:44 694

原创 一起来学SpringBoot(五)Servlet、Filter、Listenter

web开发使用Controller基本能解决大部分的需求,但是有时候我们也需要使用Servlet,因为相对于拦截和监听来说,有时候原生的还是比较好用的,现在就来简单的在SpringBoot中使用这些特殊类吧。当使用spring-Boot时,嵌入式Servlet容器通过扫描注解的方式注册Servlet、Filter和Servlet规范的所有监听器(如HttpSessionListener监听器)。S...

2018-10-06 09:11:32 762

原创 一起来学SpringBoot(四)web开发与模版引擎

SpringBoot 的web应用开发,是基于spring mvc的,在动态HTML实现上Spring Boot依然可以完美胜任,并且提供了多种模板引擎的默认配置支持,所以在推荐的模板引擎下,我们可以很快的上手开发动态网站。springboot在spring 的默认基础上,自动添加了以下特征:包含了ContentNegotiatingViewResolver 和BeanNameViewRe...

2018-10-06 09:11:24 459

原创 一起来学SpringBoot(三)日志的配置

在开发和运维中日志的处理可是少不了的,这里我们就来说明一下SpringBoot中的日志配置首先说明下SpringBoot支持的日志框架Java Util Logging、Log4J2、logback其中呢SpringBoot默认使用的是logback,配置方式有默认配置和引用外部文件配置两种。配置方式一、默认配置方式SpringBoot默认使用的是logback。如果你在Maven...

2018-10-06 09:11:16 606

原创 一起来学SpringBoot(二)properties和yml

上述中讲到了怎么创建SpringBoot项目,那么现在就来介绍下SpringBoot配置文件的两种格式yml和properties首先呢发上一份application.properties在放上一份相同配置的application.yml我们可以看到,相同的配置下yml显得更加简洁, 但是yml却拥有相当严格的格式,他的层级关系必须以相应的缩进表示可以使2空格可以使更多的空格只要层级...

2018-10-06 09:10:55 1157

原创 一起来学SpringBoot(一)项目的创建

title:tags:‘springboot’categories: ‘一起学Springboot’date: ‘2018-09-01’Spring官方说,Spring Boot使得创建独立的、生产级的基于Spring的应用程序变得很容易,您可以“直接运行”。我们对Spring平台和第三方库抱有自己的看法,这样您就可以以最小的麻烦开始。大多数Spring启动应用程序只需要很少的S...

2018-10-06 09:10:18 661 2

原创 SpringBoot AOP自定义注解实现日志功能

首先我们为什么需要做日志管理,在现实的上线中我们经常会遇到系统出现异常或者问题。 这个时候就马上打开CRT或者SSH连上服务器拿日子来分析。受网络的各种限制。于是我们就想为什么不能直接在管理后台查看报错的信息呢。于是日志管理就出现了。其次个人觉得做日志管理最好的是Aop,有的人也喜欢用拦截器。都可以,在此我重点介绍我的实现方式。首先创建一个@interface的注解类package org....

2018-10-06 09:09:43 1375

原创 SpringBoot 使用redis发布订阅

消息是许多软件架构的重要组成部分。消息传递解决方案提供了高性能,可扩展性,队列持久性和耐用性,故障转移支持等,以及许多更漂亮具备的功能,在Java世界中大多总是使用JMS实现。后来使用Apache ActiveMQ的,有时只是需要简单的排队支持,而Apache ActiveMQ显得过于复杂。事实上,Redis 不仅提供一个NoSQL数据库,同时提供了一套消息系统。使用Redis作为pub/su...

2018-10-05 14:58:22 6596

原创 Spring @Autowired Map 和 List

在开发的时候有时候经常会看到这样代码这是Spring的一个特殊的注入功能如图所示当注入一个Map的时候 ,value泛型为MaoService,则注入后Spring会将实例化后的bean放入value ,key则为注入后bean的名字当注入一个List的时候,List的泛型为MaoService,则注入后Spring会将实例化的bean放入List中做个测试首先定义一个接口pac...

2018-10-05 14:56:50 15765 4

原创 常用好玩的Git命令

Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。与SVN的区别GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系...

2018-10-05 14:54:47 229

原创 idea 提交代码到 gitlab

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后...

2018-10-05 14:53:39 13601 1

原创 Centos7 firewalld基本使用

由于Centos7 自带的防火墙是firewalld 所以说呢我们在平时开发的时候还是要学习下的。firewalld的基本使用启动:systemctl start firewalld查看状态:systemctl status firewalld停止:systemctl disable firewalld禁用:systemctl stop firewalldsystem...

2018-10-05 14:46:53 206

原创 Docker 安装mysql8

MySQL™软件提供了一个非常快速,多线程,多用户,强大的SQL(结构化查询语言)数据库服务器pull一个mysql镜像下来docker pull mysql先运行这个镜像copy出配置docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql移动出mysql datadocker cp mys...

2018-10-05 14:45:56 1285

原创 Centos7 安装docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口选择yum安装yum -y install docker-io启动服务service docker start查看镜像docker images下载镜像docker pull...

2018-10-05 14:44:56 111

原创 Centos7 安装redis

配置redis 安装的环境yum install gcc-c++上传redis安装包redis-4.0.8.tar解压tar -zxvf redis-4.0.8.tar进入解压后redis目录解压make然后安装make install PREFIX=/usr/local/redisPREFIX 是制定安装位置然后在/usr/local下会有 Cli 是客户端 ...

2018-10-05 14:44:07 182

原创 Centos7 安装jdk

在虚拟机中配置jdk的环境以及安装.在 /usr/local创建一个 java目录mkdir java将上传的jdk复制到 java目录下cp /root/jdk.xxxxx.tar /usr/local/java解压tar -xvf jdk.xxx.tar安装依赖(有的话忽略就行)yum install glibc.i686配置环境编辑vi /etc/profile...

2018-10-05 14:42:19 165 2

原创 Centos7 设置静态ip

有时候为了使用虚拟机更方便,所有我们通常要设置静态ip,这篇文章就是介绍怎么取设置静态IP的进入vim /etc/sysconfig/network-scripts/ifcfg-eth0中:修改这里讲dhcp换成staticBOOTPROTO=static将no换成yesONBOOT=yes想上网设置为NAT网段新增 ** 这里代表是你在NAT模式中设置的网段静态IPIPA...

2018-10-05 14:41:10 161

quartz官方数据库大全

Quartz是一个功能丰富的开源作业调度库,几乎可以集成在任何Java应用程序中 - 从最小的独立应用程序到最大的电子商务系统。Quartz可用于创建简单或复杂的计划,以执行数十,数百甚至数万个作业; 将任务定义为标准Java组件的作业,这些组件可以执行几乎任何可以编程的程序。Quartz Scheduler包含许多企业级功能,例如支持JTA事务和集群。非要写描述,真是的~~~~~~~~~

2018-08-19

空空如也

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

TA关注的人

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