Java
文章平均质量分 71
Bityang_01
这个作者很懒,什么都没留下…
展开
-
Spring-Spring、IoC、DI、注解开发
Spring是一个低侵入降低组件之间的耦合解耦面向切面编程依赖反射以前所有东西都是由程序去进行控制创建,耦合性太高(模块与模块之间的依赖性太强,需求改一个模块,实际需要改好几个模块),而现在是由我们自行控制创建对象 , 把主动权交给了调用者。程序不用去管怎么创建,怎么实现了。它只负责提供一个接口问题:耦合度高解决办法:使用对象时,在程序中不要主动使用new产生对象,转换由外部提供对象。原创 2024-07-11 21:10:09 · 684 阅读 · 1 评论 -
SpringBoot项目——送水管理系统
需要用到一些mybatisPlus没有的方法,需要在mapper下写需要的方法,具体实现在resources/com/example/HistoryMapper.xml。然后在业务层完成业务,controller层完成,controller层有一个数据回显的功能模块。在mapper下创建SalaryMapper(用@Repository注解)在service层提供登录方法,分为接口和接口实现。需要tb_customer表。需要tb_history表。需要tb_history表。需要tb_worker表。原创 2024-07-08 16:05:11 · 934 阅读 · 0 评论 -
spring-AOP
匹配,例如getByld书写成getBy。匹配,例如UserService书写成。原创 2024-06-24 09:54:29 · 382 阅读 · 0 评论 -
spring-注解开发
注解开发定义beanXML配置比对注解配置原创 2024-06-22 17:18:44 · 291 阅读 · 0 评论 -
spring-依赖注入DI
2、简单类型:在bean中定义引用类型属性并提供可访问的set方法,在配置中使用property标签value属性注入简单数据类型。1、引用类型:在bean中定义引用类型属性并提供可访问的set方法,配置中使用property标签ref属性注入引用类型对象;4、如果有必要可以两者同时使用,使用构造器注入完成强制依赖的注入,使用setter注入完成可选依赖的注入。1、强制依赖使用构造器进行,使用setter注入有概率不进行注入导致null对象出现。2、可选依赖使用setter注入进行,灵活性强。原创 2024-06-22 16:49:06 · 362 阅读 · 0 评论 -
Spring-bean
解决方案:使用对象时,在程序中不要主动使用new产生对 象,转换为由外部(核心容器:core container)提供对象。),无参构造方法如果不存在,将抛出异常BeanCreationException。解决问题(代码耦合度高——模块与模块之间的依赖程度)3、实例工厂.先造出工程实例对象。3.执行属性注入( set操作)4.执行bean初始化方法。1.创建对象〔内存分配)1.执行bean销毁方法。原创 2024-06-22 15:35:31 · 389 阅读 · 0 评论 -
软件测试、测试模型、测试用例
局限性:需求、设计、编码等活动被视为串行的;无法支持敏捷开发模式。软件测试的生命周期:需求分析→测试计划→ 测试设计、测试开发→ 测试执行→ 测试评估。特点:是瀑布模型的变种,明确的标注了测试过程中存在的不同类型的测试,并且清楚的描述了这些测试阶段和开发过程期间各阶段的对应关系。特点:测试的对象不仅是程序,需求、设计等同样要测试,测试与开发是同步进行的;(2)要从“黑盒”的角度,设计出充分并且必要的测试集,以保证设计和代码都能完全符合需求。局限:仅仅把测试作为在编码之后的一个阶段,未在需求阶段就进入测试。原创 2024-05-31 16:51:56 · 1094 阅读 · 0 评论 -
MySQL索引
B树或者B+树。原创 2024-05-30 16:21:12 · 298 阅读 · 0 评论 -
网络、HTTP、HTTPS、Session、Cookie、UDP、TCP
应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。原创 2024-05-28 20:11:52 · 1290 阅读 · 0 评论 -
多线程、进程、线程五种状态、synchronized、volatile、Lock、CAS、死锁、ThreadLocal
的保证,确保一个线程的修改对于其他线程是可见的。被volatile修饰的共享变量,当它被修改时,可以将修改的值立即更新到主内存中,其他线程需要读取时,重新去主内存中读取新值volatile可以保证可见性和禁止重排序,但不能保证原子性;synchronized涉及到用户态和内核态的切换,在1.6之前,锁都是重量级锁,即我们不管什么线程来操作资源,都要进行加锁释放锁,如果有多线程,还要等待之类的,很浪费资源,1.6之后引入了偏向锁与轻量锁来减小获取和释放锁所带来的性能消耗。)、可多条件队列的锁操作。原创 2024-05-24 21:57:13 · 1094 阅读 · 0 评论 -
Map遍历、反射、GC
用foreach遍历。原创 2024-05-23 15:35:07 · 770 阅读 · 0 评论 -
七大排序算法
交换排序:1、冒泡排序;2、快速排序选择排序:3、选择排序;4、堆排序插入排序:5、直接插入排序;6、希尔排序归并排序:7、归并排序。原创 2024-05-21 21:00:41 · 663 阅读 · 0 评论 -
类加载、happens-before
加载:获取二进制字节流验证:保证不会危害虚拟机准备:分配内存空间,设置变量初始值解析:常量池中的符号引用转换成直接引用的过程初始化:初始化类变量和其他资源。原创 2024-05-20 17:52:22 · 671 阅读 · 0 评论 -
单链表——Java
单链表的定义:class ListNode{ public int data; public listNode next; public ListNode(int data){ this.data=data; this.next=null; }}class MysingalList{ public ListNode head; public MysingalLis...原创 2019-11-12 17:06:38 · 186 阅读 · 0 评论 -
类和对象、static修饰、this关键字、构造函数
面向对象三大特性:封装,继承,多态类的定义类其实是一种自定义类型,和int,char一样,可以使用类来定义变量,这种类型的变量统称为引用变量。即,所有类都是引用类型。类是某一批对象的抽象,可以理解为类是一种概念:对象是一个具体存在的实体面向对象就是用代码(类)来描述客观世界的事物的一种方式. 一个类主要包含一个事物的属性和行为用类类型创建对象的过程,称为类的实例化类只是一个模型一样的...原创 2019-10-24 18:16:20 · 700 阅读 · 0 评论 -
数组、数组中的内存、参数传递、数组的工具类:Arrays
数组类型数组:相同类型数据的集合,内存是连续的一个数组只能储存一种数据类型,而不能储存多种数据类型。Java中的数组既可以储存基本数据类型的数据,也可以储存引用数据类型的数据,只要所有的数据都具有相同的数据类型即可。其实,数组也是一种数据类型,本身是一种引用类型。如:int是一种基本类型,int[]就是一种引用类型,可以使用int[]来定义变量,或者来进行类型转换定义数组有两种语法格式...原创 2019-10-21 19:13:00 · 252 阅读 · 0 评论 -
运算符
Java中的运算符分为:算术运算符赋值运算符比较运算符逻辑运算符位运算符类型相关运算符算术运算符用于基本的数学运算:加、减、乘、除和求余7个基本的运算符+:加法运算符除执行基本的加法操作外,+还可以作为字符串的连接运算符System.out.println("hello"+"world");-:减法运算符执行基本的减法操作*:乘法运算符执行基本的乘法操作/:...原创 2019-10-14 16:33:24 · 172 阅读 · 0 评论 -
数据类型、类型转换
Java是强类型语言,含义为:所有的变量必须先声明、后使用指定类的变量只能接受类型与之匹配的值Java语言的类型有两类:基本类型(内置类型)和引用类型基本类型包括boolean类型和数值类型。数值类型包含整数类型和浮点类型。整数类型包括byte,short,int,long,char,浮点类型包含float和double引用类型包含类,接口和数组类型,还有一种null类型。整型(i...原创 2019-10-12 21:59:37 · 450 阅读 · 0 评论 -
main方法是static的、JDK和JRE和JVM
main方法是static的Java中main方法是static,为什么?static是静态的意思,如果main不是static的,那么在调用时必须先对main进行实例化,main是程序的入口,不可能被实例化,用static修饰后,可以直接用类.main()进行调用,不需要进行实例化JDK,JRE和JVM联系和区别简单来说就是JDK包含JRE,JRE包含JVMJDK是面向开发人员的,包含...原创 2019-09-28 21:45:44 · 250 阅读 · 0 评论