- 博客(46)
- 资源 (1)
- 收藏
- 关注
原创 Knife4j
Knife4j是一款可以提供在线API文档的框架,是基于Swagger框架实现的。在Spring Boot项目中,使用Knife4j需要添加依赖:然后,需要添加配置,则在项目的包下创建类:注意:必须修改以上配置中的包名,保证是当前项目中控制器类所在的包!其它各项均可不修改,以上配置代码可以从Knife4j的官网找到!......
2022-06-09 14:21:42 294
原创 Mybatis
Mybatis文章目录Mybatis1. 关于Mybatis2. 创建整合了Spring与Mybatis的工程3. 配置Mybatis的开发环境4. Mybatis的基本使用5. 获取新增的数据的自动编号的id6. 删除数据7. 修改数据8. 查询数据-19. 查询数据-210. 查询数据-311. 动态SQL -- foreach12. 动态SQL -- 其它13. 关于查询时的字段列表14. 基于Spring的测试15. 关于`@Sql`注解16. 关于测试中的断言17. 关于`#{}`和`${}`格
2022-05-30 17:32:51 361
原创 Spring MVC
Spring MVC1. 关于Spring MVCSpring MVC是基于Spring框架基础之上的,主要解决了后端服务器接收客户端提交的请求,并给予响应的相关问题。MVC = Model + View + Controller,它们分别是:Model:数据模型,通常由业务逻辑层(Service Layer)和数据访问层(Data Access Object Layer)共同构成View:视图Controller:控制器MVC为项目中代码的职责划分提供了参考。需要注意:Spring M
2022-05-27 09:06:37 325
原创 Spring Framework
Spring Framework1. 关于SpringSpring框架主要解决了创建对象、管理对象的问题。在传统的开发中,当需要某个对象时,使用new关键字及类型的构造方法即可创建对象,例如:Random random = new Random();如果以上代码存在于某个方法中。则random就只是个局部变量,当方法运行结束,此变量就会被销毁!在实际项目开发,许多对象被创建出来之后,应该长期存在于内存中,而不应该销毁,当需要使用这些对象时,通过某种方式获取对象即可,而不应该重新创建对象!除了
2022-05-26 16:01:27 253
原创 集合中的API
文章预览:集合(续)集合间的操作集合的遍历Collection提供了统一的遍历集合方式:迭代器模式java.util.Iterator接口迭代器遍历过程中不得通过集合的方法增删元素增强型for循环泛型List集List集合常见方法get()与set()重载的add()和remove()subList()方法集合与数组的转换集合转换为数组数组转换为List集合集合的排序java.util.Collections类Collections.sort(List list)方法集合(续)集合间的操作集合提供了如
2022-04-06 21:44:13 320
原创 聊天室与集合框架
文章预览:聊天室(续)实现服务端发送消息给客户端服务端转发消息给所有客户端客户端解决收发消息的冲突问题服务端完成处理客户端断开连接后的操作服务端解决多线程并发安全问题选取合适的锁对象this不可以allOut不可以。大多数情况下可以选择临界资源作为锁对象,但是这里不行。集合框架什么是集合java集合框架中相关接口java.util.Collection接口:Collection下面有两个常见的子接口:集合与元素equals方法相关的方法集合存放的是元素的引用聊天室(续)实现服务端发送消息给客户端在服务
2022-04-06 21:42:40 524 1
原创 Mac 中IDEA配置gitee
文章预览:Mac 中IDEA配置gitee下载gitee客户端查看git安装路径地址在IDEA中配置giteeMac 中IDEA配置gitee下载gitee客户端方式一进入链接直接下载安装下载地址:https://www.sourcetreeapp.com/若安装失败在终端中输入sudu spctl --master-disable 回车输入电脑的开机密码(密码看不到,输入完成后enter即可)在安全与隐私中设置成允许从任何位置下载app方式二打开终端,
2022-04-03 14:05:35 1241
原创 多线程并发安全问题
文章预览:使用多线程实现多客户端连接服务端线程API获取线程相关信息的方法线程优先级sleep阻塞线程APIsleep阻塞(续)守护线程多线程并发安全问题synchronized关键字synchronized有两种使用方式同步方法同步块同步监视器对象即上锁的对象,要想保证同步块中的代码被多个线程同步运行,则要求多个线程看到的同步监视器对象是同一个.在静态方法上使用synchronized静态方法中使用同步块时,指定的锁对象通常也是当前类的类对象互斥锁死锁使用多线程实现多客户端连接服务端流程图[外链图片
2022-04-02 08:48:00 499
原创 java网络编程
文章预览:java网络编程java.net.Socketjava.net.ServerSocket如果我们把Socket比喻为电话,那么ServerSocket相当于是某客服中心的总机。与服务端建立连接案例:客户端与服务端完成第一次通讯(发送一行字符串)Socket提供了两个重要的方法:实现客户端循环发消息给服务端多线程线程:一个顺序的单一的程序执行流程就是一个线程。代码一句一句的有先后顺序的执行。多线程:多个单一顺序执行的流程并发运行。造成"感官上同时运行"的效果。并发:用途:线程的生命周期图创建线程有两
2022-03-31 19:05:56 365
原创 异常处理机制
异常处理java异常处理机制java中所有错误的超类为:Throwable。其下有两个子类:Error和ExceptionError的子类描述的都是系统错误,比如虚拟机内存溢出等。Exception的子类描述的都是程序错误,比如空指针,下表越界等。通常我们程序中处理的异常都是Exception。异常处理机制中的try-catchpackage exception;/** * 异常处理机制中的try-catch * 语法: * try{ * 可能出现异常的代码片段 *
2022-03-31 09:24:44 260
原创 JAVA IO_2
缓冲输出流写出数据时的缓冲区问题通过缓冲流写出的数据会被临时存入缓冲流内部的字节数组,直到数组存满数据才会真实写出一次package io;import java.io.BufferedOutputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.nio.charset.StandardCharsets;/**
2022-03-30 09:13:14 208
原创 JAVA IO
JAVA IOjava io可以让我们用标准的读写操作来完成对不同设备的读写数据工作.java将IO按照方向划分为输入与输出,参照点是我们写的程序.输入:用来读取数据的,是从外界到程序的方向,用于获取数据.输出:用来写出数据的,是从程序到外界的方向,用于发送数据.java将IO比喻为"流",即:stream. 就像生活中的"电流",“水流"一样,它是以同一个方向顺序移动的过程.只不过这里流动的是字节(2进制数据).所以在IO中有输入流和输出流之分,我们理解他们是连接程序与另一端
2022-03-28 18:53:23 76
原创 File类
File类File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径)使用File可以做到:1:访问其表示的文件或目录的属性信息,例如:名字,大小,修改时间等等2:创建和删除文件或目录3:访问一个目录中的子项但是File不能访问文件数据.public class FileDemo { public static void main(String[] args) { //使用File访问当前项目目录下的demo.txt文件
2022-03-28 18:49:39 65
原创 普鲁斯特28问——2021年12月7日
普鲁斯特问卷28问:你认为最完美的快乐是怎样的?身心健康,父母健在,要啥有啥,无欲无求。你最希望拥有哪种才华?演讲和脱口秀,就像拥有既庄重又有趣的灵魂。你最恐惧的是什么?一生一世无成,老了觉得白来世上一遭。你目前的心境怎样?想慢下来了,觉得自己之前太着急了、太在乎了,反而做不好事情,现在想按部就班,慢慢来。还在世的人中你最钦佩的是谁?罗翔,敢于直面自己内心的邪恶,人人都逃不过人性,但是勇于说出来的却没有几个。你认为自己最伟大的成就是什么?从小到大,从
2021-12-07 13:17:00 292
原创 圆圈正义半书观后感
圆圈正义半书观后感 这段时间读了一本书,名字叫《圆圈正义》,这本书的作者是罗翔,可能大家在抖音上经常刷到过,人称法外狂徒张三,经常会用很有趣的语言来讲述法律知识。 我认识他是因为他说过一段话:“我们登上我们并非我们所选择的舞台,演出并非我们所选择的剧本,我们这一生中自己能够决定的东西很少,我们可能能决定5%的东西,但95%的东西是我们决定不了的,我们决定不了我们的出生,我们决定不了我们的智商,我们更决定不了我们这一生的贵人相助,很多时候我们经常会羡慕别人,但是没有谁的剧本值得羡慕,你只能把你自己
2021-11-15 22:29:07 500
原创 Linux---系统操作
1. 文件权限1.1 查看权限drwxr-xr-x. 文件的类型和权限(-:普通文件 d:文件夹 l:链接文件 b:二进制文件 c:字符设备文件)2 链接数(普通文件链接数是1,文件夹代表子文件夹的个数)root 用户root 组4096 大小Dec 8 16:41 最后修改时间 Desktop 文件名称 7 5 5111 101 101rwx r-x r-xu(当前用户) g(组的权限) o(其他用户对他操作的权限)
2020-12-21 21:27:37 98
原创 Linux---基本操作
1. 常见命令cat: 查看并打印内容到标准输出设备(屏幕)cat 文件:查看整个文件的内容(文件过大超过缓冲区,不会完整展示) -n 可以显示行数tac:倒叙打印tac 文件 与cat的特点相似head:展示开头的若干行(默认 10行)head 文件 -n num:指定显示的行数tail:展示结尾的若干行(默认10行)tail 文件 -n num:指定显示的行数 -f:始终来查看最新的内容more:翻页显示less:翻页显示(spa
2020-12-11 23:15:55 184
原创 Linux---简介与基本命令
1. Linux初识1.1 什么是Linuxlinux是开源免费的类unix操作系统(主要应用于服务器端)。linux操作系统支持多用户,多任务,多cpu和多线程。linux支持多数的网络协议,是一个网络操作系统。1.2 Linux的诞生1969年,贝尔实验室开发出unix,1973年,丹尼斯.里奇 用C语言重新编写1983年,理查德.斯托曼发起GNU(GNU’s not unix)计划,创建完全自由的操作系统GPL:通用软件许可证,自由软件(使用、复制、修改和发布)1
2020-12-06 21:13:07 120
原创 mysql---jdbc
1. 什么是JDBCjava database connectivity: java连接数据库技术sun 公司推出的针对关系型数据库开发的一整套规范,主要由接口组成,为了提升开发者效率;每一个数据库厂商的驱动程序,必须实现该接口。开发者只需要学习jdbc的接口,就可以实现不同数据库的同意操作jdbc接口:java.sql/javax.sql驱动包:各自数据库厂商的的产品中2. JDBC的执行流程(原理)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cdpjs
2020-12-03 21:48:08 85
原创 mysql数据库---视图与索引
1.存储程序1.1 存储过程1.2 存储函数和存储过程类似 作为sql语句的一部分进行调用运行使用返回值#根据员工编号查询名称 并返回delimiter //;create function sel_name(eno int)returns varchar(20)deterministic begin declare v_name varchar(20); select ename into v_name from emp where empno=eno; return v
2020-12-01 22:26:46 124
原创 mysql数据库---查询和事务
1. 关联查询条件或者结果分布于多张表,连接多张表查询1.1 内连接内连接是将多张表都出现的记录连接展示在结果层没有主从表之分,结果与连接顺序无关select ename,sal,dname from emp,dept where emp.deptno = dept.deptno and empno = 7788;# inner join ... on ...select *from emp inner join dept on emp.deptno=dept.deptno;#
2020-11-30 20:52:12 349
原创 mysql数据库---运算符以及函数操作
1.运算符1.1 算数运算符# 返回的结果为结果集 resultsetselect 1+1 sum;select 2-1;select 5/2; # 2.5select 5 div 2; #取整select 5/0; # nullselect 5%2; #取余1.2 比较运算符# 比较运算符select 1>2; # 0select 2>1; # 1select 1!=2;select 1<>2; # 不等于1.3 逻辑运算符#逻辑
2020-11-26 21:29:21 340
原创 数据库---mysql安装以及基础命令
1.什么是mysql1.1 什么是数据库(DateBase DB)利用数据结构村塾数据的仓库####1.2 数据库管理系统(DBMS)操纵和管理数据库的一套系统软件1.3 数据库管理系统分类关系型的数据库管理系统(RDBMS)处理结构化数据库(可以用行和列来表示)Oracle:oracle公司大型的分布式RDBMSMycql:开源免费sqlserver/db2非关系型的数据库(Nosql)数据多样性关系的复杂性高并发和高lo操作redis/HBase/m
2020-11-25 21:19:14 219 2
原创 java基础---网络编程
1 网络编程1.1 网络编程概述什么网络:分存在不同区域计算机使用专业通信线把连接起来,实现资源(数据,硬件)共享。网络编程目的:通过通讯协议实现数据传输如何通信ip和端口ip: Internet网络唯一标识.端口:计算机中运行的一个进程通讯协议的约定TCP:传输控制协议UDP:用户数据报协议1.2 通讯要素IP地址和端口InetAddress类:此类表示Internet协议(IP)地址端口号:0-65535 系统预留:0-1023 自定
2020-11-25 21:17:06 98
原创 java基础---反射
1 反射1.1 反射介绍什么是反射:反射可以把它称为动态语言,允许程序在运行期间借助于反射API可以获取类的完整信息。功能:在运行期间可以获取对象的类型可以在运行期间构造对象可以在运行期间可以获取类的完整结构可以在运行期获取指定类的属性和方法及构造器。反射API:java.lang.Class 可以获取运行时类的实例java.lang.reflect. Field 属性(成员变量)java.lang.reflect. Method
2020-11-13 18:32:30 65
原创 java基础---多线程
文章目录1 多线程1.1 程序、进程、线程区别和联系1.2 多线程的创建与实现1.2.1 两种实现多线程的方式1.2.2线程中常用的方法1.2.3线程中的优先级1.3线程的生命周期1.4 线程同步1.5 线程通信1.6 线程池(JDK1.5)1.7 补充线程的分类1 多线程1.1 程序、进程、线程区别和联系程序是为了完成某个特定的任务,使用各种语言编写的指令集合。静态的进程是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,进程也是程序一次执行状态,或者正在运行的程序。动态的
2020-11-08 20:38:06 95
原创 java基础---IO流
1 IO 流(I:Input O:Output)1.1 File类(文件和目录)作用:文件和目录路径名的抽象表示public class TestFile { @Test public void test1() { //操作文件 File f1=new File("d:/test/aa.txt"); //绝对路径:包含完整盼复的路径名称 File f2=new File("aa.txt"); //相对路径:相对于当前资源的路径 File f4=new File("d:/te
2020-11-04 18:46:18 86
原创 java基础---枚举和注解
1 枚举和注解1.1 枚举(创建有限个对象)1.1.1自定义枚举public class TestEnum1 { @Test public void test1() { Person p1 =Person.man; System.out.println(p1); Person p2 =Person.woman; System.out.println(p2); //? }}//自定义的枚举类(样例)class Enum1{ private Enum1() { }
2020-11-04 18:44:39 69
原创 java基础---泛型
1 泛型1.1 集合中使用泛型泛型类<泛型类型>特点在添加元素时检查添加元素的类型,如果类型和泛型类型不一致会出现编译错误public class TestGereric { @Test public void test2() { Map<Integer,String> map=new HashMap(); map.put(1, "aa"); map.put(2, "bb"); map.put(3, "cc"); Set<In
2020-11-02 20:29:08 129
原创 java基础---集合
1集合为什么要学习集合通过变量来记录数据,如果记录大量数据,变量在内存中开辟好多空间,不足通过数组来记录数据,在内存中会开辟连续空间,但是也有不足-空间长度问题可以通过集合来存储相关数据,集合可以存储任意类型的数据,可以动态扩容,但是它难以实现像数组多维的情况1.1集合框架两大集合:Collection和Map接口Collection接口List 接口 :存储有序 且不唯一Set接口:存储无序 且唯一1.2 Collection 接口public c
2020-11-01 19:45:01 82
原创 Java基础---异常、解决异常、自定义异常
1.异常1.1 异常java.lang 包中的类或接口直接使用概念:指程序在执行的过程中出现了非正常的情况,最终JVM终止工作异常的体系:java.lang.Object java.lang.Throwable Throwable是Error和Exception的基类(父类) java.lang.Error:表示出现严重错误 .jvm的错误,通过程序无法解决 java,lang,Exception:表示异常类,异常产生后可以通过代码解决 编译时异常:程序在编译时出现的
2020-10-30 18:37:52 122
原创 java基础---接口、静态代理、内部类
1.java 面向对象(接口、内部类)1.1 接口接口是一种标准,一个规范 和类是一个级别就像所有的电源插头与插座一样 所有厂家都做的三线插头和二线插头这样就能相互使用。语法:【访问权限修饰符】 interface 接口名 { 接口中的内容 }访问权限修饰符: public公共的(所有地方都可以访问)默认(package)本包内访问JDK1.7静态常量:默认【public static final】 类型=常量抽象方法:默认【public abstract】返回值
2020-10-29 18:15:49 123
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人