自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 内存分段详解

对于分段机制,要从Intel的微处理器的8086开始说起,刚开始内存空间比较小,内存寻址采用的是直接访问物理地址的方式。由于技术的发展,计算机做的事情越来越多,程序也越来越大,为了更大的内存空间,把地址总线扩展到20位。但是,对于内存设计,一个很尴尬的问题产生了,之前的设计CPU的ALU宽度只有16位,也就是说,ALU不能访问20位的地址空间,那时就设计了段机制来处理这种情况。为了坚持这种兼容性,386依然运用段机制,直至现在的64位处理器已经看不到段机制的身影。

2023-05-11 16:25:34 1083

原创 java常见的异常有哪些

下标越界异常:IndexOutOfBoundsExecption。字符串转换为数字异常:NumberFormatException。文件未找到异常:FileNotFoundException。方法未找到异常:NoSuchMethodException。空指针异常类型:NullPointerException。类型强制转换类型:ClassCastException。算数异常类:ArithmeticExecption。操作数据库异常:SQLException。输入输出异常:IOException。

2023-05-11 16:21:17 133

原创 访问权限修饰符private、default、protected、private

public(公共访问权限):这是一个最宽松的访问控制级别,如果一个成员(包括Field、方法和构造器等)或者一个外部类使用public访问控制符修饰,那么这个成员或外部类就可以被所有类访问,不管访问类和被访问类是否处于同一个包中,是否具有父子继承关系。default(包访问权限):如果类里的一个成员(包括Field、方法和构造器等)或者一个外部类不使用任何访问控制符修饰,我们就称它是包访问权限,default访问控制的成员或外部类可以被相同包下的其他类访问;

2023-05-11 16:20:41 473

原创 方法重写和方法重载的区别总结

两小”指的是子类方法返回值类型应比父类方法返回值类型更小或相等,子类方法声明抛出的异常类应比父类方法声明抛出的异常类更小或相等;“一大”指的是子类方法的访问权限应比父类方法的访问权限更大或相等。,称之为方法重载,至于方法的其他部分,如方法的返回类型等不作为方法重载判断的依据。方法重载之后,具体要调用哪个重载的方法,由方法的参数类型或个数决定(自动匹配)。方法重写是指在一个子类里面,有一个方法与父类(的方法名字、参数个数、参数的类型)完全一样的方法,称之为子类的这个方法重写了父类的方法。

2023-05-11 16:19:29 125

原创 final关键字介绍

final 修饰符,意思是最终的、不可修改的,最见不得变化,用来修饰类、方法和变量,有以下特点:

2023-05-11 16:18:08 35

原创 static关键字详解

static的真正作用就是用于区分Field、方法、内部类、初始化块这四种成员到底属于类本身还是属于实例。在类中定义的成员,有static修饰的成员属于类本身,没有static修饰的成员属于该类的实例。static修饰符可以修饰属性(为静态属性),方法(为静态方法),和代码块(为静态代码块)。

2023-05-11 16:17:36 33

原创 java读取Excel文件的数据组成insert sql并输出txt

/modify 开始行数,为页面的行数。//modify 最大的列位置。

2023-04-23 17:50:07 668

原创 Windows定时备份bat脚本

filepath=DATA_PUMP_DIR的路径。将以下脚本复制到.bat文件中,双击运行即可。userpass=用户密码。-7表示删除七天之前的文件。username=用户名。

2023-04-23 17:48:47 539

原创 数据库导出导入expdp/impdp

说明:impdp 新库用户名/新库密码@DB名称) remap_schema=原来库的用户名:新库的用户名 directory=目录地址 dumpfile=要导入的文件名.DMP logfile=导入时的日志文件.log。说明:expdp 用户名/密码@远程计算机地址/端口/DB名称 directory=要导出的目录 dumpfile=文件名.dmp logfile=日志名.log。首先创建一个新用户,保证和导出dmp文件时的用户名,密码以及对应的表空间名相同。,目录地址不能为空。

2023-04-23 17:47:15 1504

原创 where条件后面什么情况下不会用到索引

例如where phone=123456,数据库优化器会对条件语句进行一些转换,如可能会换成:To_number(phone) =123456也就是说,会在phone字段前面隐性的加入一个函数,把phone转换为数字型。组合索引(name, age, sex),where age=18 and sex=1 无效,where sex = 1 无效,where age=18 and name=‘小红’ 有效,where name like ‘小%’ 有效。,对索引的字段使用内部函数,索引也会失效。

2023-04-23 17:44:21 702 1

原创 = =和equals的区别

Integer是包装类,每声明一个Integer i = xxx 都会创建一个对象,所以当使用 == 比较时,应该返回 false,而在实际不同的数值比较时有时返回TRUE,有时返回FALSE,这是为什么呢?JVM中有一个区域叫字符串常量池,它的作用是提高性能以及节约存储空间,相当于是一个缓冲池,我们通常用 String = " " 来定义一个字符串,如果常量池没有这个字符串,就先在常量池中生成一个字符串常量,如果常量池有这个字符串,直接返回引用。,对于基本类型来说,==比较的是值;

2023-04-23 17:42:01 39

原创 A COM exception has been encountered!At Invoke of: UploadInvoiceAutoDescription:80010105/服务器出现意外情兄

重启一下电脑或者重启一下服务就好了。

2023-04-23 17:39:59 243

原创 设计模式之建造者模式案例详解

盖房项目需求需求描述:需要建造房子:这一过程为:打桩、砌墙、封顶。房子有各种各样的,比如普通房,高楼,别墅,各种房子的过程虽然一样,但是要求不要相同的。请编写程序,完成需求。传统方式解决盖房需求public abstract class AbstractHouse {    public abstract void buildbasic();//打地基  &nb

2020-07-23 14:47:49 169

原创 原型模式案例详解-浅拷贝与深拷贝

克隆羊问题现在有一只羊,姓名为:tom,年龄为:1,颜色为:白色,请编写程序创建和tom羊属性完全相同的10只羊。传统方式解决克隆羊问题public class Sheep { private String name; private int age; private String color; public Sheep(String name, int age, String color) { this.name = name; t

2020-07-22 10:08:01 191

原创 工厂模式案例详解

简单工厂模式看一个具体的需求看一个披萨的项目:要便于披萨种类的扩展,要便于维护。披萨的种类很多(比如GreekPizza、CheesePizza等);披萨的制作有prepare,bake,cut,box;完成披萨店订购功能。使用传统的方式完成//把Pizza类做成抽象类public abstract class Pizza { private String name;//名字 //准备原材料,不同的披萨不一样,因此,我们做成抽象方法 public abstra

2020-07-21 13:54:30 309

原创 单例模式详细案例

单例模式认识单例模式什么是单例模式单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如Hibernate的SessionFactory,它充当数据存储源的代理,并负责创建Session对象。SessionFactory并不是轻量级的,一般情况下,一个项目通常只需要一个SessionFactory就够了,这时就会使用到单例模式。3.1.2 单例模式的八种方式单例模式有八种方式:1. 饿汉式(静态常量);2.

2020-07-19 14:32:53 400

原创 依赖、泛化、实现、关联、聚合、组合

类之间的关系有:依赖、泛化、实现、关联、聚合、组合。类图的六大关系依赖依赖关系是指类中用到了对方。可以是“类的成员属性”、“方法的返回类型”、“方法接收的参数类型”和“方法中使用到的类”。对应的类图:public class PersonServiceBean { private PersonDao personDao; public void save(Person person) { } public IDCard getIDCare(Integer pe

2020-07-18 20:04:48 2711

原创 设计模式的七大原则详解

1 认识设计模式1.1 什么是设计模式所谓设计模式,就是对经常出现的软件设计问题的成熟解决方案。很多人把设计模式想象成非常高深的概念,实际上设计模式仅仅是对特定问题的一种惯性思维。笔者见过一些学员喜欢抱着一本设计模式的书研究,以期成为一个“高手”,实际上设计模式的理解必须以足够的代码积累量作为基础,最好是经历过某种痛苦,或者正在经历一种苦痛,就会对设计模式有较深的感受。1.2 设计模式的目的编写软件的过程中,程序员面临着来自耦合性、内聚性以及可维护性、可扩展性、重用性、灵活性等多方面的挑战,设计模

2020-07-17 14:28:06 195

原创 【IDEA】创建maven项目,webapp没有被标识,无法识别

问题描述新建maven项目模块后,webapp目录未被标识,也就是没有小蓝点的图标显示。解决方法点击“File”下的“Project Strucure”,在弹出的框中,选中“Modules”下的项目名称,也就是“demo1”,点击“+”号,在弹出框中选择“Web”。修改“Name”为“webapp”,接下来配置web的路径,上方的路径选择到“web.xml”为止,下方的路径选择到“webapp”为止,最后保存就可以了。...

2020-07-13 17:55:11 3760

原创 新手安装配置Git简洁教程五步走

第一步,下载安装git打开 [git官网] https://git-scm.com/,下载git对应操作系统的版本。所有东西下载慢的话就可以去找镜像!官网下载太慢,我们可以使用淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows/下载对应的版本即可安装!如何安装?无脑下一步即可!安装完毕就可以使用了!安装成功后在开始菜单中会有Git项,菜单下有3个程序:任意文件夹下右键也可以看到对应的程序!Git Bash:Unix与Linux风格的命令行,

2020-06-28 19:16:21 300

原创 当我们创建HashMap时,底层做了什么

jdk1.7中的底层实现过程(底层基于数组+链表)在我们new HashMap()时,底层创建了默认长度为16的一维数组Entry[ ] table。当我们调用map.put(key1,value1)方法向HashMap里添加数据的时候:首先,调用key1所在类的hashCode()计算key1的哈希值,通过key1的hash值与数组的最大索引进行位运算以后,得到了在 Entry数组中的存放位置:如果此位置上的数据为空,此时的key1-value1添加成功。如果此位置上的数据不为空(意味着此位置已经

2020-06-27 11:12:13 172

原创 互联网公司的架构演进过程

单体应用架构从单体应用架构发展到SOA架构,再到微服务架构,应用架构经历了多年的不断演进。初生​在Web应用程序发展的早期,大部分的Web工程是将所有的功能模块打包到一起部署和运行。在单体应用中,所有这些模块都集成在一起,这样的系统架构就叫做单体应用架构。单体应用是最早的应用形态,开发和部署都很简单。典型的技术是LAMP,即Linux、Apache、Mysql、PHP,但是PHP的...

2020-02-06 21:13:39 227

原创 现在前端为什么用axios请求,而不用ajax请求?

1)Jquery AjaxJQuery ajax是对原生XHR(XMLHttpRequest(XHR)是最早出现的发送后端请求的技术,隶属于原始js中)的封装,除此以外还增添了对JSONP的支持;真的是用过的都说好。但是随着react,vue等前端框架的兴起,jquery早已不复当年之勇。Ajax本身是针对MVC的编程,不符合现在前端MVVM的趋势。很多情况下我们只需要使用ajax,但是却...

2019-12-06 21:59:12 5564

原创 前端验证码和后端验证码有什么区别

前端验证码是由前端浏览器生成的验证码。填完验证码之后,先检查验证码正确与否,如果正确的话发送axios异步请求,调用后端接口。安全性较低。后端验证码是由后端生成的验证码。当用户打开登录页面后,浏览器会向服务器发送请求并携带生成的令牌tolken,服务器随机生成验证码验证码,并将验证码和tolken的对应关系存储在redis缓冲中,之后会在前端动态的生成一张验证码图片。当用户输入验证码并点击...

2019-12-06 21:55:47 6130 4

原创 maven的模块管理功能

如何创建父模块步骤①新建一个空白工程②新建一个maven项目模块,该模块不选任何骨架③配置pom.xml文件```java<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www...

2019-12-01 22:16:28 212

原创 Nginx反向代理

文章目录反向代理是什么举个栗子1、前期准备工作①创建一个SpringBoot项目②配置application.properties文件③配置pom.xml文件④设置多例启动2、开始测试3、编写controller层4、修改nginx.conf文件4、查看效果反向代理是什么在Java设计模式中,代理模式是这样定义的:给某个对象提供一个代理对象,并由代理对象控制原对象的引用。代理简单来说,就是如...

2019-12-01 20:44:50 133

原创 Bean

什么是spring中的Bean当初在开发JAVA语言的时候,就是不知道该取什么名字。后来,在程序员中,他们经常喝一种咖啡, 叫“爪洼”(音译),就取名为JAVA。这种咖啡,是用“爪洼豆”磨出来的。所以,他们给用“豆”来命名。就是Bean。Bean是Java中基本的代码重用单位,是遵守一定约定的Java类。在Spring中,Bean就是普通的Java类,由Spring IoC容器实例化、组装、...

2019-11-30 15:01:40 200 1

原创 面向切面

面向切面是什么AOP即面向切面编程。让你只专注于核心业务功能的实现,而不用花太多精力去管像日志、事务等各个项目通用的功能。把非核心的业务逻辑抽象成一个切面,在程序运行过程中自动注入该功能,这就是面向切面,其底层是通过动态代理的机制来实现的,支持jdk和cglib两种。将分散于业务代码各处的日志、事务、安全等功能代码抽离出成为一个单独的工具组件,在Spring的配置中将其进行声明为一个功能切...

2019-11-30 14:54:31 2492

原创 Spring——第二节控制反转(IOC)

怎么理解控制反转IOC即控制反转,通常我们在项目当中需要手动new去创建对象,用这种方式代码的耦合度较高,不利于对对象的管理。现在我们将对象的创建权利反转给spring容器,这就是控制反转。当某个类A需要类B对象时,如果类B已经交给了Spring容器来管理,那么程序运行到类A需要类B时,Spring容器就通过依赖注入的方式,将类B对象注入到类A中协助完成业务功能(spring容器在实例化对象...

2019-11-29 23:40:20 140

原创 Spring——第一节Spring简介

文章目录什么是框架什么是Spring什么是容器创建第一个Spring小例子1、用IDEA创建一个maven项目2、添加spring库依赖3、创建Bean类4、添加Bean的xml装配文件5、创建主方法类6、运行应用程序什么是框架框架(Framework)是一个框子也是一个架子,框指其具有约束性,架指其具有支撑性, IT语境中的框架,特指为解决某一个开放性问题而设计的具有一定约束性的支撑结构。在...

2019-11-29 22:56:02 120

空空如也

空空如也

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

TA关注的人

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