自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用C#实现服务端与客户端的简陋聊天

【代码】使用C#实现服务端与客户端的简陋聊天。

2023-09-22 15:11:06 532

原创 工厂模式-(简单工厂模式)

LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。还是一个降低类之间的耦合度的意思,从这儿我们看出,其实设计模式就是一个软件的设计思想,从大型软件架构出发,为了升级和维护方便。简单工厂模式实现了创建对象由工厂返回,但是在需要新增其他品牌的鞋子时需要去修改工厂类,这样写的工厂拓展性差,违反了设计模式的开闭原则.

2023-09-14 10:09:04 375

原创 @BeforeEach与@AfterEach

例如:一个测试类有2个测试方法testA()和testB(),还有一个@BeforeEach的方法,执行这个测试类,@BeforeEach的方法会在testA()之前执行一次,在testB()之前又执行一次。@BeforeEach的方法一共执行了2次。修饰在方法上,和@BeforeEach对应,在每一个测试方法(所有@Test、@RepeatedTest、@ParameterizedTest或者@TestFactory注解的方法)之后执行一次。

2023-09-12 16:32:18 552

原创 Mybatis实体类属性与数据库字段的对应关系

方法四:resultType按照规则自动映射,按照是否开启驼峰映射自动映射属性和列名,只能映射一层结构.深层次的对象结构无法映射,多表查询的时候结果无法映射,此时可使用resultMap(自动映射)select t_id(数据库字段) tId(类的属性), ... , ...from 表名。-- 开启驼峰映射 数据库 s_id java类 sId-->方法三:resultMap自定义映射(自定义映射)方法二:开启驼峰映射。

2023-09-10 19:08:06 597

原创 使用Mybatis实现基本的增删改查------数据输出

当sql返回的实体类在java中没有的时候,可以使用map接值。需要和批量注入一起使用。

2023-09-09 16:20:55 117

原创 使用Mybatis实现基本的增删改查------数据输入

创建Mybatis框架需要创建Mapper.xml,Mapper接口,MybatisConfig配置文件。创建一个空的Maven项目,删去src,用作存储pom的父项目。创建Module在pom中加入测试依赖。Mybatis配置文件。

2023-09-09 13:53:00 125

原创 Cause: java.lang.ClassNotFoundException: Cannot find class: jdbc:mysql://localhost:3306/

额,发现问题的根本不在这里,而是jdbc.properties文件中的url和driver写错位置了。先看Mybatis配置文件中是否将JDBC.properties文件中导入了driver。问题描述:java找不到driver驱动的位置。检查jdbc.properties。不知道有没有大聪明和我犯类似错误的。

2023-09-09 13:30:42 75

原创 JavaScript作用域链与预解析

1.变量提升:就是将所有变量声明提升到当前作用域的最前面,只提升变量的声明,不提升变量的赋值。2.函数提升:函数提升就是将所有函数的声明提升到当前作用域的最前面。js解析器在运行js代码时会先进行预解析,再进行代码的执行。预解析分为变量预解析(变量提升)与函数预解析(函数提升)方法二:使用new Object创建对象。代码执行,按照代码书写的顺序从上往下执行。JavaScript的预解析。方法三:构造函数创建对象。方法一:字面量创建对象。

2023-09-08 19:16:51 109

原创 尚硅谷JDBC核心P33章节快速批量插入数据总结

假如向testone表中插入20000条数据,在不使用快速批量操作时的程序执行需要花费大量时间。这里需要使用setAutocommit()方法关闭自动事务提交,再使用commit方法提交事务。然后我们进行优化代码如下。

2023-09-08 16:19:13 52

原创 Mybatis

Mybatis的具体实现方法:ibatis的用法。

2023-09-08 16:16:15 68

原创 Spring声明式事务

spring-tx 使用多态的形式,满足不同类型的事务需求。只读模式可以提升查询效率,内部事务只能使用查询操作。可以自定义指定某个事务进行回滚/不回滚​​​​​​​。声明式事务可以理解为对编程式事务的一个封装。事务的传播行为:事务之间调用如何影响子事务。事务之间互不影响,大家都是独立的事务。尽管报了IO异常,事务不会进行回滚。指定异常回滚与指定异常不回滚。

2023-09-08 16:05:39 239

原创 XML配置AOP(了解)

增强的类如何使用XML配置文件进行实现。

2023-09-08 14:09:39 27

原创 AOP代理中Cglib使用场景

没有接口实现类的情况下使用Cglib进行动态代理。有接口时会使用JDK动态代理。

2023-09-08 13:56:09 102

原创 切面(增强)的优先级

为增强类指定一个优先级的值,值越小,优先级越高,优先级越高的前置先执行,后置后执行,类似洋葱。

2023-09-08 13:50:14 74

原创 SpringAop中的环绕通知

【代码】SpringAop中的环绕通知。

2023-09-08 13:43:54 148

原创 AOP中对切点统一管理

在增强方法中进行引用

2023-09-08 13:27:59 52

原创 SpringAOP的使用总结

AOP即面向切面编程,通过使用一定的技术将非核心方法抽离出来,放入统一的类中进行管理,在目标方法(核心方法)需要使用对应的非核心方法时,再将非核心方法插入的核心方法中,最后形成一个整合类进行使用.spring-context依赖中包含了spring-aop依赖。创建配置类:(注意配置类中需要声明开启对adpect的注解)方式一:通过类的接口实现AOP操作。

2023-09-08 10:53:48 260 2

原创 java.lang.NullPointerException at Com.su.test.MyTest.test01

RunWith(SpringJUnit4ClassRunner.class)或者@RunWith(SpringRunner.class)还不太懂原理,解决办法就是在测试类注解上添加。

2023-09-08 10:36:13 63

原创 SpringAOP面向切面编程

假设场景:接口:实现类:实习类实现接口的方法实现加减乘除功能:假如此时需要在加减乘除中加入"日志功能",可以显示对应的信息使用普通方法实现:此时需要在实现类的每一个方法中添加对应的非核心代码,代码出现重复,冗余.这样写在需要给方法添加功能时非常麻烦我们可以创建一个类,这个类将实现类中重复的方法提取出来,最后再将提取出来的方法插入到对应的类中.代理的好处,便于后续的维护举例:房东与中介与租客三者的关系。

2023-09-04 20:34:50 39

原创 Spring 利用XML配置的文件实现依赖注入以及控制反转,实现简单的数据库查询操作

此时我们不需要再在各个对象中new对象,spring中对象的创建我们交给IOC容器进行管理,由IOC容器统一帮我们进行管理.我们只需要声明就可。创建一个实体类Student,并实现对应的setter,getter方法,创建空参构造器,有参构造器。注意,在注入前要检查被注入的类中是否声明了需要注入的对象的setter方法。在project中创建一个module并在里面导入下面的依赖。需要在配置文件中对各个对象之间的进行依赖注入DI的操作。创建三层架构进行数据库的访问.创建一个空的project。

2023-08-29 20:49:09 100

原创 java.lang.IllegalStateException: Mapped class was not specified

在BeanPropertyRowMapper对象中加入需要query的实体类的class类。

2023-08-29 20:24:20 116

原创 Mysql数据库中的事务

事务是不可分割的最小的操作单元,要么全部成功,要么全部失败。

2023-04-21 07:22:21 63

原创 个人记录冒泡排序

【代码】个人记录冒泡排序。

2023-04-20 16:57:07 61

原创 在linux上安装docker ce步骤

yum remove 程序名(按tab自动补全)方法一:先查询linux中有关docker的程序。卸载docker ce安装包。安装docker ce。方法二卸载旧版本命令。启动docker ce。

2023-04-18 18:03:38 196

原创 安装完docker ce更换国内镜像后pull容器依旧超时

昨天被docker搞得心态爆炸,不管更换哪一个国内镜像都没有效果,今天早上想了想,会不会是现在最新版又有改动,因为我们一般下载的docker都是最新版,现在是23.0.4版本的docker了,有没有一种可能新版的不能再按照以前的步骤操作了呢?于是我就尝试安装老的版本。第一步:先卸载你下载的最新版docker(步骤暂时省略)第二步:查看docker ce现有的版本。后续自己再将镜像换为国内的就可以了。

2023-04-18 11:10:15 452

原创 在windows命令行中杀掉进程

netstat -aon|findstr 端口号。第二步 :根据pid杀死对应进程。第一步:查看对应进程的pid。

2023-04-14 10:46:37 108

原创 面试官问:请讲讲你对于IOC(控制反转)和DI(依赖注入)的理解?

它通过在对象创建时将对象所依赖的其他对象注入进来,实现了对象之间的松耦合。因此,可以解释为IOC是一种设计思想,通过控制反转将对象的创建和管理权利交给框架,实现对象的解耦;而DI则是实现IOC思想的具体实现方式之一,通过依赖注入的方式实现对象之间的解耦。传统的开发方式是由应用程序代码直接控制和实例化对象,而控制反转则是由框架控制对象的创建、管理、组装和调用,应用程序代码只需通过接口或抽象类来间接使用对象,实现了对象的解耦[通过依赖注入,对象不再负责创建或管理它所依赖的其他对象,而是通过IOC容器进行管理。

2023-04-07 11:19:11 167

原创 Spring使用XML注入NULL和注入特殊字符

注入属性值含有特殊符号的属性。idea输入大写C,

2023-04-06 19:52:00 158

原创 Spring注入属性的方式

(2)在spring配置文件中配置对象的属性,将属性注入。(1)创建一个类,定义类的属性与对应的set方法。基于set方法进行属性注入。在配置文件中注入属性。

2023-04-05 21:20:41 122

原创 Spring的IOC容器

耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差( 降低耦合性,可以提高其独立性)。耦合性:(英语:Coupling,dependency,或称耦合力或耦合度)是一种软件度量,是指一程序中,模块及模块之间信息或参数依赖的程度。虽然实现了部分的解耦合,但是工厂模式还有很大的解耦空间(程序间无法完全实现解耦合,只能降低耦合)

2023-04-04 22:57:56 118

原创 使用Maven工具创建第一个spring5程序

第一个简易spring程序

2023-04-04 22:39:57 217

原创 什么是spring?

什么是spring5

2023-04-04 22:29:19 58

原创 记录自己多线程遇到的一个有趣的问题

自己在学习多线程的过程中的思考

2023-04-02 00:25:22 60

原创 org.elasticsearch.bootstrap.StartupException:java.lang.IllegalArgumentException:

在plugins文件夹下加入ik分词器elasticsearch运行故障问题

2023-02-02 17:14:59 1516

原创 mabatis报错:Result type not match for select id=XXX

mabatis报错:Result type not match for select id=XXX的小问题

2022-10-21 12:35:18 4336

原创 JAVAWeb项目运行时TOMCAT:ddress localhost:1099 is already in use

netstat -aon | findstr port(端口号)杀死进程的过程中出现无法终止进程是因为当前权限不够。打开IDEA1099端口被占领的问题,查出端口号为1099的PID。打开管理员权限后再操作。杀死对应PID的进程。成功打开tomcat。......

2022-08-07 08:09:05 568

原创 Idea测试方法@Test中Scanner无法输入问题

IDEA@Test中Scanner无法输入问题

2022-07-07 21:48:32 951 1

原创 程序中的科学计数法

科学计数法

2022-04-05 11:43:23 3453

原创 visual studio code终端输入中文后无法正常输出问题

代码:#include<iostream>using namespace std;#include<string>int main(){string name;cin>>name;cout<<name;return 0;}无法输出结果在终端界面输入chcp查看自己的活动页代码如果显示在终端输入chcp 936更改活动页代码再次运行运行成功!...

2022-03-26 13:31:04 1544 2

原创 visual studio code C语言分文件编写问题

compare.cpp#include"hanshu.h"int compare(int a,int b){return a>b?a:b;}//函数的定义hanshu.h#include<iostream>using namespace std;int compare(int a,int b);//函数的声明test01.cpp#include"hanshu.h"#include<iostream>using namespace

2022-03-19 10:40:01 1159

基于C#的计算器小程序

可以进行连续操作,代码使用工厂模式,降低耦合度,便于后续的拓展

2023-09-21

基于C#的计算器小程序

代码版本

2023-09-21

C#实现简单计算器的加减乘除

在1.0之上增加数字按键(等于没加)

2023-09-13

使用C#写一个简单加减乘除计算器

一个简单的C#学习练手项目,课后练习作业

2023-09-12

空空如也

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

TA关注的人

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