自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CC的博客

我要这头发有何用

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

原创 12.优化数据库&优化SQL语句&索引

一、如何优化数据库?第一、优化索引、SQL语句、分析慢查询第二、设计表的时候严格按照数据库的设计范式来设计数据库第三、我们可以加上redis缓存,将经常被访问到的数据,但是不需要经常变化的数据放入至redis缓存服务器里面,这样的话能够节约太强盘I/0(昨天)第四、还可优化硬件,在硬件层面,我们可以使用更好的一些硬盘(固态硬盘),使用一些磁盘阵列技术(raid 0,raid1,raid5)...

2019-11-01 16:08:07 230

原创 13.数据库的索引

一.索引的定义索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引的方式与您使用书籍中的索引的方式很相似:它搜索索引以找到特定值,然后顺指针找到包含该值的行。 在数据库关系图中,您可以在选定表的“索引/键”属性页中创...

2019-10-30 19:48:36 274

原创 Java内存分区

Java虚拟机所管理的内存将包括以下几个运行时数据区域:线程共享区:方法区、堆线程私有区:虚拟机栈、本地方法栈、程序计数器一丶1.程序计数器:是一块较小的内存空间,可以看作当前线程所执行的字节码的行号指示器。java多线程就是通过对线程的轮流切换并分配处理器的执行时间的方式来实现的,在任意时刻,一个处理器都只会执行某一个线程中的指令。所以每条线程为了切换后能恢复到正确的执行位置,每条...

2019-07-07 09:48:26 607

原创 序列号生成器

序列号生成器

2022-08-29 14:14:11 1433 1

原创 参数校验工具类

参数校验工具类

2022-08-29 14:06:39 354

原创 异常工具类

异常工具类

2022-08-29 13:56:59 245

原创 时间处理工具类

时间处理工具类

2022-08-29 13:37:34 78

原创 工作面试题

1.类加载机制点击跳转资料双亲委派模型的作用:(1)涉及到沙箱安全机制,假如开发者自己写了一个和JDK同名(类路径和类名一模一样)的类如java.lang.Integer.java,一旦类似这种同名类被加载问题就出现了,加载器不知道加载哪一个Integer类,有了双亲委派机制就能保证加载的是JDK自己的Integer,这也是JDK设计者为了防止核心类库随意或者恶意篡改。(2)双亲委派避免了一个类被重复加载,父加载器加载过的目标类不会被子加载器再加载一次,保证了类加载的唯一性。2.JVM调优参数

2022-05-26 21:50:28 109

原创 spring boot配置https访问

1.Spring Boot 开启https访问(配置SSL证书)开启文档2.配置http协议跳转httpspackage com.dingsheng;import org.apache.catalina.Context;import org.apache.catalina.connector.Connector;import org.apache.tomcat.util.descriptor.web.SecurityCollection;import org.apache.tomcat.ut

2022-05-25 15:38:01 173

转载 spring IOC相关

spring IOC相关

2021-01-29 16:07:04 73

转载 设计模式:职责链模式

职责链模式

2021-01-29 15:32:01 87

原创 mysql查询去除重复记录

mysql查询去除重复记录1:使用distinctselect distinct name from a where statesign=0查询表a中的name字段,去除重复记录2:使用group byselect name from a where statesign=0 group by name查询表a中的name字段,分组,去除重复记录distinct使用时要放在第一个位置否则会报错...

2021-01-26 20:49:12 498

原创 5.springboot自动装配的实现原理

springboot自动装配的实现原理:我理解的自动装配是:其实EnableAutoConfiguration上有个Import注解,这个注解里面包含了一个实现了ImportSelector的类,在它里面的selectImports方法可以选择注入需要的Bean,分析源码可以看到,第一步:扫描META-INF/spring-autoconfigure-metadata.properties文件,它里面定义了很多的Conditional条件,例如ConditionalOnClass第二步:扫描META

2021-01-26 15:03:00 104

原创 1.1 springboot热部署

1.在pom文件的 <dependencies>标签中添加: <!--热部署依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional

2020-12-02 13:50:22 104

转载 21.一些问题总结

1.防止表单重复提交

2020-11-30 17:41:51 79

转载 20.springboot整合shiro

shiro相关链接

2020-11-30 15:18:53 82

原创 4.在APP中更改系统语言

Activity代码:import android.app.backup.BackupManager;import android.content.Intent;import android.content.res.Configuration;import android.os.Bundle;import android.os.LocaleList;import android.view.View;import android.widget.Button;import android.wid

2020-09-11 16:40:22 276

原创 3.定时关机

BaseActivity代码:(利用反射,调用系统方法关机)import android.content.Context;import android.os.Bundle;import android.view.KeyEvent;import android.view.View;import android.view.WindowManager;import androidx.annotation.Nullable;import androidx.appcompat.app.AppCom

2020-09-11 16:37:34 140

原创 19.Android相关

1.常用adb命令adb root 用户权限adb remount 写权限adb disable-verity写权限失败时执行,然后rebootadb shell终端控制设备,命令行终端adb shell input keyevent 4 返回ps list package 查看所有应用 + | grep XXXadb reboot bootloader fastboot 进入fastboot模式fastboot reboot 退出fastbootadb push 本机pwd 机器pwd

2020-09-01 22:20:03 93

转载 Android音乐播放器的实现

MediaPlayer实现音乐播放

2020-08-17 10:20:48 644

原创 2.Ubuntu系统

一、系统配置1. 系统常用命令及常用软件安装2.安装搜狗输入法3.安装vim可能出现的问题:当运行sudo apt-get install/update/其他命令时,会出现如下提示:E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用) E: Unable toacquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), isanother process using

2020-06-18 16:38:58 222

原创 1.Ubuntu下Android studio配置

下载安装教程

2020-06-07 20:38:49 397

原创 SQL练习

1.有一张存放全国人的数据库表,查询20-30岁之间的人数,索引如何建立?会不会失效?表:语句:

2020-03-10 14:06:50 124

原创 集群、分布式、微服务的区别

1.**分布式:**一个业务分拆多个子业务,部署在不同的服务器上2.**集群:**同一个业务,部署在多个服务器上3.**微服务:**将模块拆分成一个独立的服务单元通过接口来实现数据的交互。微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。...

2020-03-09 10:31:40 423

原创 10.Redis实现分布式锁

重要的命令:SETNX命令(SET if Not eXists)语法:SETNX key value功能:当且仅当 key 不存在,将 key 的值设为 value ,并返回1;若给定的 key 已经存在,则 SETNX 不做任何动作,并返回0。GETSET命令语法:GETSET key value功能:将给定 key 的值设为 value ,并返回 key 的旧值 (old ...

2020-03-02 09:44:58 159

原创 8.Hystrix

一、二、Hystrix的功能:(隔离、熔断、降级)1.使用命令模式将所有对外部服务(或依赖关系)的调用包装在HystrixCommand或2.HystrixObservableCommand对象中,并将该对象放在单独的线程中执行;3.每个依赖都维护着一个线程池(或信号量),线程池被耗尽则拒绝请求(而不是让请求排队)。4.记录请求成功,失败,超时和线程拒绝。5.服务错误百分比超过了阈值,...

2020-02-25 16:39:37 136

原创 Mysql并发问题

2020-02-20 10:39:56 248

原创 mysql的锁

锁分析

2020-02-19 09:12:33 97

原创 eg:导入券码

获取导入的券码,并校验: @Override public List<String> importCouponCode(MultipartFile file) { List<CouponCodeVO> couponCodeVOList = new ArrayList<>(); try { // 1.获取券码VO集合 if (file ==...

2020-01-17 14:51:19 256

原创 eg:券绑定导出

绑定导出:券服务中"导出绑定信息"调用common服务中的导出成Excel方法

2020-01-17 14:41:31 103

原创 6.2 Gateway网关

生命周期Spring Cloud Gateway同zuul类似,有“pre”和“post”两种方式的filter。客户端的请求先经过“pre”类型的filter,然后将请求转发到具体的业务服务,收到业务服务的响应之后,再经过“post”类型的filter处理,最后返回响应到客户端。过滤器Spring Cloud Gateway根据作用范围划分为GatewayFilter和GlobalFi...

2020-01-17 11:21:50 131

原创 7.Config Server

Config Server是一个可横向扩展、集中式的配置服务器,它用于集中管理应用程序各个环境下的配置,默认使用Git存储配置文件内容,也可以使用SVN存储,或者是本地文件存储。Config Client是Config Server的客户端,用于操作存储在ConfigServer中的配置内容。微服务在启动时会请求Config Server获取配置文件的内容,请求到后再启动容器。...

2020-01-17 10:38:50 175

原创 6.1 Zuul网关

使用Zuul之后的架构从架构图中可以看出,客户端请求微服务时,先经过Zuul之后再请求,这样就可以将一些类似于校验的业务逻辑放到zuul中完成。而微服务自身只需要关注自己的业务逻辑即可。当然在Zuul上层也可以搭建Nginx、F5等负载均衡设施。一.过滤器ZuulFilter过滤器是Zuul的重要组件。ZuulFilter是一个抽象类,其实现类需要实现4个方法:① shoul...

2020-01-17 10:05:21 132

原创 18.编号生成的大致规则

规则:1.code = InsertCodeUtil.getIncrSerial(字母所写+ORG+租户id+"-"+组织id);注:根据key获取Redis自增流水2.如果code是"0001"count = 当前租户+组织下数据的条数code = InsertCodeUtil.getIncrSerial(字母所写+ORG+租户id+"-"+组织id,count);3.date...

2020-01-13 18:44:30 1948

原创 将List集合导出为Excel

@Override @Transactional public com.chitai.saasplatform.base.framework.result.Result<String> exportApply2(Long id) { CouponApply couponApply = couponApplyDao.selectByPrimaryKey(id); // 记录导...

2020-01-13 16:57:38 2102 1

原创 9.Excel转List

将传入的Excel文件转为List集合ServiceImpl:public List<String> importCouponCode(MultipartFile file) { List<CouponCodeVO> couponCodeVOList = new ArrayList<>(); try { //...

2020-01-13 16:32:36 769

原创 17.分布式自增ID雪花算法

package com.chitai.saasplatform.base.util;import org.apache.commons.lang3.RandomUtils;import org.apache.commons.lang3.StringUtils;import java.net.*;import java.util.Enumeration;/** * 描述: T...

2020-01-10 17:32:57 414

原创 16.禁用双层for循环后的替代方法

判断两个集合/数组中是否有相同值的思路:1.将内层循环设为索引,new一个HashMap放入其中,遍历原先内层循环的集合或数组,然后map.push(),将key设为原先内层循环的值,将value设为12.判断时:原先的外层for循环不变,循环内部用if(map.get(外层循环数组或集合[i]) != null){ //进入了if内,则有相同的值,并且相同的值是:外层循环数组或集合[i]...

2019-12-25 14:46:46 2344

原创 15.mybatis逆向工程的使用

使用步骤及配置

2019-12-18 10:32:28 105

原创 14.技巧

1.Condition类的使用实现类似如下语句:select * from 表 where id=rule_id2.StringUtiles中的部分方法:StringUtils.isBlank() 判断字符串的值是否为空,包括null,空,空格,制表符回车符等StringUtils.substringBeforeLast(c...

2019-12-17 17:22:13 100

空空如也

空空如也

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

TA关注的人

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