自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 YumRepo Error: All mirror URLs are not using ftp, http[s] or file.centos6 yum失败!

原因:centos6的默认源在2012年-12月左右被官方搞掉了,这个问题困扰了我好久。下列是错误详情[root@c8-20 ~]# yum makecacheLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfileYumRepo Error: All mirror URLs are not using ftp, http[s] or file. Eg. Invalid release/repo/ar.

2021-03-25 02:13:20 148

原创 Mybatis-应用分析与最佳实践

Jdbc:当java需要访问数据库数据交互时,一共需要几步进行连接。1.在Pom文件引入Mysql驱动依赖2.orm框架:因为最早时候使用的全自动的orm框架,使用早年的hibernate,会将所有表和类进行完全映射,包括底层也有一些优化(一级缓存,二级缓存)等,但因为在业务比较复杂的时候无法进行对sql优化,后出现了mybatis框架,最早时候叫ibatis,从2010年后更名为Mybatis。Mybatis作者也加入了英雄联盟的团队。...

2021-03-09 15:49:35 125 1

原创 设计模式常见问题和总结

设计模式可以分为哪几类,分别有哪些设计模式?(10分)设计模式分为有创建型,结构型,和行为型。创建型:单例设计模式,工厂设计模式,抽象工厂模式,建造者模式,原型模式结构型:代理模式,组合模式,享元模式,适配器模式,桥接模式,门面模式,装饰器模式,行为型:委派模式,策略模式,模板方法模式,观察者模式,访问者模式,责任链模式,迭代器模式,中介模式2.设计模式有哪些设计原则?(10分)(1)单一职责,一个类只负责一项自己业务,不做其他类的改变操作(2)开闭原则,对修改关闭,对扩展开放(3)依赖.

2021-02-28 22:38:46 581

原创 设计模式之模板方法

模板模式,是流程化的一种方法模板,作用在于规范流程,能复用父类的共用方法,减少代码臃肿,可以通过内置钩子方法修改范式逻辑。如jdbc中的创建connection等都是用的模板方法.

2021-02-28 01:00:49 58

原创 设计模式之责任链模式

顾名思义,责任链路,其意思就是在执行整体方法的时候进行拆分不同元素和类来执行部分功能,当执行完无异常当前模块逻辑时则传导至下一个元素执行,直到整体逻辑全部执行完毕。优点是维护容易,对于部分功能的拆分和增加只需要在链路追加和删除即可,但弊端在于链路过长时会导致性能下降,并且某段链路出现循环异常时会导致系统崩塌。...

2021-02-28 00:42:39 130

原创 设计模式之策略模式

于订阅-发布,源监听,实现了一对多的依赖关系。指一个元素可以被多个观察者类和对象监听,一旦被观察者发生了改变那么其观察者会自行进行发生改变。

2021-02-28 00:39:50 69

原创 设计模式之桥接模式

独立分离了抽象接口和具体实现类,让两者独立扩展,从而又相互依存。主要构成:抽象(Abstraction),修正抽象(RefinedAbstraction) ,实现(Implementor),具体实现(Concreteimplementor),因为没有用多继承,选用组合,从而遵循了开闭原则和里氏替换原则和依赖倒置原则,是个非常不错的设计模式。缺点是逻辑过于抽象不易理解。...

2021-02-28 00:38:41 83

原创 设计模式之适配器模式

适配器模式主要针对接口不匹配导致无法一起工作的两个类能进行并存工作。适配器实现构成有:目标角色,源角色,适配器三者组成。实现方式有类适配器,对象适配器和接口适配器,三者前两者针对类本身和传入对象本身的兼容,第三者则更为兼容。拥有诸多兼容方法,不限定某一兼容方法,但会出现许多空的实现方法,代码略显臃肿。属于结构型设计模式。...

2021-02-28 00:34:36 62

原创 设计模式之组合模式

组合模式在于他的整体-分解。针对树形结构进行拆分整合。由根节点,树枝节点和叶子节点组合。每个个体可以组成成为父子关系,也可以独立存在。组合又分为透明组合模式和安全组合模式,透明组合模式是根节点定义的方法旗下节点都要实现接口,代表着子类和父类拥有者共同的方法,安全组合模式相反,只有部分公共方法需要实现,具体个体的实现都有树枝节点和叶子节点实现。...

2021-02-28 00:29:27 95

原创 设计模式之享元模式

享元模式就是共享对象池,在面临同一个数据反复创建对象时候可以使用享元模式,享元模式状态分为内部状态和外部状态两种,内部状态是不会发生改变,外部状态会根据周期发生改变。使用享元模式创建对象池从而达到减少对内存的消耗目的。属于结构型设计模式ba...

2021-02-27 20:50:41 80

原创 设计模式之装饰器模式

装饰器模式:指在不修改原有对象基础上,增加额外功能属性,提供了更有弹性的扩展功能。看起来虽然很像代理模式但两者层级不同,代理模式虽然也是增强但只是对业务本身增强,但装饰器模式是对类的本身进行一个增强。例如小明需要租房,代理就是中介帮忙处理,你只需要付钱即可,联系房东获取性价比最高的房源都由代理负责。而装饰者则更偏重对象本身的增强,相当于小明自己新增了一个寻找房源和联系房东的增强属性。属于结构性设计模式public abstract class BatterCake { public abstrac

2021-02-23 02:39:48 194 1

原创 设计模式之门面设计模式

门面模式:将所有执行的方法同意归纳到一个总类中执行,调用者不需要考虑其他业务实现只要调用总接口即可,最后再由总接口统一按照业务调用其他核心业务代码,提高了系统以来,松散耦合,遵循了最少知道原则。缺点是不符合开闭原则。属于结构性设计模式。public class Drugstore { //采购药品 public void purchaseMedicine(Medicine medicine){ if(medicine.getCount()<3){

2021-02-23 02:37:19 200 1

原创 设计模式之代理设计模式

不需要关心核心业务代码统统由代理类进行处理,并且对业务进行一个增强。常见spring的aop业务范围。其中包含静态代理和动态代理,静态代理需要手动传入被代理类和手动执行被代理的方法局限性较大。动态代理类可以自动调用被代理的类和被代理的方法,兼容性更强,动态代理中又分为jdk方式和cglib方式,两者区别在于调用方式不同,前者是通过实现某接口,统一代理接口下的实现方法,约束性更强。cglib是集成了被代理类并且重写了被代理类的方法,因cglib中生成的fastClass中的index可以直接定位方法位置,不需

2021-02-23 02:35:45 58

原创 设计模式之建造者设计模式

建造者设计模式功能上很像元素的set方法,他实现了链式编程,使得一个复杂对象的构建过程和他的表示分离,属于创建型设计模式。public class Student { Student student = new Student(); private String id; private String clazz; private String age; private String number; public Student appentId (Str

2021-02-23 02:22:14 139

原创 设计模式之原型模式

原型模式是指构建对象时候不需要考虑对象的构造函数和数据,从原有基础之上复刻出来一个新的对象并且保留原有的数据。具体原型模式又分为两种1.深克隆 2.潜克隆两者区别?浅克隆只复制基本数据类型,引用数据类型会指向同一个地址。深克隆更消耗性能,它需要通过序列化和反序列化将类重新写入到内存中实现所有数据都独立的效果。原型模式本身对单例模式有冲突,不能同时存在,因为两者是互斥的。public class CloneStudent implements Cloneable,Serializable {

2021-02-23 02:01:57 76 1

原创 设计模式之单例设计模式

单例设计模式单例设计模式主要有饿汉式,懒汉式,注册式,容器式几种。(1)饿汉式由于会在加载时候就存入到内存,会对内存浪费,不适合使用在一些批量所有类进行加载时候使用,例如spring加载所有工程项目类。如只有几个类的时候可以使用。(2) 懒汉式懒汉式相比饿汉式更节省资源内存,但如果不做任何控制会出现线程不安全。因为在判断单例一瞬间多个线程进入后会创建多次实例,出现问题。解决方案:<一>,加锁(syncronized),对创建方法时候进行加入syncronized进行阻塞,但弊

2021-02-21 22:48:07 104

原创 设计模式之工厂模式

工厂设计模式简单工厂工厂方法抽象工厂(1)简单工厂目的在于调用者不需要关心创建过程,全部交给工厂即可,如需要任何产品可以直接调用工厂进行生产.但弊端在于违背了单一职责,所有产品都由一个工厂进行创建。(2)工厂方法模式在简单工厂基础之上进行了一次升级和分类,再次创建产品时候可以根据不同的归类产品工厂进行创建,如之前造布厂需要生产娃子床单被罩,现在有了专门的娃子生产车间,床单生产车间和被罩生产车间。以及创建文档工厂,pdf的工厂专门创建自己的类型文档,word和excel同理。但是弊端会产生出

2021-02-21 22:34:28 189 1

原创 设计模式之七大软件设计原则

(1).开闭原则:对修改关闭,对扩展开放。相对于以往代码,在进行逻辑更改和变动时候需要对底层代码逻辑进行修改,当产品和项目进行长期迭代后这种频繁操作会对线上测试和版本稳定造成非常大的影响,故保持开闭原则会大大减少代码修改对其他系统造成的影响。(2)单一职责:每个接口和方法只做一件事,在代码逻辑中尽量保持每个类只做一件事情,避免出现批量的if else判断,每次追加都要修改代码,和开闭原则有点相互对应。但一味追求单一职责会导致代码的类过多,在设计当中应按需求和场景进行判断。(3)依赖倒置原则:,通过

2021-02-21 22:22:10 80

原创 Spring核心底层构造

因为最近研究Spring原理和练习原生手写Spring,许多类和类之间调用被搞混了,特此在此记录一下。如有错误还请更正,如有帮助欢迎转载Spring IocIOC学名叫控制反转,其实粗略理解就是利用了Spring(反射机制) 完成了自动创建对象等.ioc处理过程主要为三步,分别是定位,加载,注册。ApplicationContext的构成:集成了GPDefaultListableBeanFactory类并实现了GPBeanFactory接口,它的构造方法就是将配置信息传入进来,给后续的Refresh

2021-01-21 09:26:25 185 8

原创 架构师内功修为-设计模式之设计介绍

前言:内容定位-不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题,设计模式最重要的是解耦。设计模式天天都在用,但自己却无感知。我们把设计模式作为一个专题,主要是学习设计模式是如何总结经验的,把经验为自己所用。学设计模式也是锻炼将业务需求转换技术实现的一种非常有效的方式。为什么要从设计模式开始?1、写出优雅的代码2、更好地重构项目3、经典框架都在用设计模式解决问题设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。根据目的来分根据模式是用来完成

2020-07-22 13:37:34 86

转载 解决pom文件第一行报错(unknown)-亲测有效

问题:Eclipse导入maven项目时,或者新建一个springboot项目时,pom.xml文件第一行报错,没有错误信息提示,就一个Unknown,但是项目可以正常运行。 如下图:在这里插入图片描述解决方案:方案1.看有的博客说是由于网络原因,导致有的包没有下载,在有网络的情况下,勾选强制更新。在这里插入图片描述但是我的问题依旧没有得到解决。方案2:(以下方案亲测可用)原因:由于2.1.5.RELEASE 升级到了3.1.2 造成的问题,有些IDE插件不兼容的问题造成的。

2020-07-10 11:13:54 836

原创 IAAS, PAAS, SAAS区别----1分钟助你理解.

之前一直总听人说这三个云的概念,今天想彻底了解一下三者区别,看了下网上诸多信息都是照本宣科。想看官方的一搜一片,我这里就不赘述那些官方解释了,就概括几句话作为总结:三者区别:如果您是开发人员:IaaS就是台服务器。PaaS就是Tomcat加MySQL。SaaS就是花几千块钱买一套的加个Logo就能开业的电商网站。如果您是年轻人:IAAS:阿里云,租服务器(要多少资源租多少就行)PAAS:微信小程序(给你一个平台,你自己开发想要的应用)SAAS:快手,快播,百度任何直接拿来.

2020-06-03 15:01:20 364

原创 多线程4---多线程之间实现通讯原理

多线程之间如何实现通讯什么是多线程之间通讯? 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 画图演示多线程之间通讯需求 需求:第一个线程写入(input)用户,另一个线程取读取(out)用户.实现读一个,写一个操作。 代码实现基本实现共享资源源实体类 class Res { public String userSex; public String userName; }...

2020-06-02 10:35:34 165

原创 多线程3---Java内存模型以及Volatile与Synchronized区别

Java内存模型共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存储了该线程以读/写共享变量的副本。本地内存是JMM的一个抽象概念,并不真实存在。它涵盖了缓存,写缓冲区,寄存器以及其他的硬件和编译器优化。从上图来看,线程A与线程B之间如要通信的话,.

2020-05-28 14:01:35 88

原创 多线程2---线程安全以及锁机制

并发编程之多线程线程安全什么是线程安全?为什么有线程安全问题?当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。案例:需求现在有100张火车票,有两个窗口同时抢火车票,请使用多线程模拟抢票效果。代码: public class ThreadTrain implements Runnable { private int trainCount = 100; ...

2020-05-28 13:57:13 146

转载 多线程1---java多线程入门以及简单应用

多线程快速入门线程与进程区别每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。使用线程可以把占据时间长的程序中的任务放到后台去处理,程序的运行速度可能加快,在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下可以释放一些珍贵的资源如内存占用等.

2020-05-25 17:30:46 141

原创 有关XWPFWordExtractor报错信息原因

错误信息: The type org.apache.xmlbeans.XmlException cannot be resolved. It is indirectly referenced from required .class files本来想做一个poi完成word文档读取的信息程序,结果发现导入 poi-ooxml-schemas-3.8-20120326.jar poi-sc...

2018-09-05 10:21:48 2905 1

原创 关于hibernate的异常Caused by: org.hibernate.hql.ast.QuerySyntaxException: Table is not mapped错误分析

最近新入职一家公司,用的是2.X版本的hibernate,由于长时间没用这个技术了有些生疏了,所以用起来有些不太熟练,导致了下面一些列错误,经过排查希望能给小伙伴掉坑里的一些帮助。 错误: Caused by: org.hibernate.hql.ast.QuerySyntaxException: Cltest is not mapped [select cl from Cltest cl w...

2018-08-29 14:28:27 4435

空空如也

空空如也

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

TA关注的人

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