自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 设计模式(三)生成者模式、工厂方法模式、抽象工厂模式

创建者模式(builder)

2024-02-29 22:04:51 341

原创 设计模式(二)单例模式

单例模式:确保一个类只有一个实例,并提供了全局访问点;主要是用于控制共享资源的访问;单例模式的应用:数据库链接,线程池,缓存,日志对象;懒汉式单例在需要时才会创建,而饿汉式单例则在。单例模式的实现分为懒汉式和饿汉式。

2024-02-29 21:48:32 493

原创 设计模式(一)原型模式

需要注意的是:虽然原型模式能够有效的减少创建对象的开销,但是它并不是万能的,因为它依赖于克隆技术,而克隆技术可能会导致西能问题,尤其是在设计到深层克隆和多级对象依赖时,此外,使用原型模式肯呢个需要额外的代码来实现克隆功能,尤其是当类结构发生改变时需要更新克隆逻辑;浅拷贝实现方式1:Java 中的 Object 类提供了浅拷贝的 clone() 方法,具体原型类只要实现 Cloneable 接口就可实现对象的浅拷贝,这里的 Cloneable 接口就是原型类。深拷贝实现方式2:通过对象序列化实现深拷贝。

2024-02-29 21:22:23 561

原创 [中间件] kafka 安装启动

kafka安装下载

2023-02-09 10:25:05 129

原创 【Spring】快速构建一个Spring或SpringBoot项目

快速构建网址:https://start.spring.io/

2023-02-02 14:17:26 92

原创 Redis 分页

Redis java分页

2023-01-31 11:18:41 471

原创 Java 性能调优

性能测试时,遇到的问题?1. 做性能测试时,后面的访问速度要比我们第一次访问的速度快上几倍,系统会运行得越来越快。热身问题:在java编程语言环境中,.java文件编译成为class文件后,机器还是无法直接运行.class文件中的字节码,需要通过解释器讲字节码转换成本地机器码才能运行;为了节约内存和执行效率,代码最初被执行时,解释器会率先解释这段代码。随着代码被执行次数的增多,当虚拟机发现某个方法或代码块执行的特别频繁的时,...

2021-09-15 20:57:23 109 1

原创 logback日志级别实时生效

logback日志级别实时生效:LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();// **.**.**.** 包路径loggerContext.getLogger("**.**.**.**").setLevel(Level.valueOf(INFO));

2021-06-09 16:14:51 361

原创 kafka 基本命令

创建topicbin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test查看所有topicbin/kafka-topics.sh --list --zookeeper localhost:2181写入topik数据bin/kafka-console-producer.sh --broker-list localhost:9092 --topi

2021-01-15 16:31:38 170

原创 2020-09-15

@Component和@Bean的区别@Component注解表明一个类会作为组件类,并告知Spring要为这个类创建bean。 @Bean注解告诉Spring这个方法将会返回一个对象,这个对象要注册为Spring应用上下文中的bean。通常方法体中包含了最终产生bean实例的逻辑...

2020-09-15 18:44:04 65

转载 (二)SpringBoot 初学习 ,数据校验和多环境切换

数据校验@NotNull(message="名字不能为空")private String userName;@Max(value=120,message="年龄最大不能查过120")private int age;@Email(message="邮箱格式错误")private String email;空检查@Null 验证对象是否为null@NotNull 验证对象是否不为null, 无法查检长度为0的字符串@NotBlank 检查约束字符串是不是Null还有被Trim的长.

2020-08-11 15:47:36 85

原创 (一)SpringBoot 初学习 ,实体类注入配置文件

yaml文件更强大的地方在于,他可以给我们的实体类直接注入匹配值!@ConfigurationProperties:默认从全局配置文件中获取值;@Data@Component@ToString@AllArgsConstructor@NoArgsConstructor@ConfigurationProperties("person")public class Person { private String name; private Integer age; pri

2020-08-11 15:13:09 422

转载 IDEA 启动时生成图案

如何更改启动时显示的字符拼成的字母,SpringBoot呢?也就是 banner 图案;只需一步:到项目下的 resources 目录下新建一个banner.txt 即可。图案可以到:https://www.bootschool.net/ascii 这个网站生成,然后拷贝到文件中即可!...

2020-08-11 10:24:28 1729

转载 Redis的主从架构的搭建和数据的同步

1,下载安装wget http://download.redis.io/releases/redis-4.0.11.tar.gz2.解压缩tar -zxvf redis-4.0.11.tar.gz3.安装编译,进入到解压缩目录下,执行以下两个命令即可 make make install 4,通过cp复制成如下几个master,slave1,slave2目录 hxyMacmini:redis haoxiaoyong$ lsmaster slave1 s

2020-08-06 11:19:06 129

原创 2020-08-06

主从复制:是指将一台redis服务器的数据复制到其他的redis服务器。前者称为主节点,后者称为从节点。一个主节点可以有多个从节点,一个从节点只能有一个主节点。redis.conf salveof <ip>< port> 主从复制的作用: 1.数据冗余:主从复制实现了数据的热备份,也是除了持久化以外的数据冗余; 2.故障恢复:当主节点出现问题后,可以由从节点提供服务,实现故障恢复,实际上是服务的一种冗余。 3.负载均衡:在主从复制的基础上,配合读写分离,可以由从节点提供服务,

2020-08-06 11:18:28 71

原创 什么是Redis主从复制,主从复制的原理

什么是哨兵模式? 哨兵是一个独立的进程,以独立的进程监控三台服务器的redis是否正常。 哨兵模式的原理: 哨兵通过发送命令,等待redis服务器的响应,从而监控多个redis实例。 主观下线 主节点宕机后,哨兵一检测到这个结果,不会立刻做故障转移(重新选取主机),仅仅是主观认为主服务器不可用,这个现象称为主观下线。 客观下线 当后面的哨兵也检测到了主节点不可用,并且数量达到一定数值时,那么哨兵之间就会发起一个投票,从节点中选择一个作为主节点进行故障转移(failover)操作,切换成功后,就

2020-08-05 20:24:38 469

原创 getMetaData() Gbase8s V8.8 数据库下只有一个表 但是获取到多个

jdbc:gbase://ip:port/dbname?useSSL=false&useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=trueGbase8s V8.8 需要添加nullCatalogMeansCurrent=true参数,否则在使用会扫描整个服务器里面的全部数据库中的表,而不是扫描对应数据库.

2020-06-29 15:02:14 235

原创 DM7 JAVA getMetaData()获取数据库表名,视图名,表对应的列名。

public class DM { public static void main(String[] args) { try { String driver = "dm.jdbc.driver.DmDriver"; String url = "jdbc:dm://10.157.134.10:5236/"; String username = "SYSDBA"; String passwo.

2020-05-18 15:36:52 1567

原创 mysql 写入百万条数据,创建时间不一致

CREATE TABLE `app_user1` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT '' COMMENT '用户昵称', `email` varchar(50) NOT NULL COMMENT '用户邮箱', `phone` varchar(20) DEF...

2020-04-28 20:40:52 248

原创 Stream Collectors groupingBy

在这篇文章中,我们将向您展示如何使用java 8 StreamCollectors对列表分组,计数,求和和排序。1. Group By, Count and Sort1.1 Group by aListand display the total count of it.(按列表分组,并显示其总数)Java8Example1.javapackage com.mkyong....

2020-03-24 14:32:44 289

原创 redis配置类

import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.s...

2020-01-14 18:48:53 1852

原创 SpringBoot Mysql修改为Redis配置文件

启动类新增@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})application.ymlserver: port: 8080 servlet: session: timeout: 7200spring: datasource: url: jdbc:m...

2020-01-14 18:39:17 174 1

原创 Mysql修改为Redis(工具类,排序)

public static void getOrderBySJZYBSF(List<TableEntity> tableList, String orderAsc) { if ("false".equals(orderAsc)) { Collections.sort(tableList, new Comparator<TableEntity>()...

2020-01-14 18:35:09 125

原创 Mysql修改为Redis(工具类,分页)

import java.util.List;/** * 自定义List分页工具 */public class PageUtil { /** * 开始分页 * @param list * @param pageNum 页码 * @param pageSize 每页多少条数据 * @return */ p...

2020-01-14 18:34:25 181

原创 SpringBoot jar启动脚本

springboot/start.shnohup java -jar -Xms1024m -Xmx1024m -Dspring.config.location=/opt/springboot/config/data-index.yml /opt/springboot/data-index-1.0.0.jar > /opt/springboot/logs/data-index.ou...

2019-11-02 14:49:23 202

原创 linux安装tomcat8

安装tomcat到虚拟机1.上传tomcat安装包和启动脚本到opt文件下2.新建tomcat目录mkdir /opt/tomcat83.解压安装包到tomcat8下unzip tomcat8.zip -d /opt/解决方案:yum install unzip4.tomcat启动bath /opt/startup.sh解决方案:在tomcat 的bin目录下 执...

2019-11-02 14:45:36 174

原创 【JAVA】linux安装JDK

虚机中安装jdk1.新建jdk文件夹mkdir /opt/jdk1.8.0_2212.上传jdk的安装包到opt文件夹下/opt/3.解压到jdk1.8.0_221目录下tar -zxv -f jdk-8u221-linux-x64.tar.gz -C /opt/4.删除无用的安装包rm -f jdk-8u221-linux-x64.tar.gz增加环境变量vi /etc/p...

2019-11-02 14:38:30 176 1

原创 虚拟机类的加载机制

一. 类加载的时机 类从被加载到虚拟机内存开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载7个阶段。其中加载、验证、准备、初始化和卸载这五个阶段的顺序是确定的,类的加载机制过程必须按照这个顺序,按部就班的开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段后再开始为了直接Java的动态绑定。 加载开始的时机,Java虚拟机规范中并没...

2019-10-17 14:42:48 61

原创 ArrayList 的 泛型字段排序

import java.util.ArrayList;import java.util.Comparator;import java.util.List;public class SortByString { public static void main(String[] args) { int[] data = {1, 7, 9, 3}; ...

2019-10-16 19:15:20 226

转载 什么是中台

想要理解中台要先弄清楚传统项目的架构。传统项目的物理架构,无论项目有多复杂,都可以分为前台后台。前台:包括各种和用户直接交互的界面,比如WEB页面,手机APP;也包括服务单各种实时响应用户请求的业务逻辑,比如商品查询,订单系统等等。后台:并不直接面向用户,面向运营人员的配置管理系统,比如商品管理、物流管理、结算管理。后台为前台提供了一些简单的配置。为了提高开发效率,我们有必要整合出...

2019-09-23 11:09:04 355

转载 Java中枚举类型Enum的一种使用方式

我们在操作数据库的时候,通常使用数字保存到数据库中,但是在界面上显示的时候,需要展示其中文意思枚举类定义如下:public enum Status { SUCCESS("1", "成功"), FAILED("2", "失败"); private String code; private String desc; Status(String co...

2019-09-18 17:33:27 134

转载 String 及 final关键字

1.String对象String对象是java中重要的数据类型,String对象的特点:不变性,常量池优化和String类的final定义。1.1 不变性String对象的状态在其被创建之后就不在发生变化。为什么说这点也是Java设计者所做的优化,在java模式中,有一种模式叫不变模式,了解的童鞋也应该知道不变模式的作用:在一个对象被多线程共享,而且被频繁的访问时,可以省略同步和...

2019-09-18 16:46:43 215

转载 为什么Java中1000==1000为false而100==100为true?

这是一个挺有意思的讨论话题。如果你运行下面的代码Integer a = 1000, b = 1000;System.out.println(a == b);// 1 falseInteger c = 100, d = 100; System.out.println(c == d);// 2 true你会得到:falsetrue基本知识:我们知...

2019-09-18 16:12:46 113

转载 CAS 单点登录

1、背景介绍单点登录:Single Sign On,简称SSO,SSO使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。CAS框架:CAS(Central Authentication Service)是实现SSO单点登录的框架。2、盗一张学习CAS绝大多都看过的图以及执行部分分析注:已分不清原创,此处就不给出地址了。从结构上看,CAS包含两个部分:CA...

2019-04-22 15:16:44 95

转载 CAS实现SSO单点登录原理

1.CAS 简介简单的SSO的体系中,会有下面三种角色: 1,User(多个) 2,Web应用(多个) 3,SSO认证中心(1个)虽然SSO实现模式千奇百怪,但万变不离其宗:1  Web应用不处理User的登录,否则就是多点登陆了,所有的登录都在SSO认证中心进行。2 ...

2019-04-22 15:14:53 115

转载 Mysql 数据库乱码问题

全部使用utf8编码MySQL中文乱码解决查看默认编码格式: 1 mysql> show variableslike"%char%"; 设置编码格式: 1 2 3 SETcharacter_set_client='utf8'; SETcharacter_set_connecti...

2019-04-15 15:05:16 72

原创 搭建架构 SSM+Dubbox+RestFul

SSM配置思路: MVC : controller层: 接受参数 返回响应 Springmvc: 1、三大组建 2、扫描Controller包 Service层: 处理业务 Spring容器 1、事物 2、扫描@Service注解 Mapper层: 链接数据库,数据源 spring容器 工厂 数据源 扫描Mapper包 web.xml post...

2018-04-27 20:28:03 119

转载 Sorl的简单使用

第一步:创建一个java工程第二步:导入jar包。包括solrJ的jar包 第三步:和Solr服务器建立连接。HttpSolrServer对象建立连接。第四步:创建一个SolrInputDocument对象,然后添加域。第五步:将SolrInputDocument添加到索引库。第六步:提交。添加:          注意:1、solr中的域名是先定义后使用                     ...

2018-04-21 21:21:58 314

转载 使用Sorl的准备工作

Lucene是API,类库,solr基于Lucene开发一个项目;          1、准备一个干净的tomcat          2、把solr-4.10.3\dist中的war拷贝到tomcat的webapps文件夹下          3、把war解压 (直接启动tomcat)          4、配置solrHome(就是配置索引库位置)               1)、把solr...

2018-04-21 21:13:11 86

转载 全文检索步骤

数据分为两种:结构化数据和非结构化数据;                    结构化数据:有规律的,固定格式,有限长度的,数据库,原文件等。                    非结构化数据:没有固定格式,长度的,磁盘上的文件,这种数据不是很好查,可以使用全文检索;全文检索: 将非结构化的数据中的一部分信息提取出来,重新组织,使其变得有一定结构,称为索引。先创建索引在对索引进行搜索的过程,叫全...

2018-04-20 18:03:45 673

空空如也

空空如也

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

TA关注的人

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