自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spring项目——用户管理系统

用户管理系统功能介绍技术栈数据库脚本部分截图项目下载功能介绍该系统实现了注册、登录、用户的增、删(多条删除)、查(列表显示)、改(修改用户部分内容),列表显示实现了分页显示的功能,查找实现了模糊查找(可根据姓名、地址、邮箱查询)。技术栈使用的语言是Java,开发工具IDEA2020、JDK1.8。该系统的实现主要用到的是spring、springBoot、spring MVC和Mybatis等相关的内容框架,数据库使用的是MySQL。数据库脚本drop database if exists us

2021-07-29 21:54:42 4014 3

原创 一篇教会你如何搭建SpringBoot项目

SpringBoot网页搭建IDEA创建设置启动类常用配置说明网页搭建spring.io压缩包解压文件,使用idea打开即可。IDEA创建设置启动类点击启动并打开浏览器输入localhost:8080因为没有输入任何信息,所以是这样的。常用配置说明KeyDescriptiondebug开启debug模式的日志打印logging.level.*:*为要打印日志的包,值为日志打印级别。例如:logging.level.org.springfram

2021-06-28 17:31:32 221

原创 个人博客系统---基本功能的实现

个人博客用到的工具以及使用到的知识点基本业务框图数据库代码功能实现截图完整项目代码下载用到的工具以及使用到的知识点Maven库、JDBC、MySQL、Servlet、Tomcat、HTML、Ajax、jQuery基本业务框图数据库代码-- 创建数据库drop database if exists myblog;create database myblog;-- 注意:不能省略use myblog;-- 创建用户表drop table if exists userform;cr

2021-06-10 00:25:52 3113 13

转载 spring beans.xml

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLo

2021-06-08 11:00:27 469

原创 软件测试(进阶篇)面试请看

测试金字塔SDK,全称:SoftWare DeveLopment Kit,一般是指软件工程师特定的软件包建立的开发工具集合ROI:投入产出比从下到上三层模型,投入相同的时间,人力资源等,回报率越来越低;从下到上,测试的效率越来越低;从下到上,定位的问题越来越难单元测试(Unit Testing)单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。又称为模块测试。测试阶段:编码后或者编码前(TDD)测试对象:最小模块测试人.

2021-06-05 13:42:19 191 2

原创 JVM(java虚拟机)详细介绍

JVM一、堆new Object二、 JVM 栈(JAVA 虚拟机栈)局部变量8大基础类型,对象的引用操作栈:每个方法都会对应一个操作栈动态链接:执行常量池的方法引用方法返回地址:PC 寄存器的地址三、 本地方法栈四、 程序计数器用来记录线程执行的行号五、元空间(JDK 1.8)JDK 1.7 方法区(永久代)运行时常量池、字符串常量池,类的元信息 JDK 1.7 的时候的方法区JDK1.8 元空间:本地内存,并且将字符串常量池堆划分:新生代:第一次创建的对象都会分配

2021-05-31 15:18:09 269 1

原创 Java核心---线程进阶

乐观锁 VS 悲观锁乐观锁:(CAS(比较并且交换)、ABA、JUC) 乐观锁假设认为数据一般情况下不会产生并发冲突,所以在数据进行提交更新的时候,才会正式对数据是否产生并发冲突进行检测,如果发现并发生冲突了,则让返回用户错误的信息,让用户决定如何去做。悲观锁:(synchronized) 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。悲观锁的问题: 总是需要竞争锁,进而导致发生线程切换,挂起其他线程;所以性能不高;

2021-05-27 23:10:51 241 1

原创 JAVA基础---认识内部类

实例内部类实例化内部类对象public class OutClass { public int val1; public int val; class InnerClass { public int val3; public int val4; } public static void main(String[] args) { OutClass out = new OutClass(); OutC

2021-05-25 11:05:28 143

原创 常见线程池详解(一篇足以)

线程的缺点线程的创建需要开辟内存资源:本地方法栈、虚拟机栈、程序计数器等线程私有变量的内存,频繁的创建和消耗会带来一定的性能开销;使用线程不能很好的管理任务和有好的拒绝任务;线程池定义:使用池化技术来管理和使用线程的技术就叫做线程池。线程池的创建方式第一种创建固定个数的线程池线程池的执行流程:当拿到一个任务后,会判断当前线程池里面的线程数量是否达到最大值,如果有达到创建新的线程执行任务;当任务来了后线程池里面包含的重要内容(2个)线程队列schedule 区别没有延迟执行的时

2021-05-20 22:53:15 169

原创 必须知道的7大排序---数据结构

七大排序直接插入排序性能分析希尔排序性能分析选择排序性能分析冒泡排序性能分析直接插入排序每次选择无序区间的第一个元素,在有序区间内选择合适的位置插入插入排序,初始数据越接近有序,时间效率越高//直接插入排序//arr[] = {6,9,3,12,8,1}; public static void insertSort(int[] arr) { for (int i = 0; i < arr.length; i++) { int tmp = ar

2021-05-16 00:21:35 1111 2

原创 测试笔记(用例篇)

等价类思想:把输入划分为若干个等价类,从每一个等价类当中选一个测试用例进行测试,如果这个测试用例测试通过,我们就说这个等价类测试通过。有效等价类:根据需求规格,有意义的数据集合。无效等价类:不符合需要所要求的数据集合。边界值针对输入和输出的边界进行测试用例的设计;因果图法当输入有很多,不同输入的组合对应不同的输出,用因果图来分析不同输入组合和不同输出之间的关系。步骤:分析出所有的输入、输出;找出输入输出之间的逻辑关系;根据输入输出之间的关系画因果图;根据因果图画判定表;根据判定表

2021-05-15 15:29:29 296 4

原创 JAVA 反射、枚举、 Lambda 表达式详解

目录反射反射相关的类反射机制的起源Class类中的相关方法常用获得类相关的方法获取对象的3种方法常用获得类中属性相关的方法获得类中构造器相关的方法获得类中方法相关的方法反射的优缺点优点缺点枚举Enum 类的常用方法Lambda函数式接口Lambda表达式的基本使用Lambda在集合当中的使用Collection接口sort 方法Map 接口总结优点缺点反射定义: Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任

2021-05-09 17:55:41 805 4

原创 Java核心知识---初识线程

最早的并发编程是多进程并发编程。多个进程不能共享资源。线程(Thread)进程是系统分配资源的最小单位,线程是系统调度的最小单位。一个进程内的线程之间是可以共享资源的;一个进程内最少包含一个线程,即主线程;线程必须依附进程才能存活。进程不可以共享资源,而线程可以。线程可以共享的资源打开的文件内存(对象)线程不可共享的资源线程栈信息优先级注意:当线程的数量达到某个合适的值是最好的,如果太多的线程,就会出现线程之间的争抢和CPU的过度调度问题了,而CPU调度是需要消耗系统资源的

2021-04-26 16:45:42 166

原创 创建线程的7种方法&单线程 VS 多线程

目录创建线程的6种方法继承 Thread 类第一种第二种实现 Runnable 接口第三种第四种第五种实现 Callable 接口第六种单线程 VS 多线程创建线程的6种方法继承 Thread 类第一种/* 继承Thread类 */public class ThreadDemo1 { static class MyThread extends Thread { @Override public void run() { //

2021-04-26 15:23:30 333

原创 测试(概念篇)笔记

概念什么是软件测试?测试与调试的区别软件测试的目的和原则一个测试人员所具备的素质什么是需求什么是BUG什么是测试用例开发模型和测试模型软件的生命周期瀑布模型(Waterfall Model)螺旋模型(Spiral Model)迭代、增量模型敏捷模型V模型W模型配置管理配置管理的应用好处什么是软件测试?验证软件功能是否满足用户的需求。测试与调试的区别目的不同:测试的任务是发现程序中的缺陷;调试的任务是定位并且解决程序中的问题;参与角色不同:测试主要是由测试人员和开发人员来执行,黑盒测试主要由测

2021-04-23 17:55:44 228

原创 初识操作系统(笔记)

硬件组成:冯诺伊曼体系结构注意事项:CPU 和输入设备或输出设备不能直接交互,必须依靠中间的存储部分(内存);内存 VS 磁盘内存的读写速度(纳秒级别10^-9)远远大于磁盘(微秒级别)内存的价格远大于硬盘;内存中的数据不能持久化(当电脑重启之后就没了);磁盘的数据可以持久化。操作系统(任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)硬件软件 OS内核(进程管理,内存管理,文件管理,驱动管理)其他程序(例如函数库,shell程序等等)设计OS的目的与硬件交互,

2021-04-22 20:32:19 109

原创 TCP_IP协议(网络层与数据链路层)笔记

网络层基本概念主机: 配有IP地址, 但是不进行路由控制的设备路由器: 即配有IP地址, 又能进行路由控制节点: 主机和路由器的统称协议头格式4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4;4位头部长度(header length): IP头部的长度是多少个32bit, 也就是 length * 4 的字节数. 4bit表示最大的数字是15, 因此IP头部最大长度是60字节;8位服务类型(Type Of Service): 3位优先权字段(已经弃用

2021-04-21 22:29:16 322

原创 TCP沾包问题

目录面向字节流沾包问题代码实现解决方案1代码实现解决方案2代码实现面向字节流创建一个TCP的socket, 同时在内核中创建一个 发送缓冲区 和一个 接收缓冲区;调用write时, 数据会先写入发送缓冲区中;如果发送的字节数太长, 会被拆分成多个TCP的数据包发出;如果发送的字节数太短, 就会先在缓冲区里等待, 等到缓冲区长度差不多了, 或者其他合适的时机发送出去;接收数据的时候, 数据也是从网卡驱动程序到达内核的接收缓冲区;然后应用程序可以调用read从接收缓冲区拿数据;沾包问题粘

2021-04-21 11:35:40 173

原创 TCP_IP协议(传输层)笔记

TCP/IP应用层:程序员写代码的一层。HTTP、SSH、FTP、DNS传输层:为了保证两端能够顺利的通讯。TCP、UDP网络层:用来确定路线和路由选择。数据链路层:相邻节点的数据接收和转换。TCP两个对象(客户端和服务器端)服务器:ServerSocket客户端:Socket new Socket(IP,Port)TCP读写数据的重要对象读:BufferedReader socket.getInputStream 读取readLine()写:BufferedWrite.

2021-04-21 09:45:11 356

原创 Linux安装JDK、Tomcat、MYSQL

接上篇 xshell与xftp的安装使用.如果没购买服务器的先购买服务器.购买服务器.目录JDKTomcat12345678MYSQL12345678JDK首先双击打开xshell并且连接到服务器输入 yum list java*会出现大堆与jdk相关的信息我们安装java-1.8.0-openjdk。使用指令yum -y install java-1.8.0-openjdk*因为我的是已经安装过的所以不会再安装安装好后出现Complete! 说明已经安装好了你还可以输入java.

2021-04-19 11:09:34 240

原创 Linux(xshell及xftp的下载使用与常用指令)

xshell下载.xftp下载.目录连接服务器一、二、三四五六xshell使用属性栏命令栏xftpxshell 常用指令ls(list)显示当前目录下所有文件cd 切换文件ls -l 显示文件详情信息ls -lt 按照时间倒序排序pwd 查看自己当前所在路径touch 创建文件echo > 文件添加内容cat 内容读取echo >> 内容追加mkdir 创建文件夹mkdir -p 创建多级路径文件rm 删除文件(删除不了文件夹)rm -r 删除文件夹mv 移动文件位置cp 复制文.

2021-04-18 23:50:13 2771 1

原创 Linux配置(购买云服务器)

服务器购买服务器配置选择找到实例一、二、三、四、五、六、修改密码重装系统购买服务器阿里云服务器如果是新人用户的话会有一个月的免费试用。阿里云新人免费试用.大家直接注册免费试用就行。我已经是用过了所以显示不符合规则。阿里云服务器购买.腾讯云服务器购买.配置选择配置选择类似就以阿里云演示。选择好后点击立即购买即可。找到实例一、二、三、四、五、六、到这说明你已经拥有了这台服务器的使用权。修改密码修改密码是为了一会部署的时候用。在这里输入密码即可。

2021-04-18 20:54:33 1200

原创 Tomcat的下载安装使用说明一看就会

目录简介安装第一步第二步第三步第四步使用及配置文件夹功能第一步第二步第三步演示实现简介Tomcat是一个免费的开源Servlet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun(现在已属于Oracle)和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。安装第一步第二步第三步第四步下载好后直接解压到一个不包含中文名的文件夹中(带有中文的话有可能会乱码)。这样就下载好了。

2021-03-31 21:27:38 157

原创 web.xml

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://

2021-03-29 16:53:18 109

原创 HTTP协议剖析详解

目录一、认识URL(全站资源定位符)二、 http原理http协议格式http 的方法get与post区别http状态码1XX2XX3XX4XX5XXhttp常见的header常见的Content-Typehttp与https一、认识URL(全站资源定位符)平时我们俗称的 “网址” 其实就是说的 URL协议http/https:服务器(域名/IP):端口号/目录/页面地址?a=a1&b=b1#片段标识符格式:以英文 “ ?” 开始,多个参数使用&分隔,每个参数使用=分隔其中这

2021-03-29 15:46:48 218

原创 Java实现单向链表与双向链表简单的增删查操作

目录链表的概念及结构创建节点类定义头节点插入头插法尾插法任意位置插入查找n位置节点删除节点其它方法判空计算链表长度打印链表完整代码链表的概念及结构链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。就拿带头单向非循环链表来讲。val就是数值,可以随便给。next连接下一个地址,这样就可以串联起来了。地址可以是无序的,不像顺序表一样它的地址必须是有序的。创建节点类class ListNode{ public int val; pub

2021-03-23 21:52:16 236

原创 MySQL增删查改

承接上篇 MySQL数据库基础操作.表的增删改查新增 CREATE语法单行数据 + 全列插入多行数据 + 指定列插入查询 SELECT语法全列查询指定列查询查询字段为表达式起别名去重 DITINCT排序:ORDER BY条件查询:WHERE比较运算符逻辑运算符基本查询AND与OR范围查询:BETWEEN ... AND ... 与 IN模糊查询:LIKENULL 的查询:IS [NOT] NULL分页查询:LIMIT修改 UPDATE删除 Delete新增 CREATE现在在persons表中新

2021-03-12 01:37:50 306

原创 MySQL数据库基础操作

数据库操作基础操作显示当前数据库创建数据库语法示例删除数据库语法示例表的操作使用数据库语法示例显示数据库中的表删除表常用的数据类型数值类型字符串类型日期类型创建表语法示例查看表的结构语法说明基础操作显示当前数据库//大小写都可SHOW DATABASES;电脑本身会自带一些数据库,创建数据库语法//关键字大小写都可以 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,create_specification

2021-03-11 00:27:39 184

原创 Windows下安装MySQL教程(有图有链接)

安装包windows安装包检查操作系统如果系统中已经安装过MySQL那么建议完全卸载之后重新安装。开始安装安装程序要求计算机有.Net Framework 4.5.2退出masql安装程序并下载.Net Framework 4.5.2.MySQL程序要求计算机有Micrsoft Visual C++ 2015 Redistributable Package (x64)安装Micrsoft Visual C++ 2015 Redistributable Package (x64).

2021-03-06 23:12:34 203

原创 Java知道这些正则表达式,刷题快一半

正则表达式字符字符类逻辑操作符边界匹配符量词字符字符描述B指定字符B\xhh十六进制值为oxhh的字符\uhhhh十六进制值为oxhhhh的Unicode字符\ttab\n换行\r回车\e转义字符类字符类描述. (小数点)任意字符[abc][ ] 中括号,包含a,b,c中任意字符[^abc][ ]中括号加^, 表示否定,除a,b,c之外的[a-z]从a到z的任意字符[a-z&

2021-03-05 22:31:41 109

原创 java抽象类与接口

目录抽象类语法规则注意事项作用接口语法规则实现多个接口接口使用实例化接口间的继承总结承接上篇多态链接: link.抽象类语法规则class Shape { public void draw() { }}class Cycle extends Shape { @Override public void draw() { System.out.println("○"); }}class Rect extends Shape { @O

2021-02-05 21:36:25 289

原创 Java 多态(什么是多态?)

多态向上转型直接赋值法方法传参法方法返回向下转型方法重写super 关键字理解多态承接上篇 链接: link.向上转型通常我们在实例化对象的时候都是通过new关键字来做的,来调用类内的方法。public class Main { public static void main(String[] args) { Animal animal = new Animal("animal"); animal.eat(); Dog dog = new Do

2021-02-04 00:43:38 439 1

原创 Java继承(什么是继承)

继承背景基本语法继承改进Proteced 关键字背景代码中创建的类, 主要是为了抽象现实中的一些事物(包含属性和方法).有的时候客观事物之间就存在一些关联关系, 那么在表示成类和对象的时候也会存在一定的关联.例如, 设计一个类表示动物注意, 我们可以给每个类创建一个单独的 java 文件. 类名必须和 .java 文件名匹配(大小写敏感)// Animal.javapublic class Animal { public String name; public Animal(String

2021-01-30 01:33:34 575 6

原创 Java 包(什么是包?)

包概念导入包中的类静态导入将类放到包中基本规则操作步骤包的访问权限控制常见的系统包概念包(package) 是组织类的一种方式.使用包的主要目的是保证类的唯一性.例如:你在代码中写了一个 Test 类. 然后你的舍友也可能写一个 Test 类. 如果出现两个同名的类, 就会冲突, 导致代码不能编译通过。导入包中的类Java 中已经提供了很多现成的类供我们使用.当我们在idea中通过.操作符访问时会自动弹出很多包public class Text { public static voi

2021-01-25 22:45:01 10295 6

原创 Java实现简单的图书管理系统

图书管理系统简介知识点类封装包接口继承创建书(Book)书架(BookList)主函数(Main)用户(User)管理员(Administrator)接口(IOperation)查(FinOperation)增(AddOperation)删(DelOperation)显示(DisOperation)退出(ExiOperation)学生(Ordinary)查(FinOperation)借(BorrOperation)归(RetOperation)显示(DisOperation)退出(ExiOperation)

2021-01-23 01:53:04 10452 13

原创 JAVA杨辉三角的2种写法(数组与泛型List)

数组的形式 //杨辉三角 public static int[][] triangle(int n){ int[][] arr = new int[n][n]; for (int i = 0; i < n; i++) { arr[i][0] = arr[i][i] = 1; for (int j = 1; j <= i; j++) { arr[i][j] = arr[i - .

2021-01-22 23:51:25 198

原创 StringBuffer与StringBuider的具体用法

        任何的字符串常量都是String对象,而且String的常量一旦声明不可改变,如果改变对象内容,改变的是其引用的指向而已。        通常来讲String的操作比较简单,但是由于String的不可更改特性,为了方便字符串的修改,提供StringBuffer和StringBuilder类。其提供了String没有的一些方法。&n

2021-01-20 21:59:25 300 2

原创 认识String类

String常见构造String方式String 在内存中的存储图一图二比较字符串代码一代码二图三equals比较字符串总结字符,字节与字符串字符与字符串字节与字符串字符串比较字符串查找字符串替换字符串拆分字符串截取其它方法常见构造String方式//方式一String str1 = "hello";System.out.println(str1);//方式二String str2 = new String("hello");System.out.println(str2);//方式三

2021-01-19 19:49:23 376

原创 JAVA判断回文数的两种方法

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数目录方法一方法二方法一通过==String.valueOf()方法把整数转换为字符串,再用toCharArray()==方法将字符串转化为字符数组,通过数组的第一个和最后一个比较是否相等判断回文。 public static boolean isPalindrome(int x) { if(x < 0) return false; //负数不是回文 if(x < 10) return tru

2021-01-16 14:35:08 3874

原创 JAVA数组(找最大元素,求平均值,查找,排序,逆序)

目录找数组中的最大元素求数组中元素的平均值查找数组中指定元素顺序查找(遍历数组挨个查找)二分查找检查数组有序性数组排序冒泡排序数组逆序找数组中的最大元素首先给一组数字,再定义一个变量max接收最大值,遍历数组,比较数组每个元素与max的值,如果数组元素大于max的值就将数组元素赋值给max,最后得出max的值。public static void main(String[] args) { int[] arr = {1,2,3,4,5,6}; System.out.println(max(arr)

2021-01-15 01:33:40 603

空空如也

空空如也

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

TA关注的人

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