自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 框架之Dubbo基础

RPC(remote procedure call),即远程过程调用,通俗的解释为让程序员像调用本地方法一样来调用远程方法。需要注意的是RPC并不是一个具体的技术,而是指整个网络远程调用过程。Java中的RPC框架比较多,广泛使用的有RMI、Hessian、Dubbo等。简单来说:A机器通过网络调用B机器的某个方法,这个过程就称为RPC。面向接口的远程方法调用智能容错和负载均衡服务自动注册和发现。

2022-09-02 00:50:59 356 1

原创 框架之SpringBoot基础(二)

Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MP已经封装了一些常用的crud方法,只需要调用这些方法就可以完成简单的数据库操作,不需要程序员在写xml文件。步骤分析:创建模块。...

2022-08-31 00:26:52 466

原创 框架之SpringBoot基础(一)

SpringBoot对Spring的缺点进行了改善和优化,基于约定优于配置的思想,提供了大量的默认配置和实现。解决maven依赖版本容易冲突的问题,集合了常用且测试过的所有版本集合了常用jar包集合了所有约定的默认配置,解决整合框架或者技术栈配置文件过多的问题通过内置的Tomcat,可以直接运行JaveEE程序SpringBoot最主要的作用是帮助程序员快速构建Spring项目,让程序员更多的关注业务而非配置yaml是专门用来写配置文件的语言,非常简洁,比xml格式方便properties。...

2022-07-17 18:02:49 534

原创 第三方工具之Maven

Maven是一个项目管理工具,主要作用是在项目开发阶段进行依赖管理和项目构建在maven中,依赖是可以传递的。假设存在三个项目,分别是项目A,项目B以及项目C,如果A依赖B,B依赖C,那么就可以根据maven项目依赖的特征推出项目A也依赖C。三、分模块构建3.1 分模块构建概念在现实生活中,汽车厂家进行汽车生产时,由于整个生产过程非常复杂和繁琐,工作量非常大,所以汽车厂商都会将整个汽车的部件分开生产,最终再将生产好的部件进行组装,形成一台完整的汽车。在企业项目开发过程中,由于项目规模庞大,业务复

2022-06-05 00:39:10 122

原创 框架之初识SpringMVC

框架之初识SpringMVC一、SpringMVC简介二、SpringMVC内部实现2.1 框架内部流程2.2 SpringMVC三大组件2.3 常用注解三、SpringMVC请求详解3.1 请求参数类型3.2 请求过程中常出现的问题3.2.1 中文乱码3.2.2 日期类型报错3.3 请求过程中常用注解3.4 获取Servlet相关API四、使用SpringMVC实现文件上传4.1 文件上传流程4.2 SpringMVC实现五、开启静态资源的访问六、ajax异步交互七、异常处理7.1 自定义异常处理器7.2

2022-05-22 01:12:56 177

原创 框架之初步了解Spring(二)

初步学习Spring一、Spring注解开发1.1一、Spring注解开发Spring是轻代码而重配置的框架,配置比较繁重,影响开发效率,所以注解开发是一种趋势,注解代替xml配置文件可以简化配置,提高开发效率。1.1...

2022-05-16 01:08:14 92

原创 框架之初步了解spring(一)

初步了解spring一、Spring概述1.1 Spring简介1.2 Spring优势1.3 Spring的体系结构二、IoC2.1 IoC简介2.2 IoC如何解耦三、Spring初体验3.1 环境搭建3.2 Demo四、Spring相关API4.1 一个方法4.2 两个接口4.3 三个实现类4.4 测试&知识小结五、Spring配置文件5.1 Bean标签基本配置5.2 Bean依赖注入5.2.1 Bean依赖注入方式5.2.2 Bean依赖注入的数据类型5.3 配置文件模块化一、S

2022-05-07 00:11:12 92

原创 NoSQL之redis初体验

NoSQL之redis初体验一、NoSQL1.1 NoSQL简介1.2 主流NoSQL产品和分类1.2.1 键值(Key-Value)存储数据库1.2.2 列存储数据库1.2.3 文档型数据库1.2.4 图形(Graph)数据库1.3 NoSQL的特点二、redis2.1 redis简介2.2 redis的应用场景2.3 Redis常用命令一、NoSQL1.1 NoSQL简介NoSQL(Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。传统的关系数据库

2021-12-17 16:07:08 1376 1

原创 MySQL之MyBatis初体验3

MySQL之MyBatis初体验3一、注解开发1.1 注解与xml的比较1.2 使用注解完成单表CRUD1.3 使用注解完成多表映射1.3.1 一对一1.3.2 一对多1.3.3 懒加载二、MySQL经验总结2.1 SQL语句报错2.1 jdbc报错一、注解开发1.1 注解与xml的比较xml:作为配置文件优点:可以抽取内容(解耦),配置清晰 , 定位方便,易于寻找缺点:配置比较繁琐注解:可以替换xml开发优点:开发速度快,不需要繁琐的配置缺点:散布在java代码的各个地方,不方便维护

2021-12-01 13:28:49 465

原创 MySQL之MyBatis初体验2

MySQL之MyBatis初体验2一、主配置文件加载映射文件的三种方式二、添加后返回主键id三、动态sql3.1 条件查询-if标签3.2 条件查询-where标签3.3 条件修改-set标签3.4 foreach标签3.4.1 参数类型-数组3.4.2 参数类型-集合3.4.3 参数类型-实体对象3.5 include标签四、多表关系4.1 一对一4.2 一对多4.2 加载策略4.2.1 一对一嵌套查询4.2.2 一对多嵌套查询一、主配置文件加载映射文件的三种方式直接加载配置文件<mapp

2021-11-30 18:02:40 1047

原创 MySQL之MyBatis初体验

mysql之MyBatis初体验一、MyBatis概述1.1 直接操作jdbc的弊端1.2 MyBatis框架如何解决JDBC弊端1.3 MyBatis框架简介二、MyBatis入门2.1 入门Demo2.2 使用MyBatis完成传统表单CRUD2.3 抽取工具类2.4 动态代理方式实现CURD三、使用MyBatis完成复杂功能3.1 条件查询-包装类3.2 条件查询-arg或者param3.3 条件查询-使用@Param一、MyBatis概述1.1 直接操作jdbc的弊端频繁创建和销毁数据库连接

2021-11-30 11:06:30 1121 1

原创 MySQL之JDBC

Mysql之JDBC一、JDBC概述二、JDBC初使用三、JDBC详解3.1 注册驱动3.2 获取连接3.3 获取语句执行者对象一、JDBC概述JDBC(Java DataBase Connectivity) : Java数据库连接,是Java语言操作数据库的一种技术。JDBC是sun公司定义的一套操作所有关系型数据库的规则(接口),具体的实现类由各个数据库厂商来实现,Java开发人员只需要面向JDBC接口编程,不需要理会实现类中的方法。JDBC优点:使用同一套代码可以快速切换不同的数据库。二、

2021-11-16 14:56:22 973

原创 MySQL之事务&索引&函数

MySQL之事务&索引&函数一、事务1.1 事务概述1.2 事务原理1.2 事务特性(ACID)一、事务1.1 事务概述事务:如果一个业务包含多个步骤的操作,那么这些操作要么同时成功,要么同时失败。例如转账业务,包含扣钱操作和加钱操作。1.2 事务原理所有的操作先放在临时的事务日志中,当commit的时候,将日志中的信息写入数据库中;若rollback,会把事务日志中的信息相当于清空操作。回滚点:当事务开启后,一部分sql执行成功,添加一个回滚点,后续操作报错,直接到回滚点,

2021-07-21 15:46:17 101

原创 MySql之多表

MySql之多表&事务一、多表关系1.1 多表关系概述1.2 多表关系的实现1.2.1 一对多一、多表关系1.1 多表关系概述现实生活中,实体与实体之间肯定是有关系的,所以设计表时也应该体现出表与表之间的关系。表与表之间的关系:一对多,如一个部门对应多个员工多对一,如多个订单对应一个用户多对多,如一个老师对应多个学生,一个学生对应多个老师一对一,如一个公民对应一张身份证1.2 多表关系的实现1.2.1 一对多...

2021-07-09 20:35:06 721

原创 数据库之MySQL初体验

数据库之MySQL初体验一、数据库概述一、数据库概述

2021-06-08 00:33:29 260 4

原创 JavaWeb之Ajax&json

JavaWeb之Ajax&json一、ajax1.1 ajax概述1.2 同步与异步1.3 原生ajax1.4 axios组件一、ajax1.1 ajax概述ajax(Asynchronous JavaScript and XML) 异步的JavaScript 和 XML,是指一种创建交互式、快速动态网页应用的网页开发技术,通过在后台与服务器进行少量数据交换 , 无需重新加载整个网页的情况下,能够更新部分网页的技术。ajax可以在页面进行局部刷新时完成和后台的数据交互。1.2 同步与异步

2021-06-01 00:29:09 260 4

原创 JavaWeb之filter&listener&文件上传

JavaWeb之filter&listener&文件上传一、filter1.1 过滤器的基本概述:1.2 过滤器快速使用1.2.1 编码步骤1.2.2 Filter配置1.2.3 Filter执行过程1.3 Filter的生命周期1.4 拦截方式配置1.5 Filter与servlet的区别二、监听器——Listener2.1 Listener概述三、文件上传3.1 文件上传概述3.2 常见的文件上传技术3.3 文件上传浏览器前提3.4 使用commons-fileupload方式上传3.5

2021-05-26 22:27:34 611 3

原创 JavaWeb之jsp

JavaWeb之jsp一、jsp概述二、jsp与servlet的优缺点三、jsp快速入门3.1 jsp执行原理3.2 jsp基础语法3.2.1 脚本3.2.2 注释3.2.3 三大指令3.3 隐式对象3.3.1 PageContext页面域3.4 表达式语言(Expression Language)3.4.1 EL概述3.4.2 存储数据3.4.3 读取数据3.4.4 执行运算3.5 Jsp标准标签库3.5.1 JSTL概述3.5.2 core中常用标签3.5.3 JSTL的使用四、MVC模式一、jsp概

2021-05-26 16:43:48 340 3

原创 JavaWeb之cookie&session

JavaWeb之cookie&session一、会话概述二、cookie2.1 cookie的属性2.2 cookie相关API2.3 cookie的一些细节2.4 使用cookie完成购物车案例一、会话概述日常生活中:从拨通电话到挂断电话之间的一连串你问我答的过程就是一个会话。B/S架构中 : 从浏览器第一次给服务器发送请求时,建立会话;直到有一方断开,会话结束。一次会话:包含多次请求响应。会话中出现的问题:由于Http是一个无状态协议,不会记录每次请求的状态,这就造成了同一个会话的两请

2021-05-22 01:41:37 1128 2

原创 JavaWeb之Servlet的请求与响应

JavaWeb之Servlet的请求与响应一、请求1.1 请求概述1.2 获取Http请求信息1.2.1 请求行1.2.2 请求消息头1.2.3 请求参数1.2.3.1 实体类1.2.3.2 请求参数的中文乱码问题1.2.4 用流的方式读取请求正文1.2.5 请求转发二、响应2.1 响应概述2.2 响应行2.3 响应信息头2.3.1 重定向2.4 响应体三、文件下载案例一、请求1.1 请求概述请求:就是用户通过浏览器向服务器发送信息(携带数据)用户通过浏览器访问服务器时,Tomcat将HTTP请求中

2021-05-20 01:15:15 542 1

原创 JavaWeb之Servlet基本使用

JavaWeb之Servlet基本使用一、Servlet概述二、Servlet快速入门2.1 编写步骤2.2 代码实现2.3 执行过程一、Servlet概述Servlet在javax.servlet包下,是Servlet规范中的核心接口。Servlet是一个运行在web服务器中的java小程序,负责接收和响应来自客户端的请求,使用的交互使用的协议通常是HTTP协议。Servlet是一个接口,一个类要想通过浏览器被访问到,那么这个类就必须直接或间接的实现Servlet接口对比普通的类和servle

2021-05-19 00:31:39 371

原创 JavaWeb之tomcat的使用

JavaWeb之tomcat的使用一、软件架构二、Web知识概述2.1 URL定义2.2 服务器2.3 互联网应用和传统应用的区别三、tomcat3.1 下载3.2 安装一、软件架构网络中有很多的计算机,它们之间进行信息的交流称为交互。在交互的过程中有两个非常典型的交互方式:C/S 交互模型(架构)client /server 客户端/服务器模型,例如:QQ,绝地求生,LOL等B/S 交互模型(架构)brower/server 浏览器/服务器模型,例如:天猫,京东,知乎等网站C/S优

2021-05-17 21:28:53 380

原创 JavaWeb之初学JavaScript

JavaWeb之初学JavaScript一、JavaScript1.1 JavaScript概述1.2 基本语法1.2.1 注释1.2.2 输出方式1.2.3 变量和常量1.2.4 数据类型1.2.5 运算符1.2.6 流程控制语句1.2.7 数组1.2.8 函数1.2.9 JavaScript中的事件1.2.10 正则表达式1.3 BOM1.3.1 BOM概述1.3.2 BOM构成1.3.2.1 window对象1.3.2.2 location对象1.3.2.3 navigator对象1.3.2.4 hi

2021-05-13 21:12:54 99

原创 JavaWeb之初识HTML&CSS

JavaWeb之初识HTML&CSS一、HTML1.1 HTML基本结构1.2 HTML基本语法1.3 常用标签1.3.1 img图片标签1.3.2 a超链接标签1.3.3 列表标签1.3.4 table表格标签1.3.5 form表单标签1.3.5.1 表单中的组件——input组件1.3.5.2 表单中的组件——select1.3.5.3 表单中的组件——textaera1.3.5.4 表单中的组件——label1.3.5.5 表单中的组件——fieldset二、CSS2.1 CSS基本语法2.

2021-05-12 18:45:09 160

原创 Java进阶之设计模式&正则表达式

Java进阶之设计模式&正则表达式一、设计模式1.1 设计模式概述1.2 单例模式1.2.1 单例模式衍生——多例模式1.2.2 单例模式衍生——枚举1.3 工厂模式二、正则表达式一、设计模式1.1 设计模式概述设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。总体来说设计模式分为三大类:创建型模式(五种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、

2021-05-11 18:27:36 164

原创 Java进阶之初始XML&lombok

Java进阶之初始XML&lombok一、XML1.1 文档声明1.2 元素1.3 属性1.4 注释1.5 转义字符1.6 CDATA区1.7 xml约束1.7.1 dtd约束1.7.2 schema约束1.8 xml解析1.8.1 使用DOM4J解析XML1.8.2 xpath解析1.9 使用xml作为配置文件案例二、lombok一、XML1.1 文档声明 <?xml version="1.0" encoding="utf-8"?>注意:必须以<?xml开头, 以?

2021-05-07 17:19:40 375

原创 Java进阶之反射&注解&动态代理

Java进阶之反射&注解&动态代理一、类加载器1.1 类的加载时机1.2 类的加载机制二、反射2.1反射概述2.2 获取Class的三种方式2.3 Class中的常见方法2.4 Class获取构造方法并创建对象2.4.1 获取空参构造方法并使用2.4.2 获取带参数构造方法并使用2.4.3 暴力反射【不推荐】2.4.4 反射创建对象的简便方式2.5 Class获取成员方法并使用2.5.1 获取空参数成员方法并使用2.5.2 获取带参数成员方法并使用2.6 反射的应用案例三、注解3.1 注解概

2021-05-06 21:50:53 171

原创 Java进阶之NIO&AIO

Java进阶之NIO&AIO一、简单了解各种IO二、NIO2.1 Buffer2.1.1 ByteBuffer的创建2.1.2 ByteBuffer的put方法2.1.3 ByteBuffer的capacity方法2.1.4 ByteBuffer的limit方法2.1.5 ByteBuffer的position方法2.1.6 ByteBuffer的mark方法2.1.7 ByteBuffer中的其他的方法2.2 Channel2.2.1 FileChannel复制文件2.2.2 RandomAcc

2021-05-04 17:41:41 456

原创 Java进阶之Junit单元测试&网络编程

Java进阶之Junit单元测试&网络编程一、Junit单元测试1.1 单元测试基本使用1.1.1 @Test注解1.1.2 单元测试其他注解1.2 断言二、网络编程2.1 IP地址2.2 端口号2.3 协议2.4 客户端和服务器2.5 InetAddress2.6 TCP协议2.6.1 TCP协议中IO流2.6.2 TCP通信客户端2.6.3 TCP协议服务端2.6.4 TCP的上传案例2.6.4.1 客户端上传2.6.4.2 服务端接收2.6.4.3 服务端接收-死循环版本2.6.4.4 服务端

2021-05-03 20:45:22 353

原创 Java进阶之属性集&缓冲流&转换流&序列化流&打印流

Java进阶之属性集&缓冲流&转换流&序列化流一、IO流的异常处理1.1 jdk7之前的异常处理1.2 jdk7的异常处理二、Properties2.1 Properties的方法2.2 Properties从文件读取键值对三、缓冲流一、IO流的异常处理1.1 jdk7之前的异常处理/* JDK7之前IO流的异常处理 */public class Demo01Exception { public static void main(String[] args)

2021-05-02 20:51:05 116

原创 Java进阶之File类&递归&IO流

Java进阶之File类&递归&IO流一、File类1.1 File类概述1.2 File类的构造方法1.3 绝对路径和相对路径1.4 File的获取方法1.5 File类的判断方法1.6 File类的创建功能1.7 File类的删除功能1.8 File类的遍历方法二、递归2.1 递归遍历文件夹2.2 过滤器的使用三、IO流3.1 初识IO流3.2 字节流3.2.1 字节输出流3.2.1.1 文件续写3.2.1.2 文件换行3.2.2 字节输入流3.2.3 文件复制3.3 字符流3.3.1

2021-05-01 22:25:54 106

原创 Java进阶之线程池&lambda表达式&Stream流

Java进阶之线程池&lambda表达式&Stream流一、线程池1.1 线程池的基本使用1.2 Callable方式完成多线程二、线程状态2.1 wait和notify介绍三、定时器四、lambda表达式4.1 冗余的匿名内部类4.2 Lambda表达式标准格式4.3 Lambda表达式简化写法4.4 Lambda表达式使用前提五、Stream流5.1 传统方式操作集合的弊端5.2 流式思想介绍5.3 获取流5.3.1 单列集合获取流5.3.2 数组获取流5.4 Stream流中的方法5.

2021-05-01 00:37:00 703 1

原创 Java进阶之多线程安全性

Java进阶之多线程安全性一、多线程的安全问题1. 多线程的内存图一、多线程的安全问题1. 多线程的内存图栈内存是线程私有,每一个线程都有一个自己的栈空间,用来运行自己的方法。方法是通过哪个线程调用,那么方法就会在哪个线程的栈空间中运行。...

2021-04-29 20:01:14 140 1

原创 Java进阶之异常&初识线程

Java进阶之异常&初识线程一、异常1.1 异常的概述1.2 异常的继承体系以及分类1.3 异常产生的过程1.4 throw关键字的使用1.5 throws关键字的使用1.6 try...catch解决异常1.7 finally代码块1.8 编译时异常和运行时异常的区别1.9 继承关系中方法重写时的异常处理1.10 多异常处理的注意事项1.11 Throwable中操作异常信息的方法二、初始线程2.1 线程概述2.2 并发和并行2.3 程序中的主线程2.4 多线程程序的第一种实现方式2.4.1 Th

2021-04-26 21:06:02 108

原创 Java进阶之自定义ArrayList&斗地主发牌案例

Java进阶之自定义ArrayList&斗地主发牌案例一、自定义ArrayList二、斗地主发牌案例一、自定义ArrayList/* 自定义的ArrayList集合 在Java中有一个接口Iterable,实现这个这个接口后,就支持增强for了 */public class MyArrayList<T> implements Iterable<T>{ //定义数组,保存数据,初始长度为2 private Object[] arr =

2021-04-26 17:48:28 184

原创 Java进阶之Collections&Set接口&Map接口

Java进阶之Collections&Set接口&Map集合一、Collections1.1 常用方法1.1.1 自然排序1.1.2 比较器排序1.1.3 小结1.1.4 shuffle方法1.1.5 addAll方法二、Set接口一、CollectionsCollections是一个操作集合的工具类(注意与Colletion的区别)。1.1 常用方法static void shuffle(List<?> list):打乱集合中内容的顺序static void so

2021-04-26 17:39:58 108

原创 Java进阶之Collection&迭代器&泛型

Java进阶之Collection&迭代器&泛型一、Collection1.1 Collection概述1.2 集合和数组中的区别1.3 Collection常用方法1.4 List接口1.4.1 常用方法1.4.2 LinkedList简介以及特有方法1.4.3 LinkedList和ArrayList的区别二、Iterator迭代器2.1 并发修改异常三、增强for循环四、泛型4.1泛型概述4.2 泛型擦除4.3 泛型类4.4 泛型方法4.5 泛型接口4.6 泛型通配符4.7 泛型限定

2021-04-23 23:25:06 138 1

原创 Java进阶之类是成员变量的应用&出生日期算年龄案例

Java进阶之类是成员变量的应用&出生日期计算年龄案例一、类作为成员方法二、使用出生日期计算年龄一、类作为成员方法之前我们已经了解了引用类型的两种使用情况:类作为方法参数和返回值– 抽象类作为方法参数和返回值– 接口作为方法参数和返回值类作为成员变量今天就来学习类作为成员变量的情况/* 武器类 */public class Weapon { //名字 private String name; //伤害值 private int hurt

2021-04-23 20:38:00 451

原创 工具——idea常用快捷键

IDEA常用快捷键创建主方法:psvm创建输出语句:sout快捷键 功能Alt+Enter 导入包,自动修正代码(新建方法,处理异常)Ctrl+Y 删除光标所在行Ctrl+D 复制光标所在行的内容,插入光标位置下面Ctrl+Alt+L 格式化代码Ctrl+/ 单行注释Ctrl+Shift+/ 选中代码注释,多行注释,再按取消注释Alt+Shift+ 上下箭头 移动当前代码行shift+f6 重命名Ctrl+Alt +V 自动生成变量或方法返回值类型.var 自动生成变量或

2021-04-23 18:25:51 229

原创 Java进阶之拆装箱&String常用方法

Java进阶之装箱拆箱&String常用方法一、包装类1.1 包装类概述1.2 自动拆装箱1.3 手动拆装箱1.4 字符串和基本类型相互转换1.5 关于自动拆装箱的面试题二、字符串常用API2.1 concat2.2 contains2.3 startsWith & endsWith2.4 indexOf & lastIndexOf2.5 toCharArray2.6 toLowerCase & toUpperCase2.7 trim2.8 split一、包装类1.1 包

2021-04-21 21:58:04 198

空空如也

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

TA关注的人

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