- 博客(64)
- 收藏
- 关注

原创 Java基础内容汇总(上)
子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。4.像String、Date、File、包装类等都重写了Object类中的equals()方法.重写以后,比较的就不是两个引用的地址是否相同,而是比较两个对象的“实体内容”是否相同。特殊情况下,如果构造器的形参和类的属性同名,我们必须显式的使用"this.变量"的方式,表明此变量是属性,而非形参。特殊情况下,如果方法的形参和类的属性同名,我们必须显式的使用"this.变量"的方式,表明此变量是属性,而非形参。
2024-03-26 14:09:52
1939
原创 SpringBoot2核心功能-数据访问
/</</</MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。mybatis plus 官网建议安装 MybatisX 插件。
2024-10-14 17:03:22
931
原创 SpringBoot2核心功能-web开发
静态资源路径下 index.html可以配置静态资源路径但是不可以配置静态资源的访问前缀。否则导致 index.html不能被默认访问favicon.ico 放在静态资源目录下即可。spring:# mvc:# static-path-pattern: /res/** 这个会导致welcome page、Favicon功能失效resources:resources:add-mappings: false 禁用所有静态资源规则。
2024-10-11 11:05:45
1029
原创 Spring MVC__HttpMessageConverter、拦截器、异常处理器、注解配置SpringMVC、SpringMVC执行流程
在 SpringMVC 的核心配置文件中开启 mvc 的注解驱动,此时在 HandlerAdaptor 中会自动装配一个消息转换器:MappingJackson2HttpMessageConverter ,可以将响应到浏览器的 Java 对象转换为 Json 格式的字符串。在 Servlet3.0 环境中,容器会在类路径中查找实现 javax.servlet.ServletContainerInitializer 接口的类,如果找到的话就用它来配置Servlet 容器。
2024-10-03 17:07:07
1763
原创 Spring MVC__@RequestMapping注解、获取请求参数、域对象共享数据、视图、Restful
REST:Representational State Transfer,表现层资源状态转移资源资源是一种看待服务器的方式,即,将服务器看作是由很多离散的资源组成。每个资源是服务器上一个可命名的抽象概念。因为资源是一个抽象的概念,所以它不仅仅能代表服务器文件系统中的一个文件、数据库中的一张表等等具体的东西,可以将资源设计的要多抽象有多抽象,只要想象力允许而且客户端应用开发者能够理解。与面向对象设计类似,资源是以名词为核心来组织的,首先关注的是名词。一个资源可以由一个或多个URI 来标识。
2024-10-03 11:34:02
1613
原创 Spring MVC__入门
MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分M:Model,模型层,指工程中的JavaBean,作用是处理数据一类称为实体类 Bean:专门存储业务数据的,如Student、User 等一类称为业务处理 Bean:指 Service 或 Dao 对象,专门用于处理业务逻辑和数据访问V : View ,视图层,指工程中的 html 或 jsp 等页面,作用是与用户进行交互,展示数据C : Controller ,控制层,指工程中的 servlet ,作用是接收请求和响应浏览器。
2024-09-30 16:14:09
1156
原创 Java8/9/10/11新特性
Google公司著名的Guava项目引入了Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码。) 是一个容器类,它可以保存类型T的值,代表这个值存在。简单的说,在Java8中,Lambda表达式就是一个函数式接口的实例。java8中要创建一个只读、不可改变的集合,必须构造和分配它,然后添加元素,最后包装成一个不可修改的集合。,可以用来将数据直接传输到 OutputStream,这是在处理原始数据流时非常常见的一种用法,如下示例。它可以接收任意数量的参数。
2024-09-29 16:38:31
1075
原创 redis常用命令
不同之处是有序集合的每个成员都关联了一个评分(score),这个评分(score)被用来按照从最低分到最高分的方式排序集合中的成员。集合的成员是唯一的,但是评分可以是重复了。设置从机的优先级,值越小,优先级越高,用于选举主机时使用。默认100,在后面的哨兵模式中会有提及。修改redis.conf配置文件,将daemonize设置为yes。-c 采用集群策略连接,设置数据会自动切换到相应的写主机。通过客户端连接redis:redis-cli。成为某个实例的从服务器(配置从服务器)打印主从复制的相关信息。
2024-09-26 17:13:05
2130
原创 redis
Not Only SQL,非关系型数据库解决CPU和内存压力解决IO压力非关系型数据库,不依赖业务逻辑数据库存储,以key-value存储,因此大大增加了数据库的扩展能力不遵守SQL标准不支持ACID(原子性、隔离性、一致性、持久性)远超于SQL的性能高并发读写海量数据读写数据可扩展需要事务支持需要基于SQL结构化查询存储缓存数据库,完全在内存中,速度快,数据结构简单。
2024-09-26 16:59:54
460
原创 SpringBoot2核心技术-基础入门
创建一个spring的配置文件beans.xml,然后使用bean标签进行创建,容器中会有user01、cat两个组件。如何使用Java读取到properties文件中的内容,并且把它封装到JavaBean中,以供随时使用;需求:浏览发送/hello请求,响应 Hello,Spring Boot 2。引入两个依赖之后,所有的包都在了,不用担心导包问题。第五步:进入target,进入cmd,执行dir。@Bean (组件id):给容器中添加组件。@import 用于: 配置类里或者组件里。
2024-09-20 16:50:38
896
原创 MyBatis
目录一、搭建MyBatis二、核心配置文件详解mybatis-config.xml三、MyBatis获取参数值的两种方式3.1、单个字面量类型的参数3.2、多个字面量类型的参数3.3、map集合类型的参数3.4、实体类类型的参数3.5、使用@Param标识参数四、MyBatis的各种查询功能4.1、查询一个实体类对象4.2、查询一个List集合4.3、查询单个数据4.4、查询一条数据为map集合4.5、查询多条数据为map集合五、特殊SQL的执行5.1、 模糊查询5.2、 批量删除5.3、动态设置表名5.4
2024-09-20 10:42:46
1078
原创 面向切面:单元测试、事务、资源操作
事务(Transaction)是指一个或多个操作序列组成的逻辑工作单元,这些操作要么全部成功,要么全部失败回滚。原子性(Atomicity):事务是一个不可分割的工作单元,要么全部成功,要么全部失败,不允许出现部分成功部分失败的情况。一致性(Consistency):事务执行前后,数据库的状态应该保持一致,如果一个事务执行失败,那么数据库应该恢复到执行前的状态。隔离性(Isolation):多个事务之间应该互相隔离,事务之间不能互相干扰,避免脏读、不可重复读、幻读等问题。
2024-09-18 10:19:41
1195
1
原创 MySQL总结(上)
-创建库create database 库名;--创建库时判断库是否存在,不存在则创建create database if not exists 库名;--查看所有数据库--使用指定数据库use 库名;--查看当前指定数据库包含的数据表--查看数据库的结构定义信息show create database 库名;--删除数据库drop database 库名;--修改数据库的字符集为utf8alter database 库名 character set utf8;--创建表。
2024-09-09 20:51:27
1607
原创 面向切面:AOP
定义 AOP(Aspect Oriented Programming)是一种设计思想,是软件设计领域中的面向切面编程,它是面向对象编程的一种补充和完善,它以通过预编译方式和运行期动态代理方式实现,在不修改源代码的情况下,给程序动态统一添加额外功能的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率作用。
2024-09-06 19:22:15
1177
原创 Spring-容器:IOC-基于注解管理Bean
简介 从 Java 5 开始,Java 增加了对注解(Annotation)的支持,它是代码中的一种特殊标记,可以在编译、类加载和运行时被读取,执行相应的处理。开发人员可以通过注解在不改变原有代码和逻辑的情况下,在源代码中嵌入补充信息。 Spring 从 2.5 版本开始提供了对注解技术的全面支持,我们可以使用注解来实现自动装配,简化 Spring 的 XML 配置。步骤引入依赖开启组件扫描使用注解定义 Bean依赖注入使用注解。
2024-09-06 17:01:44
840
原创 Spring-容器:IOC-基于XML管理Bean
IoC (Inversion of Control),即控制反转,是一种设计模式或者说设计思想,它是面向对象编程中的一种概念,用来描述对象之间的依赖关系,指导我们如何设计出松耦合、更优良的程序。 Spring 通过 IoC 容器来管理所有 Java 对象的实例化和初始化控制对象与对象之间的依赖关系。我们将由 IoC 容器管理的 Java 对象称为 Spring Bean,它与使用关键字 new 创建的 Java 对象没有任何区别。
2024-09-05 20:31:40
1410
5
原创 MVC架构模式
用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC(ModelView Controller)是软件工程中的一种。M:Model模型层,具体功能如下(数据的增删改查、业务逻辑处理)C:Controller控制层,具体功能如下。V :View 视图层,具体功能如下。MVC模式下,项目中的常见包。
2024-09-01 15:38:37
424
原创 JavaWeb__XML、http
创建SAXReader对象解析XML获取Document对象: 需要传入要解析的XML文件的字节输入流获取文档的根标签获取标签的子标签//获取所有子标签//获取指定标签名的子标签List < Element > sonElementList = rootElement.elements("标签名");//获取所有子标签//获取指定标签名的子标签List < Element > sonElementList = rootElement.elements("标签名");//获取所有子标签。
2024-07-09 16:41:31
1036
1
原创 JavaWeb__正则表达式
正则表达式是描述字符模式的对象。正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。语法或者更简单的方式:修饰符方括号元字符量词RegExp对象方法支持正则的String的方法。
2024-07-09 14:31:24
661
原创 JavaWeb__JavaScript
目录一、JavaScript和html代码的结合方式二 、JS的数据类型和运算符三、 JS的流程控制和函数四 JS的对象和JSON4.1 JS声明对象的语法4.2 JSON格式4.3 JS常见对象4.3.1 数组4.3.2 Boolean对象4.3.3 Math4.3.4 Number4.3.5 String五 事件的绑定5.1 什么是事件5.2 常见事件5.3 事件的绑定5.4 事件的触发六 BOM编程6.1 什么是BOM6.2 window对象的常见属性(了解)6.3 window对象的常见方法(了解)
2024-07-08 19:46:30
936
原创 JavaWeb__HTML&CSS
目录一、HTML1、网页的组成部分2、HTML文件的书写规范3.HTML标签的介绍4、标签的语法5、常用标签介绍二、CSS1、CSS技术介绍2、CSS语法规则3、CSS和HTML的结合方式3.1、 行内式3.2、 内嵌式3. 3、外部样式表4、CSS选择器4.1、标签名选择器4.2、 id选择器4.3、class选择器(类选择器)4.4、组合选择器4.5、CSS常用样式5、CSS浮动6、CSS定位6.1、**静态定位**6.2、**绝对定位(absolute)**6.3、**相对定位(relative)**
2024-07-08 14:04:06
547
原创 Maven
目录一、目前的技术在开发中存在的问题二、maven安装和配置2.1、Maven安装和环境配置2.2、Maven功能配置2.3 IDEA配置本地Maven软件三、基于IDEA创建Maven工程3.1 概念梳理Maven工程的GAVP3.2 Idea构建Maven Java SE工程3.3 Idea构建Maven Java Web工程3.4 Maven工程项目结构说明四、基于IDEA进行Maven工程构建4.1 构建概念和构建过程4.2 命令方式项目构建4.3 可视化方式项目构建4.4 构建插件、命令、生命周期
2024-06-26 16:13:41
909
原创 Servlet详解(下)
目录一、Servlet详解1.1、核心接口和类1.1.1、Servlet接口1.1.2、GenericServlet1.1.3、HttpServlet(推荐)1.2、两种配置方法1.2.1、使用web.xml1.2.2、使用注解二、Servlet应用2.1、request对象2.2、request主要方法2.2、response对象2.3、response主要方法三、转发与重定向3.1、转发3.2、重定向四、生命周期4.1 实例化4.2 初始化4.3 服务4.4 销毁五、Servlet线程安全问题5.1、线
2024-06-05 15:18:21
891
原创 JDBC详解
注册给定的驱动程序:static void registerDriver(Driver driver) (DriverManager的方法)使用了Class.forName:Class.forName(“com.mysql.jdbc.Driver”)在com.mysql.jdbc.Driver类中存在静态代码块(通过查看源码发现)获取数据库连接(获取到数据库的连接并返回连接对象)DriverManager:驱动管理对象。将jar包导入,并添加到引用类库。执行sql语句,并接收返回结果。
2024-05-16 13:06:45
1469
原创 正则表达式
Matcher: 文本匹配器, 作用: 按照正则表达式的规则去读取字串, 从头开始读取。Pattern: 表示正则表达式。在一段文本中查找满足要求的内容。校验字符串是否满足规则。一种校验字符串的规则。
2024-05-15 12:45:15
343
原创 MySQL数据库运维篇
涉及主库(Master)和从库(Slave),主数据库的DDL和DML操作通过二进制日志传到从数据库(可以是多个),然后在从库上对这些日志重新执行(重做),从而使得从库和主库的数据保持同步。注: MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制主库出现问题,可以快速切换到从库提供服务——>避免崩溃实现读写分离,降低主库的访问压力——>分工合作可以在从库上执行备份,以避免备份期间影响主库服务——>备份恢复问题。
2024-04-26 19:06:26
2624
原创 MySQL数据库进阶篇三(锁、InnoDB引擎、常用工具)
全局锁:锁定数据库中的所有表(数据库备份表级锁:每次操作锁住整张表读锁/写锁lock tables 表名... read/write;元数据锁 自动加 DML语句 数据的增删改查时 MDL读锁,DDL语句表结构变更 MDL写锁MDL读锁:MDL写锁:alter table意向共享锁/意向排它锁 自动加加意向共享锁:shared_read:select, select … lock in share mode,
2024-04-25 17:19:19
977
原创 MySQL数据库进阶篇二(优化、视图/存储过程/存储函数/触发器)
系统变量:是MySQL服务器提供,非用户定义,属于服务器层面。分为全局变量、会话变量。
2024-04-25 11:07:08
990
原创 MySQL数据库进阶篇一(存储引擎、索引)
前缀长度 n:根据索引选择性决定,选择性指不重复的索引值(基数)和 表记录总数的比值,索引选择性越高则查询效率越高。覆盖索引:指查询使用了索引,并且需要返回的列,在该索引中已经全部能够找到。尽量使用覆盖索引,减少select *。五个指针: 指针1(key
2024-04-23 19:41:36
2758
原创 反射
Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射。1、动态语言。
2024-04-17 20:36:03
1330
原创 IO流
目录01、File类的使用1.2、File类的常用方法02、IO流原理及流的分类2.1、IO流原理2.2、流的分类2.3、IO 流体系03、节点流(或文件流)3.1、FileReader读入数据的基本操作3.2、FileWriter写出数据的操作3.3、使用FileReader和FileWriter实现文本文件的复制3.4、使用FileInputStream和FileOutputStream读写非文本文件3.5、使用FileInputStream和FileOutputStream复制文件的方法测试04、缓冲
2024-04-14 18:58:38
1152
原创 网络编程
通信双方地址IP端口号一定的规则(即:网络通信协议。有两套参考模型)OSI参考模型:模型过于理想化,未能在因特网上进行广泛推广TCP/IP参考模型(或TCP/IP协议):事实上的国际标准。网络通信协议/*** 一、网络编程中有两个主要的问题:* 1.如何准确地定位网络上一台或多台主机;定位主机上的特定的应用* 2.找到主机后如何可靠高效地进行数据传输* 二、网络编程中的两个要素:* 1.对应问题一:IP和端口号。
2024-04-12 17:00:35
905
原创 泛型
1、OrderTest类/*** 自定义泛型类*///类的内部结构就可以使用类的泛型T orderT;//如下的三个方法都不是泛型方法@Override'}';//泛型方法:在方法中出现了泛型的结构,泛型参数与类的泛型参数没有任何关系。//换句话说,泛型方法所属的类是不是泛型类都没有关系。//泛型方法,可以声明为静态的。原因:泛型参数是在调用方法时确定的。并非在实例化类时确定。2、SubOrder类。
2024-04-11 19:17:10
1187
原创 集合
1.集合、数组都是对多个数据进行存储操作的结构,简称Java容器。一旦初始化以后,它的长度就确定了。数组一旦定义好,它的数据类型也就确定了。我们就只能操作指定类型的数据了。数组中提供的方法非常有限,对于添加、删除、插入数据等操作,非常不便,同时效率不高。获取数组中实际元素的个数的需求,数组没有现成的属性或方法可用数组存储数据的特点:有序、可重复。对于无序、不可重复的需求,不能满足。集合框架涉及到的APIJava 集合可分为Collection和Map两种体系单列数据。
2024-04-11 15:11:56
1306
原创 枚举类和注解
枚举类的属性枚举类对象的属性不应允许被改动, 所以应该使用private final 修饰枚举类的使用private final 修饰的属性应该在构造器中为其赋值若枚举类显式的定义了带参数的构造器, 则在列出枚举值时也必须对应的传入参数一、枚举类的使用枚举类的理解:类的对象只有有限个,确定的。我们称此类为枚举类。当需要定义一组常量时,强烈建议使用枚举类若枚举只有一个对象, 则可以作为一种单例模式的实现方式。二、如何定义枚举类方式一:JDK1.5之前需要自定义枚举类。
2024-04-01 16:27:53
1059
原创 常用类(比较器、System类、Math类、BigInteger与BigDecimal)
=或!。不能使用 > 或<的,但是在开发场景中,我们需要对多个对象进行排序,言外之意,就需要比较对象的大小。如何实现?Comparable或ComparatorJava实现对象排序的方式有两种:1、测试类/*** 4.对于自定义类来说,如果需要排序,我们可以让自定义类实现Comparable接口,重写compareTo(obj)方法。* 在compareTo(obj)方法中指明如何排序} }/**
2024-03-31 20:44:49
798
原创 提取mask点
import cv2idx_y = ibreakidx_x = ibreakidx_y1 = jbreakidx_x1 = kbreak。
2024-03-31 18:32:27
191
原创 常用类(日期时间)
类是其中较重要的几个类,它们的实例是不可变的对象,分别表示使用ISO-8601日历系统的日期、时间、日期和时间。它们提供了简单的本地日期或时间,并不包含当前的时间信息,也不包含与时区相关的信息。LocalDate代表IOS格式(yyyy-MM-dd)的日期,可以存储生日、纪念日等日期。LocalTime表示一个时间,而不是日期。是用来表示日期和时间的,这是一个最常用的类之一。注:ISO-8601日历系统是国际标准化组织制定的现代公民的日期和时间的表示法,也就是公历。/**
2024-03-29 17:14:23
1206
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人