自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Grace

改变自己不想改变的!

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

原创 java8 stream sort排序

集合对象为订单对象,主键、订单号、订单类型、总金额public class OrderInfo { private Integer id; private String orderNo; private Integer type; private Double total; public OrderInfo(Integer id,String orderNo,Integer type,Double total){ this.id = i

2020-11-17 22:19:38 5891 3

原创 【ZooKeeper】- 数据结构

ZooKeeper是一个与Unix文件系统很类似的结构,如下图,名称是由斜线(/)分隔得一系列路径,ZooKeeper的每一个节点都有一个路径标识。 这棵树由节点组成,每个节点称为ZNode。ZNode引用方式是路径引用,比如/app1/p_1,这样的层级结构让每个ZNode都有唯一的路径。1)ZNode组成: 每个ZNode兼具文件和目录...

2019-06-05 16:39:49 508

原创 mybatis 多条件多值批量更新

近来多次用到批量操作,整理记录一下单个条件批量更新:<update id="updateBatch" parameterType="java.util.List"> update mydata_table <trim prefix="set" suffixOverrides=","> <trim pre...

2019-04-11 13:38:52 3634

原创 spring cloud学习 - zuul

Zuul的概念Zuul作为SpringCoud系列的API网关,在一个微服务集群中,Zuul担任的角色既是关口,有一夫当关,万夫莫开的气势,同时也是代理门户。作为关口,它是集群中提供的唯一的外部访问的通道,任何请求,必须通过网关,才能访问集群内部的服务。在访问Zuul时,可以对其进行安全认证、限流熔断等操作,请求处理完毕时,能够完成日志监控等服务。Zuul请求生命周期Zuul提供了一个...

2019-03-15 14:51:21 305 1

转载 Windows下mysql安装

我们有两种安装方式,这里用到的是官方解压绿色版本。解压之后通过windows命令行进行操作,为了避免和可能存在的旧MySQL(如果安装)端口3306冲突我们设置端口号为3309。 MySQL版本 5.7.21 ZIP(319MB)操作系统  windows10 1、在官方下载MySQLhttps://dev.mysql.com/downloads/mysql/ ...

2018-11-29 21:55:08 457 1

原创 Git-创建分支流程

      在公司开发项目,都是合作并行进行开发,我们会用到分支。在并行开发的过程中,往往同时存在多个最新代码状态,我们再将代码合并到master上。master分支是Git默认创建的分支,基本上所有开发都以这个分支为中心进行的(可能会有不同,比如有的会建立一个测试的分支和预发布的分支),具体情况根据公司实际来进行建立就OK。     下面这幅图,显示我们创建分支的过程:    1、查看分支git...

2018-06-02 14:20:17 11045 3

转载 IDEA创建项目及上传到github

1.用IDEA创建java项目并跑起来此IDEA版本为151.1创建项目1.2 选择项目类型1.3 填写项目信息1.4 填写maven信息1.5 填写项目名1.6 等待maven初始化项目刚创建项目成功,maven还没初始化完的时候没有src目录,待maven初始化完项目后项目中多了src目录,且控制台提示maven创建项目成功。1.7 设置项目结构1.8 设置项目结构 Facets注意,上面要选...

2018-06-02 11:31:19 652

原创 Git-设置SSH Key

        GitHub上连接已有仓库时的认证,是通过使用SSH的公开密钥认证方式进行的。我们首先来创建SSH key,并将其添加到GitHub上。前提是要初始化设置姓名和邮箱地址$ git config --global user.name "GraceSi"$ git config --global user.email "your_email@163.com"1、创建SSH Key...

2018-05-31 20:59:15 6811 7

原创 深入理解JVM-性能监控工具

       在了解一些JVM的基础之上,我们在给系统定位问题的时候呢,还需要特别好的工具来帮助我们进行分析和查找问题。JDk安装完成后,在${JAVA_HOME}/bin目录下,是java自带的一些监控工具。1、jps:虚拟机进程状况工具     jps:显示当前系统的java进程情况     jps [options]  [hostid]选项 作用 -q 只输出 LVMID,省略主类的名称...

2018-05-06 17:46:22 746

原创 redis安装-致命错误:jemalloc/jemalloc.h:没有那个文件或目录

最近在研究redis的使用,发现安装redis时出现了该错误:执行命令: make MALLOC=libc

2018-03-22 12:46:57 3488

原创 mysql启动报错

公司使用mysql,元旦节日前使用的非常好,节日后也不工作了,发现mysql不工作了。查找发现mysql未启动,而且输入启动命令,启动不成功。问题如下图:于是按照提示进行如下操作,发现也看不出问题在哪?    Systemctl status mysqld.service?.mysqld.service - SYSV: MySQL database server. Loa

2018-01-02 21:17:07 4278 3

原创 Mybatis中$和#区别

一、总结:     #{ }:占位符,防止sql注入     ${ }:sql拼接符号二、分析:    动态sql是mybatis的强大的特性之一。mybatis在对sql语句进行预编译之前会对sql进行动态解析,解析为一个BoundSql对象,也是在此处对动态SQL进行处理。    在动态SQL解析中,#{ }和${ }不同:    #{ }解析为JDBC预编译语

2017-10-09 20:47:15 1436

原创 半年总结

最近项目也做的差不多了,好久没有做一下思想上的总结,一直在进行技术积累,回头想想这半年的收获,看看是否有很大改变。

2017-08-31 22:48:34 661

原创 mybatis-动态sql语句-if用法

上一篇,初步了解了一下mybatis----mybatis-简介,我们已经了解mybatis进行调用的过程,这一次主要来说如何进行动态sql语句的拼写,这次主要讲解if的应用。查询:咱们接着上一篇博客说,依然选用根据模糊查询或邮箱查询 select user_name "userName", user_pa

2017-08-27 15:50:08 18066 10

原创 mybatis-简介

mybatis是一款优秀的支持自定义sql查询、存储过程和高级映射的持久层框架,消除了jdbc的手动配置。mybatis支持XML或注解进行配置和映射,将参数映射到配置的sql形成最终执行的SQL语句,最终将结果映射到Java对象返回。       与Hibernate相比,它将sql的定义交给了程序员,要更加灵活。与JDBC相比,它简化了相关代码,sql语句再一行代码中就能执行。

2017-08-16 22:58:51 765 4

原创 springmvc常用注解

一直在使用springmvc,今天来总结一下在项目中经常使用到的注解,可以对知识有一个很好的梳理。1、@Controller  用于标记在一个类上,使用它标记的一个类就是一个SpringMVC Controller对象。DispatcherServlet(前端控制器)会扫描使用了该注解的类的方法。@Controller只是定义了一个控制器类,并不能处理请求(真正处理请求的是@Request

2017-08-12 23:05:37 567 2

原创 ssh框架整合

废话也不多说,就直接看如何整合ssh框架,我搭建使用的IDEA,只需要配置好JDK并安装maven,我们就可以轻松来整合ssh框架。整合的第一步就是需要建立一个用maven管理的web项目。1、创建maven的web项目(这是其中最重要的一步,选择webapp)            项目结构如上图(没有存放Java文件的地方,自己建立一个java的包就可以了)2、

2017-08-07 20:20:37 782 2

原创 并行-携带返回结果的Guarded Suspension模式

上篇博客已经讲解了Guarded Suspension模式使用用户请求队列,可有序地对客户申请进行处理,但是客户进程的Request不能获得服务进程的返回结果。如果客户端要求必须有返回值时,这个模式就不适用了。这时我们就可以考虑使用之前讲过的Future模式,对Guarded Suspension模式进行扩展。

2017-08-02 22:48:18 466 5

原创 并行-Guarded Suspension模式

核心思想:          Guarded Suspension的意思是暂停保护,该模式的核心思想是仅当服务器准备好时,才提供服务。就是当大量客户请求到来,而我们不能放弃任何一个请求,必须让客户请求排队,由服务器一个一个去处理。适用场景:      服务器请求多,但服务器程序不能丢弃任何一个客户的请求。     Guarded Suspension模式:既可以最大

2017-07-31 14:02:32 591 15

原创 并行-Master-Worker模式

master-worker模式,我们生活中有很多这样的例子,比如一个小组会有一个组长,组长负责给每个人分配任务,也监控每个人的工作情况。Master-Worker模式是常用的并行模式,它的核心思想是,系统由两个重要角色组成,一个为Master,用于任务的分配和最终结果的合成;一个为Worker,用于实际处理一个任务。

2017-07-30 09:00:35 795 14

原创 Centos7使用rpm包安装mysql5.7.18

最近一直使用mysql,mysql-Linux下安装写了使用其他方式安装mysql,这次主要采用rpm格式来安装,试了一下感觉这种安装模式比较简单。卸载MariaDBcentos7默认安装MariaDB而不是mysql,可能MariaDB数据库和mysql会冲突,故先卸载MariaDB。             1、查看已安装MariaDB相关的包             rp

2017-07-17 09:14:13 3862 24

原创 并行-Future模式

一、Future模式的核心:      去除主线程的等待时间,并让原本需要等待的时间段用于处理其他的业务逻辑。

2017-07-12 20:42:01 798 38

原创 mongodb数据库自动备份

数据对我们现在应用系统越来越重要,这就驱使我们必须去做的一件事就是冗余备份,保证数据的完整性和可恢复性。既然如此重要,我们就必须去备份,但如果手动去做的话,不仅浪费时间,也可能导致数据丢失。最好的方式当然是自动实现备份,本次主要说mongodb数据库的自动备份。       实现思路:      1)创建备份文件存放的文件夹              2)编译脚本实现备份

2017-07-09 09:37:43 2981 23

原创 NIO-简介

最近用到了NIO,从

2017-07-02 21:56:13 536 8

转载 Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk、tomcat、eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目,我们当然可以安装一个myeclipse到Linux系统上去,这个安装方法和安装eclipse完全相同,就没有记录下来了,有了jdk、tomcat、ec

2017-06-25 11:19:07 1682 13

原创 mysql-Linux下安装

1、下载地址        https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz2、将压缩包上传到服务器     3、解压       tar -zxf mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz4、移动压缩

2017-06-25 10:02:43 804 14

原创 mysql--慢查询

上篇博客已经列举了我们经常要用到的查询mysql状态的命令,当我们查看数据库状态一切正常时,此时某些查询还是很慢,我们就需要去找到这些慢查询,下面先了解什么是慢查询。

2017-06-18 09:11:15 973 57

原创 mysql--查看mysql状态的常用命令

mysql优化的第一步就是要知道查询mysql服务的状态,之后再定位慢查询。      执行show status命令后将会列出300个关于mysql状态的参数,我们常用的也就那么几个。                   列举了一些常用命令代表的含义:       Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量.  Aborted_c

2017-06-09 17:30:04 3109 13

原创 mysql--explain分析

如果你发现一条sql语句执行的特别慢时,你会怎么做呢?mysql中我们可以使用explain来分析sql的执行效率。那么在使用之前,先来了解一下如何查看执行explain后,给我们的分析结果。   先来看一个例子吧,这样可以有一个宏观的认识。          查看分析结果,发现上图中列出了很多项分析,我们逐个了解各个含义。   1、id     数据库为执行的sql语句进行的

2017-06-04 11:53:05 1166 15

原创 Solr单机版搭建

最近用到了solr搜索引擎服务器,先研究一下如何搭建,从单机版开始入手,一步步深入学习和探索

2017-05-30 15:25:24 1543 10

原创 sql中exists和not exists用法

之所以要说这个问题,是因为项目中用到了not exists,但两者写的语句只有一点差别,结果一个有问题了,一个没问题。具体问题下面详细说明,先来看看exists如何应用。exists:        强调的是是否有返回集,不需知道具体返回的是什么,比如:          SELECT * FROM customer WHERE not

2017-05-14 11:16:54 102661 16

原创 深入理解JVM-类加载

1、为什么使用类加载器?         类加载过程都是在运行时完成的,这个过程会增加系统性能的开销,但能够带来灵活性。我们可以在运行期间,通过类加载器,       在程序运行时加载一些class文件。2、类加载过程?          使用Java编译器将java文件编译为class文件,这个过程不再详细叙述。主要说明我们如何利用这些编译好的    class文件。    JVM将class文...

2017-05-07 22:49:22 612 8

原创 深入理解JVM-内存模型

        最近一直在研究这个JVM,看了一本书《深入理解Java虚拟机》,来记录一下这一段的学习历程。Java虚拟机内存分析,初研究感觉好像很难理解,其实跟日常我们编程有很大的关系,理解Java虚拟机对我们提升代码质量也有很大的帮助。       JVM虚拟机运行时数据区:              程序计数器:       一块较小的内存空间,可看作是当前线程执行的字节码的行号指示器。  ...

2017-04-30 21:08:33 826 10

原创 oracle创建数据库

之前使用mysql比较多,所以相对要熟悉些,最近在使用oracle,简单记录一下oracle创建数据库的步骤,方便以后查阅。

2017-04-15 15:58:56 2146 13

原创 Oracle/mysql中日期函数

最近在项目中使用oracle数据库,发现oracle跟mysql中函数还是有一些差别的,整理一下关于日期函数的使用。

2017-04-11 13:01:06 9096 10

原创 IDEA中设置main方法自动补全

之前一直在使用eclipse,但使用那么久,感觉还是由一些缺陷,最近正转向使用IDEA,但对于一些快捷键的使用还不是很明白,就自己有时间就研究一下,这次主要介绍的是main方法自动补全,IDEA默认不支持该功能。自己记录一下,也是一个积累。1、选择setting设置-->Editor--->Live Templates     2、点击删除中添加,如下图  3、

2017-03-18 21:08:39 8198 14

原创 Linux下安装mongodb

最近一直在用mongodb,所以就简单写一篇总结,记录一下过程。1、下载mongodb稳定版本的安装包      https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.2.tgz2、解压缩      tar -zxvf mongodb-linux-x86_64-3.4.2.tgz 3、重命名文件

2017-03-12 21:29:13 600

原创 文件下载显示进度条

文件下载网络上下载资源,当文件比较小的时候,没有显示进度,可能看不出来什么,但当文件内容比较大,显示出进度条,这样就更加贴切的让用户感到文件下载的状况。     现在先做一个小例子,主要是现在控制台输出文件下载的进度。  package com.tgb.demo;import java.io.File;import java.io.IOException;import java.i

2017-03-05 21:24:55 15130 11

原创 SpringMVC下压缩文件下载

最近在做文件下载的功能,由于下载的是图片,内容比较大,所以需要先在服务器端进行压缩,压缩后下载到用户本地。        文件下载的步骤:         1)在服务器端建立一个临时压缩文件         2)找到文件路径,用JDK自带的API进行文件压缩         3)将zip文件下载,文件流输出         4)删除服务器端临时文件  文件下载:

2017-02-26 21:28:03 3622 16

原创 Linux下安装Tomcat

Tomcat安装过程:1、下载tomcat       地址   http://tomcat.apache.org/download-60.cgi2、上传到/root目录下3、解压      tar -zxvf apache-tomcat-7.0.73.tar.gz4、拷贝tomcat    cp apache-tomcat-7.0.73 /usr/lo

2017-02-13 19:55:51 699 15

空空如也

空空如也

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

TA关注的人

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