自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java xml解析

DOM解析DOM解析方式,将所有的xml文件内容加载到内存中优点:获取数据简单缺点:文件大时占用大量内存常用类和方法javax.xml.parsers.DocumentBuilderFactorystatic DocumentBuilderFactory newInstance() 新建一个DocumentBuilderFactory实例DocumentBuilder newDocumentBuilder() 创建一个DocumentBuilder实例javax.xml.parsers.Do

2020-07-14 00:27:46 275

原创 Java复习

枚举枚举基本设置public class TestMB { public static void main(String[] args) { Week day = Week.Tue; System.out.println(day); // Tue // ordinal() 获取下标值,改变位置会受影响 System.out.println(day.ordinal()); // 2 System.out.printl

2020-07-01 00:25:16 237

原创 BigInteger源码学习

主要是String转int[]/** * Translates the String representation of a BigInteger in the * specified radix into a BigInteger. The String representation * consists of an optional minus or plus sign followed by a * sequence of one or more digits in the specifi

2020-06-30 23:36:01 819

原创 队列的实现和原理

普通队列队列是一种先进先出(FIFO)的数据结构每次出队都从head中获取第一个,每次入队都是添加在tail的后面。队列可以使用动态数组和链表来实现import java.util.ArrayList;import java.util.List;public class Queue<E> { private List<E> list; pu...

2019-10-27 00:05:39 809

原创 字符串匹配KMP算法

之前的字符串匹配使用暴力拆解的办法,使用两个for循环来慢慢匹配,最坏时间复杂度为O(n*m)而KMP算法利用已经比较过的那一部分字符串,减少比较的次数AB是重复出现的内容,而且已经比较过,是在目标字符串中存在的再从对应的位置进行开始比较,减少重复比较的次数KMP算法就是利用已经比较过的内容,有重复的直接移动到重复的位置,没有重复的,直接比较下一个而字符串位置的移动是根据部分匹配表来...

2019-10-20 21:51:01 272

原创 双向链表的实现和原理

双向链表双向链表与链表的区别在于,双向链表有指向前一个节点的指针,可以获取到前一个节点。获取值的时候,可以判断index下标所在的位置,从而决定从首节点开始查找还是从尾节点开始查找public class LinkedList<E> { private static final int ELEMENT_NOT_FOUNT = -1; private int s...

2019-10-20 21:45:16 279

原创 ArrayList动态数组的实现原理

数组在内存中,是一串连续的内存,针对查找某个下标的元素的情况,时间复杂度为O(1)但是数组在创建时,就要确定需要申请多少内存,保存的元素数量有限。动态数组的原理就是当数组的元素达到容量上限是,重新申请一片更大的内存,将原来的数组元素迁移到新的地址空间上。动态数组通过扩容的形式,使数组的容量不受限制。public class ArrayList<E> { private...

2019-10-20 16:39:22 563

原创 单链表的原理与实现

单链表在内存中不像数组那样,拥有连续的内存空间,内存空间是碎片化的单链表主要是在每个节点中保存下一个节点的内存地址,便于获取下一个节点的内容添加的时候,直接找到要添加的位置的前一个节点,然后将引用指向要添加的内容例如在下标为1的位置添加一个59只需要找到下标为0的位置的节点,将该节点的下一个引用指向新的节点,然后新的节点的下一个引用指向原来下标为1的节点。不需要像动态数组那样,将后面...

2019-10-19 22:59:18 714

原创 axios的使用

axios是基于Promise的HTTP库,适用于各种前端框架。不同于普通http请求后的回调,Promise有更好的操作性。axios可以自动转换JSON数据客户端支持防御XSRF攻击axios的简单使用安装npm install axios --save执行get请求 axios.get("http://localhost:8080/user?id=1").then(re...

2019-08-07 23:58:17 274

原创 JavaScript回调函数

回调函数是一种被作为参数传递给另一个函数的高级函数。回调函数会在其他方法函数方法被调用,也可能不会触发调用。在JavaScript中,经典的回调函数有很多,像Array中的map,forEach,都会传入函数和回调函数,这就是回调函数的用法用forEach作为例子const arr = ['apple', 'peer', 'origin'];arr.forEach(function(v...

2019-06-09 20:16:52 268

原创 mybatis逆向工程

mybatis有个强大的功能,自动生成实体层,dao层,映射文件那就是逆向工程啦逆向工程的操作也简单现在就开始吧首先引入依赖 <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifac...

2019-04-14 12:54:11 145

原创 springboot中使用mybatis封装phoenix

使用hbase api来访问hbase的时候,如果字段太多,写起来的是很枯燥的使用phoenix访问hbase,可以支持sql,相当于jdbc。用mybatis封装phoenix后,可以自动管理字段的映射,在一表超级多字段的情况下,可以减少工作量。mybatis封装phoenix只需要一个配置类就可以搞定了本项目是使用maven构建的这里使用的是mybatis-plus首先添加依赖 ...

2019-04-06 00:43:23 1958 1

原创 解决springboot跨域问题

在使用springboot做前后台分离时遇到无法跨域请求的问题添加一个config文件配置即可/** * 解决跨域、session不一致 */@Configurationpublic class WebMvcConfig extends WebMvcConfigurerAdapter { @Override public void addCorsMappings(Co...

2019-03-27 18:54:59 214

原创 快速搭建maven下的ssm web工程

添加pom.xml依赖信息 &lt;dependency&gt; &lt;groupId&gt;org.springframework&lt;/groupId&gt; &lt;artifactId&gt;spring-webmvc&lt;/artifactId&gt; &lt;version&gt;4.3.7.RELEASE&lt;/version&gt; &

2019-01-16 19:15:43 251 1

原创 一步一步用maven创建ssm的web项目

使用maven来创建SSM的web项目第一步创建一个maven工程创建一个空的maven工程选择用jar后面把它转化成web工程创建成功后选择项目右键-&amp;amp;gt;Properties-&amp;amp;gt;Project Facets点击箭头指向的位置点击选择Dynamic Web Module再选择下面的输入创建webapp的路径,选择创建web.xml文件,一直点击ok就可以了这...

2019-01-16 19:00:44 369

原创 No qualifying bean of type 'XXXXX' available

在spring中,出现bean无法加载到的情况org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘XXXXX’ available: expected at least 1 bean which qualifies as autowire candidate. D...

2019-01-16 17:01:58 3534 1

原创 SSM解决跨域问题

创建一个类实现javax.servlet.Filter接口public class MyCORSFilter implements Filter{ @Override public void destroy() { } @Override public void doFilter(ServletRequ...

2019-01-11 19:34:05 1770

原创 SSM项目请求api时报No converter found for return value of type: class com.ma.bean.XXX错误

在请求时发生如下错误:java.lang.IllegalArgumentException: No converter found for return value of type: class com.ma.bean.XXXat org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMeth...

2019-01-11 19:16:18 399

原创 idea怎么import导入maven工程

打开idea,选中ipmort project选中项目的pom.xml文件其他的都选择默认的选项,全部选择完毕后等待jar的加载就好了

2019-01-08 17:17:48 1345

原创 设计模式

常用的设计模式有23种,按特点分为3类:创建型、结构型、行为型创建型功能:将系统所使用的具体类的信息封装起来;隐藏类的实例是如何被创建和组织的。外界对于这些对象只知道它们共同的接口,而不清楚其具体的实现细节。作用:封装创建逻辑,不仅仅是new一个对象那么简单;封装创建逻辑变化,客户代码尽量不修改,或尽量少修改。单例模式(Singleton Pattern):一个类只有一个实例,而...

2018-12-03 13:21:07 774

原创 排序算法

冒泡排序原理:比较两个相邻的元素,将值大的元素交换至右端。思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。冒泡排序的优点:每进行一趟排序,就会少比较一次,因为每进行一趟排序都会找出一个较大...

2018-12-03 13:10:34 216

原创 多线程基础

线程进程进程是操作系统结构的基础;是一次程序的执行;是一个程序及其数据在处理机上顺序执行时所发生的活动;是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位什么是线程?线程可以理解成是在进程中独立运行的子任务实现多线程的主要两种方式:一种是继承Thread类,另一种是实现Runnable接口(全部有4种,这里只讲解最常用的两种)继承Thread类,重写run方...

2018-11-04 16:05:21 291

原创 SpringBoot 采用自定义注解方式管理多数据源和事务

使用aop方式来实现功能获取依赖的jar包,maven配置文件。使用MyBatis 管理数据库 org.springframework.boot spring-boot-starter-parent 2.0.5.RELEASE &amp;lt;dependencies&amp;gt; &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt; org.spr

2018-10-21 23:19:53 4530 1

空空如也

空空如也

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

TA关注的人

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