自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 经典sql语句 行专列 统计部门男女人数 统计员工入职时常 根据出生日期计算年龄

1,SELECT ,COUNT() FROM dept d LEFT JOIN emp e ON d.deptno=e.deptno WHERE e.sal<4000 GROUP BY d.deptno查询部门工资低于4000的人数2,表数据create table tb(姓名 varchar(10),课程 varchar(10),分数 int)insert into tb val...

2019-10-16 13:29:18 9571 3

原创 MySQL表级锁和行级锁

简介相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);InnoDB存储引擎既支持行级锁( row-level locking),也支持表级锁,但默认情况下是采用行级锁。MySQL主要的两种锁的特性可大致归纳如下: 表级锁: 开销小,加锁快;不会出现...

2019-09-14 13:23:36 631

原创 springboot整合mybatis

好久没有自己搭建项目了,果然手生了不少,好多东西都忘记了,尤其是一些细节,今天记录一下,加深印象.1 . Invalid bound statement (not found): com.redismybates.mapper.EmpMapper.updateByPrimaryKey这个是在访问的时候报方法找不到缺少配置mybatis.mapper-locations=classpath*:mapping/*.xml这个配置就是告诉启动类mapper的位置,让他去找,**2.**显示sql语句

2020-11-29 12:18:22 179

原创 This application has no explicit mapping for /error, so you are seeing this as a fallback.

Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Mon Nov 23 12:11:42 CST 2020There was an unexpected error (type=Not Found, status=404).这个错误一般常见的有一下几种情况1 包的位子 controller包不在启动类下面2 访问路径问题3

2020-11-23 12:17:55 256

原创 spring cloud的负载均衡

负载均衡分为两类:服务端负载均衡如:nginx和f5客服端负载均衡有:ribbon今天主要讲的是ribbon,在springboot中Eureka继承了ribbon,所以在spring boot中我们可以直接使用ribbon,Ribbon负载均衡策略主要有 轮询(默认策略),权重和随机 ,重试,使用策略选着可以根据服务器的性能和其他需要来决定根据服务武器性能选择 当服务器性能相同或者相差不大可以选着轮询策略,也就是不用修改策略,服务器性能差别较大可以使用权重策略...

2020-11-13 12:46:55 185

原创 java设计模式单例和观察者

单例模式 spring中通过IOC反射机制获取bean默认就是单例模式的单例模式中主要有饱汉式和饿汉式饿汉式:public class Singlen {//私有构造private Singlen() {}//创建实例对象private static Singlen singlen1 = new Singlen();//对外提供获取方法public static Singlen getSinglen() { return singlen1;}}饱汉式:public clas

2020-11-12 13:13:57 216 2

原创 如何保证多线程执行顺序

例如package wyb.it;public class ThreadDemo2 implements Runnable {public static void main(String[] args) throws InterruptedException { // TODO Auto-generated method stub ThreadDemo2 tDemo2 = new ThreadDemo2(); ThreadDemo2 tDemo3 = new ThreadDemo2(); Th

2020-11-11 12:37:41 292

原创 springmvc

springmvc的传值需要注意的是当参数是url的一部分的时候要用PathVariable去接受参数例如://查看方式2:本方法将处理 /hello/view2/123 形式的URL@RequestMapping("/view2/{userId}")public String viewUser2(@PathVariable(“userId”) Integer userId,Map<String, Object> model) { //获取数据 User user=getUser

2020-08-04 17:48:31 104

原创 数据库的优化

数据库的优化可以从以下4方面1,首先 sql优化创建索引2,遵循3范式 表结构设计合理3,系统配置4,硬件在这个4个方面我们应该最关注前两个方面一 sql优化和创建索引(1) 对查询进行优化,应尽量避免全表扫描.下面的查询将导致全表扫描:<1>   select id from t where name like ‘%abc%’  若要提高效率,可以考虑全文检...

2020-03-21 16:22:06 106

原创 数据库的三范式

数据的三范式其实就是数据库设计规范第一范式(原子性 不可分割性)1、每一列属性都是不可再分的属性值,确保每一列的原子性2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据第二范式(和主键相关)就是要有主键,要求其他字段都依赖于主键第三范式(直接相关)数据不能存在传递关系,即没个属性都跟主键有直接关系而不是间接关系。像:a–>b–>c 属性之间含有这样...

2020-02-28 13:31:55 166

原创 数据库ACID和事物隔离级别

数据库4大特性 (ACID)Atomicity(原子性)原子性要求每个事物中的所有操作要么全部完成,要么就像全部没有发生一样:如果事物中的部分操作失败了,则整个事物事物失败了,结果就是数据库中的状态保持没变。原子性系统必须保证在各种情况下的原子性,包括主机断电、主机发生了错误、主机奔溃。对外界来说,一个提交了的事物看起来(通过事物对数据库产生的影响)是不可分的,一个失败了的事物,对外界来说就好...

2020-02-28 13:20:47 92

原创 redis详解

redis是一个nosql数据库,因为在运存上,它的读取速度快,也可以实例化到硬盘上.Redis 主要有两个应用场景:存储 缓存 用的数据;需要高速读/写的场合使用它快速读/写;redis的数据结构redis可以分为5中数据结构1.基本类型的string2.hash3.list(列表)4.set(集合)5.zset(有序集合)...

2020-02-22 18:24:31 100

原创 存储过程

存储过程存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。特点1、能完成较复杂的判断和运算2、可编程行强,灵活3、SQL编程的代码可重复使用4、执行的速度相对快一些5、减少网...

2019-12-16 09:43:29 118

原创 java的内存泄漏和内存溢出和垃圾回收

内存泄露由于java的JVM引入了垃圾回收机制,垃圾回收器会自动回收不再使用的对象,了解JVM回收机制的都知道JVM是使用引用计数法和可达性分析算法来判断对象是否是不再使用的对象,本质都是判断一个对象是否还被引用。那么对于这种情况下,由于代码的实现不同就会出现很多种内存泄漏问题(让JVM误以为此对象还在引用中,无法回收,造成内存泄漏)。垃圾回收机制不能回收不可达的对象,造成的资源浪费,严重的情...

2019-12-15 12:53:22 399

原创 SpringMVC中@pathVariable和@RequestParam注解的区别

SpringMVC中@pathVariable和@RequestParam注解的区别@pathVariable和@RequestParam的区别@pathVariable:是从路径中获取变量,也就是把路径当做变量@PathVariable绑定URI模板变量值@PathVariable是用来获得请求url中的动态参数的@PathVariable用于将请求URL中的模板变量映射到功能处理方法...

2019-12-11 09:11:43 155

原创 springboot的服务熔断

服务熔断 :介绍 在我看来 这是系统的自我保护机制。为了系统整体不受影响,切断有问题的部分。来保证系统整体的运行。就像生活中,身体某个部位被蛇咬伤,为了不扩散毒素,切除掉被咬部位。未完待续。。。。...

2019-12-08 12:45:19 980

原创 springboot项目maven老是加载不了jar包如SpringBootApplication找不到

困扰我好久了所以开贴记录一下解决办法我是清理了一些里面的杂乱的项目,就好了,具体的原因不太清楚,不过,应该事其他的项目造成的干扰。导致项目不能加载。...

2019-11-29 11:06:21 1499

原创 springboot整合mybatis和分页插件pagehelper

最近使用mybatis比较少,也没有用过springboot整合过mybatis及其分页插件,在这个过程中出现了好多问题,开贴记录一下,希望大家能够避免入坑。proterrties的配置,我这里没有贴出数据的配置#mybatismybatis.mapper-locations=classpath:com.wyb.mybaties.mybaties.mapper/*.xml#mybatis....

2019-11-27 16:49:39 165

转载 sql统计各部门的的男女员工数

统计各部门的的男女员工数SELECT d.dname,SUM(CASE WHEN sex = ‘女’ THEN 1 ELSE 0 END) 女,SUM(CASE WHEN sex = ‘男’ THEN 1 ELSE 0 END) 男 FROM com c LEFT JOIN dept d ON d.id = c.deptId GROUP BY deptId还有一个方法SELECT d.i...

2019-11-25 22:39:50 13329

转载 sql根据入职日期查询工龄

员工表,查询入职满5年的员工员工表,查询入职满5年的员工在这里插入图片描述部门表在这里插入图片描述SELECT * FROM COM WHERE entry<=DATE_SUB(SYSDATE(),INTERVAL 5 YEAR);原文链接:https://blog.csdn.net/qq_38490173/article/details/102583682...

2019-11-25 22:37:40 7998

原创 sql的行专列

行专列在实际开发中也是经常用到的表数据create table tb(姓名 varchar(10),课程 varchar(10),分数 int)insert into tb values(‘张三’,‘语文’,74)insert into tb values(‘张三’,‘数学’,83)insert into tb values(‘张三’,‘物理’,93)insert into tb va...

2019-11-25 22:30:16 386

原创 Spring bean的生命周期

我们先来了解一下bean的初始化和消费bean 初始化:有两种方式初始化:1.在配置文件中通过指定 init-method 属性来完成2.实现 org.springframwork.beans.factory.InitializingBean 接口bean 调用:有三种方式可以得到 bean 实例,并进行调用分别是普通构造方法创建、静态工厂创建、实例工厂创建bean 销毁:销毁有两种方...

2019-11-21 16:14:23 75

原创 springboot的微服务的高可用

1,eureka-service开启多个2,所有服务注册到每个eureka-service上面3,eureka-service之间相互注册4,清理无效节点配置在eureka-service的配置文件中如下配置关闭自我保护,并按需设置Eureka Server清理无效节点的时间间隔。eureka.server.enable-self-preservation=false#设置为fals...

2019-11-15 20:14:33 772

原创 springboot的负载均衡

springboot的负载均衡eueka作为注册中心负载均衡使用的是RibbonRibbon负载均衡的策略有轮询,重试,权重。默认轮询,这是它独特的算法去调用具体的服务。在消费者启动动类中加上@Bean@LoadBalancedpublic RestTemplate restTemplate(){return new RestTemplate();}上面我们提到了他的不同策略,...

2019-11-15 20:01:58 2067

原创 JAVA中的数据结构和底层原理

JAVA中的数据结构简述JAVA中常用的数据结构主要有这样几种分类:List:可存储相同的值(确切讲是a.equals(b)时,二者都可存储)。我们会挑选适宜连续存储的ArrayList和链式存储的LinkedList进行介绍。Set:不可存储相同值。挑选线程不安全的HashSet和线程安全的ConcurrentHashSet进行介绍。Map:存储key-value形式的数据。...

2019-10-16 14:20:36 602 1

原创 数据库事务和隔离级别

1)原子性(Atomicity)原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。就像你买东西要么交钱收货一起都执行,要么要是发不出货,就退钱。(2) 一致性(Consistency)一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也...

2019-10-16 13:12:20 84

原创 过滤器和拦截器的区别

先简单介绍一下它们拦截器 :是在面向切面编程的就是在你的service或者一个方法,前调用一个方法,或者在方法后调用一个方法比如动态代理就是拦截器的简单实现,在你调用方法前打印出字符串(或者做其它业务逻辑的操作),也可以在你调用方法后打印出字符串,甚至在你抛出异常的时候做业务逻辑的操作。过滤器:是在javaweb中,你传入的request、response提前过滤掉一些信息,或者提前设置一些参...

2019-09-12 09:21:20 126

原创 http的三次握手

http请求和响应,说白了就是计算机之间的问答对话。http请求是提问者,http响应是回答者。详细步骤如下图所示。1 建立连接 先解析DNS,把localhost变成ip(127.0.0.1),然后根据127.0.0.1和端口号8080(没有端口号则使用默认的端口)建立socket。也可以理解为通过“三次握手”建立TCP连接,确定通讯正常。2 发送请求命令 socket建...

2019-09-10 21:32:46 151

原创 Where和Having的区别

之前只知道having用在聚合函数之后,没有仔细想过原因,今天网上查询了一下下面以一个例子来具体的讲解:where和having都可以使用的场景1)select addtime,name from dw_users where addtime> 15000000002)select addtime,name from dw_users having addtime> 150...

2019-09-10 21:24:18 208

原创 char和varchr的区别

之前只知道一个定长和变长,今天突然被问到了 就知道这么多回答的结果显然对方不太满意,回来总结一下:区别一,定长和变长char 表示定长,长度固定,varchar表示变长,即长度可变。char如果插入的长度小于定义长度时,则用空格填充;varchar小于定义长度时,还是按实际长度存储,插入多长就存多长。因为其长度固定,char的存取速度还是要比varchar要快得多,方便程序的存储与查找;但...

2019-09-10 21:11:25 1286

原创 springboot的RestTemplate

RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。@TOCRestTemplate是Spring用于同步client端的核心类,简化了与http服务的通信,并满足RestFul原则,程序代码可以给它提供URL,并提取结果。默认情况下,RestTemplate默认依赖jdk的HT...

2019-08-31 14:26:39 184

空空如也

空空如也

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

TA关注的人

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