- 博客(40)
- 资源 (8)
- 收藏
- 关注
原创 @Resource 和@Autowired 的区别
其次如果在Spring IOC容器里面存在多个相同类型的Bean实例,由于@Autowired注解它是根据类型来注入Bean实例的,所以Spring容器启动的时候会提示一个错误,大概的意思是原本只能注入一个单实例Bean但是在IOC容器里面有多个导致注入失败。@Resource是JDK里面提供的注解,只是Spring在实现上提供了这种注解功能的一个支持,它的使用方式和@Autowired注解的使用方式是完全相同的,最大的差异化在于@Resource可以支持。这两个注解的作用都是Spring生态里面去实现。
2023-01-15 19:35:30 7246
原创 .gitignore文件配置以及gitee提交报Push rejected...错误解决
.gitignore文件可以用来忽略被指定的文件或文件夹的改动。记录在.gitignore文件里的文件或文件夹是不会被 git 跟踪到,也就是被忽略的文件是不会被上传到远程仓库的,如果文件已经存在于远程仓库中就无法通过.gitignore文件来忽略。在确认自己gitee账户和地址都没出错的情况下,下面总结了一些可能会用到的配置大家可以参考。最后在idea中重新push自己的项目。
2023-01-05 20:33:49 1876
原创 VsCode搭建C语言运行环境以及终端乱码问题解决
然后来到代码界面右键点击Run Code即可运行了,但是可能会出现终端显示中文乱码,这是因为vscode编辑器本身默认是使用的utf-8编码,而终端使用的编码格式为gbk,这两个编码格式在对于中文的处理上有些字符上的差异,所以在输出时自然就是会出现中文乱码的问题了。这是因为运行程序时是将文本内容以utf-8来保存的,但是终端输出就是用另外一个编码gbk来显示了,没有经过编解码转换就是会出现乱码问题。当然也可以安装一些其他的美化插件根据个人习惯,但是以上这两个是必装的。将以下的代码追加到大括号中就可以了,
2022-12-24 13:14:48 3557 5
原创 Mybatis缓存机制
MyBatis一级缓存的生命周期和SqlSession一致。MyBatis一级缓存内部设计简单,只是一个没有容量限定的HashMap,在缓存的功能性上有所欠缺。MyBatis的一级缓存最大范围是SqlSession内部,有多个SqlSession或者分布式的环境下,数据库写操作会引起脏数据,建议设定缓存级别为Statement。
2022-12-01 17:40:03 1447
原创 fastdfs上传图片后浏览器访问报错Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR
(这里我的fastdfs运行环境是在docker中) 事情是这样的,用APIfox测试fastdfs文件上传的时候发现明明返回的成功的结果但是在浏览器中使用路径却访问不到服务器上的图片,浏览器报错:Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR(服务器拒绝访问),起初以为是没上传成功,所以找到了。最近在学习fastdfs时遇到了一个困扰我数小时的问题,结果很感人,特在此记录下来,也是为了让其他小伙伴们避坑。
2022-11-21 12:53:28 3768 2
原创 Nacos集群搭建
官方给出的Nacos集群图:其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。
2022-10-18 11:31:44 1129
原创 一篇文章让你搞懂Java中的静态代理和动态代理
代理模式是常用的java设计模式,在Java中我们通常会通过new一个对象再调用其对应的方法来访问我们需要的服务。代理模式则是通过创建代理类(proxy)的方式间接地来访问我们需要的服务。举一个生活中的例子:像我们在网上通过中介租到其背后房东的房子,因为房东也嫌麻烦想省事,此时中介就相当于代理而房东则是被代理,两者是分开的,这样我们就不会直接访问到房东,大部分情况下在中介手中租到的房子都会比原价要贵一些,这好比代理的作用,即不需要通过房东。
2022-10-17 16:36:12 1783
原创 Shading-JDBC、ShadingSphere、ShardingProxy 使用详解
中,这种操作就是分库操作,分库操作可以减少每个数据库中存储的数据,当数据少了,查询的时候,单台数据库查找的数据量就减少了,从而加速了每台数据库查找速度。一般我们在提到分库分表的时候,大多是以水平切分模式(水平分库、分表)为基础来说的,数据分片将原本一张数据量较大的表。咱们先捋一下它们之间的关系,分片策略只是抽象出的概念,它是由分片算法和分片健组合而成,分片算法做具体的数据分片逻辑。一般是为字典表或者配置表。上边讲分片算法的时候已经说过,分片策略是一种抽象的概念,实际分片操作的是由分片算法和分片健来完成的。
2022-09-30 23:57:03 3413
原创 Redis的安装和基本使用
什么是RedisRedis是一个基于内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件,它是「RemoteDictionaryService」的首字母缩写,也就是「远程字典服务」。基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛使用Redis能做什么数据缓存消息队列注册中心发布订阅Redis简介。
2022-09-27 00:20:07 2409
原创 CentOS 7中JDK、Tomcat、MySQL、maven的安装介绍
那实际上,对于rpm安装的mysql,在mysql第一次启动时,会自动帮我们生成root用户的访问密码,并且输出在mysql的日志文件 /var/log/mysqld.log中,我们可以查看这份日志文件,从而获取到访问密码。我们目前安装的Linux操作系统,安装完毕之后并没有配置IP地址,默认IP地址是动态获取的,那如果我们使用该Linux服务器部署项目,IP动态获取的话,也就意味着,IP地址可能会发生变动,那我们访问项目的话就会非常繁琐,所以作为服务器,我们一般还需要把IP地址设置为静态的。
2022-09-27 00:17:00 1360
原创 IDEA集成git、Git的使用以及常用命令详解
版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件,而且可以对任何类型的文件进行版本控制。常见的版本控制系统有:cvs、svn、git。
2022-09-24 01:22:33 2767
原创 使用idea操作git(ssh协议)
我们发现,使用IDEA上的git功能,当使用ssh协议出现了可以commit但无法push和pull的问题,经过测试发现原因是Could not read from remsitory。在网上看到,在Settings->Version Control->Git中,将SSH executable设置为Native即可,如图,红色方框中是要修改的地方。将生成的id_rsa.pub中的内容添加到相应的git服务器,需要放置到个人帐号中的仓库里。(1)产生key,在这个过程 中,可以添加“你的github账号名”
2022-09-24 01:16:59 4435
原创 SpringSecurity认证授权和整合项目
Spring Security 是 Spring 家族中的一个安全管理框架,应用程序的两个主要区域是“认证”和“授权”(或者访问控制)
2022-09-22 23:55:25 1597
原创 IDEA生成带参数和返回值注释
选择Live Template 新建一个模板—或者选择下面一个Template Group 新建一个模板组在这个模板组下面再次点击Live Template 新建模板、填写模板文本----在右侧菜单列表下,选择 Java --> JavaDoc—也可直接搜索 JavaDoc。在右侧菜单列表下,选择 Java --> JavaDoc—也可直接搜索 JavaDoc。打开IDEA进入点击左上角 - 文件 - 设置 - 编辑器 - 活动模板。导航到编辑器 --> 检查。导航到编辑器 --> 检查。
2022-09-17 17:42:59 4268
原创 MyBatisPlus标准数据层开发和DQL和DML编程控制介绍(代码生成器)
SpringBoot整合MyBatisPlus入门程序①:创建新模块,选择Spring初始化,并配置模块相关基础信息②:选择当前模块需要使用的技术集(仅保留JDBC)③:手动添加MyBatisPlus起步依赖
2022-09-12 23:32:03 1412
原创 SpringBoot基础配置和整合第三方技术
SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程原生开发SpringMVC程序过程入门案例开发步骤①:创建新模块,选择Spring初始化,并配置模块相关基础信息②:选择当前模块需要使用的技术集③:开发控制器类";} }④:运行自动生成的Application类最简SpringBoot程序所包含的基础文件
2022-09-11 17:02:31 1239
原创 Lombok介绍和配置、常用注解说明
Lombok是一个Java库,能自动插入编辑器并构建工具,简化Java开发。官网: https://www.projectlombok.org/
2022-09-10 22:07:12 1282
原创 SpringMVC整合SSM、RestFull、异常处理器和拦截器讲解
REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。Fielding是一个非常重要的人,他是HTTP协议(1.0版和1.1版)的主要设计者、Apache服务器软件的作者之一、Apache基金会的第一任主席。所以,他的这篇论文一经发表,就引起了关注,并且立即对互联网开发产生了深远的影响。他这样介绍论文的写作目的:“本文研究计算机科学两大前沿----软件和网络----的交叉点。长期以来,软件研究主要关注软件设计的分类、设计方法的演化,很少客观地评估不同的设计选择对系统行为的
2022-09-08 16:48:01 451
原创 SpringMVC请求响应数据详解和常用注解介绍
服务器端程序,一般都基于两种形式,一种C/S架构程序,一种B/S架构程序. 使用Java语言基本上都是开发B/S架构的程序,B/S架构又分成了三层架构三层架构: 表现层:WEB层,用来和客户端进行数据交互的。表现层一般会采用MVC的设计模型 业务层:处理公司具体的业务逻辑的 持久层:用来操作数据库的MVC全名是Model View Controller 模型视图控制器,每个部分各司其职。 Model:数据模型,JavaBean的类,用来进行数据封装。 View:指JSP、HTML用来展示数据给用户
2022-09-07 18:09:52 761
原创 Spring中AOP及事务管理详解
AOP:Aspect Oriented Programming,面向切面编程。是通过预编译方式(aspectj)或者运行期动态代理(Spring)实现程序功能的统一维护的技术。AOP是OOP(面向对象编程)的技术延续,是软件开发中的一个热点,也是Spring中的一个重要内容。利用AOP可以实现对业务逻辑各个部分之间的隔离,从而使得业务逻辑各部分之间的耦合性降低,提高程序的可重用性,同时提高了开发效率。作用:不修改源码的情况下,进行功能增强,通过动态代理实现的优势:减少重复代码,提高开发效率,方便维护比如:给
2022-09-05 14:40:19 1165
原创 Maven注解开发深入
2. 创建核心配置类在包里创建核心配置类3.创建Service接口实现4.创建单元测试类@ComponentScan这个注解的作用就是用来扫描指定包下的所有类。如果哪个类身上打了注解(@Controller | @Service | @Repository | @Component),就被spring给管理起来。默认情况下Spring管理这些对象的时候,**他们的id名字就是类的名字,但是第一个字母小写。**我们是否可用修改这种命名策略呢?说明默认的BeanName生成策略:
2022-09-05 09:38:29 810
原创 Spring中IOC和DI注解开发以及整合第三方技术
1) 准备工作创建Maven项目,导入依赖坐标2) 编写代码,并注解配置接口3) 开启组件扫描创建,注意引入的名称空间4) 功能测试创建一个测试类,调用Service步骤小结导入依赖定义接口和实现类(dao 和 service)在实现类上面打上注解 @Component在属性上面打上注解@AutoWired在applicationContext.xml里面打开扫描的开关
2022-09-04 13:14:29 376
原创 Spring工厂模式解耦和控制反转IOC/DI注入介绍
Spring 是分层的Java SE/EE应用 full-stack(服务端的全栈)轻量级(跟EJB比)开源框架,以IoC(Inversion of Control控制反转,目的是解耦)和AOP(面向切面编程,本质是动态代理,目的是增强)为内核Spring家族有很多的框架,涉及到所有层(web |service |dao)今天学的Spring仅仅是Spring家族里面的其中一个框架 Spring Framework (IOC + AOP)提供了:表现层(web层): Spring MVC。
2022-09-02 21:20:25 443
原创 什么是cookie和session
cookie:客户端的会话技术,保存数据在浏览器!cookie:一个名称和一个值 一些可选属性 cookie存储的数据大小和个数都有限cookie写入:response.addCookie() 将cookie从服务器 写入到浏览器cookie获取:request.getCookies()Cookie的作用在浏览器中存放数据将浏览器中存放的数据携带到服务器Cookie的应用场景1.记住用户名。
2022-08-25 19:37:46 2503 1
原创 MyBatis增删改查和动态sql的使用
开发中通过 pojo 传递查询条件 ,查询条件是综合的查询条件,不仅包括用户查询条件还包括其它的查询条件(比如将用户购买商品信息也作为查询条件),这时可以使用包装对象传递输入参数。新增用户后, 同时还要返回当前新增用户的 id 值,因为 id 是由数据库的自动增长来实现的,所以就相当于我们要在新增后将自动增长 auto_increment 的值返回。Mybatis 的映射文件中,前面我们的 SQL 都是比较简单的,有些时候业务逻辑复杂时,我们的 SQL是动态变化的。这样我们将如何进行参数的传递?
2022-08-18 20:51:43 890
原创 Maven安装和依赖管理详解
Maven是项目进行模型抽象,充分运用的面向对象的思想,Maven可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。说白了:
2022-08-16 20:35:14 2903
原创 MySQL数据库安全性问题的演示
3.设置A窗口的隔离级别为read uncommitted(读未提交)3.设置A窗口的隔离级别为Read committed(读已提交)6.在A中查询账户---->zs:900,ls:1100 脏读。不可重复读: 在一个事物里面,同一条语句,两次查询的结果不一致.8.在A中查询账户(两次查询的结果不一致,不可重复读发生)8.A中查询账户----->解决不可重复读。2.分别查询A,B的隔离级别。2.分别查询A,B的隔离级别。2.分别查询A,B的隔离级别。2.分别查询A,B的隔离级别。
2022-08-10 16:02:43 432
原创 MySQL安装连接IDEA和常用的sql语句介绍
去360/软件管家或者控制面板卸载(删除之前先找到下面这两个文件夹)一定要删除这两个文件夹(数据库安装路径和数据存放路径,这两个文件夹在配置文件里面my.ini)的,本教程也只适用于这个绿色版的,如果下载的是安装包那就可能有些地方不一样了,具体哪不一样那咱也不太清楚,所以就需要另外搜索安装教程了咯,安装完成之后,继续剩下的步骤即可,(这是一个C++库,上面的我的资源分享中有,可以自行下载)安装时出现上面的提示,就是系统缺失类库,需要安装vcredist_x64.exe。配置文件,放入到MySQL解压包下。
2022-08-09 19:19:37 711
原创 Java中的设计模式(单例/多例)介绍
单例设计模式的作用单例模式,是一种常用的软件设计模式。通过单例模式可以保证系统中,应用该模式的这个类只有一个实例。即一个类只有一个对象实例。单例设计模式实现步骤将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。在该类内部创建一个唯一的对象定义一个静态方法返回这个唯一对象。例设计模式的类型根据实例化对象的时机单例设计模式又分为以下两种:概述: 饿汉单例设计模式就是使用类的时候已经将对象创建完毕,不管以后会不会使用到该实例化对象,先创建了再说。很着急的样子,故被称为“饿汉模式”。懒汉式
2022-08-08 18:19:12 900
原创 网络编程、TCP通信案例
这就好比在道路中行驶的汽车一定要遵守交通规则一样,协议中对数据的传输格式、传输速率、传输步骤等做了统一规定,通信双方必须同时遵守,最终完成数据交换。由于这种面向连接的特性,TCP协议可以保证传输数据的安全,所以 应用十分广泛,例如下载文件、浏览网页等。IPv6:由于互联网的蓬勃发展,IP地址的需求量愈来愈大,但是网络地址资源有限,使得IP的分配越发紧张。为了扩大地址空间,拟通过IPv6重新定义地址空间,采用128位地址长度,每16个字节一组,分成8组十六进制数,表示成。常见浏览器有谷歌、火狐等。......
2022-08-06 21:16:02 951
原创 线程等待唤醒机制、Lambda表达式和Stream流讲解
概述: 可以将流式思想类比成工厂车间的流水线\河流…特点:流一定要搭建好完整的函数模型,函数模型中必须要有终结方法Stream流不能重复操作,也就是一个Stream流只能使用一次Stream流不会存储数据的Stream流不会修改数据源。
2022-08-02 21:29:44 289
原创 通过IDEA构件jar包转.exe可执行程序步骤
接着进入到以下界面,项目中可能有多个模块,选中你想要打包的模块,点击文件图标会自动扫描该模块中的main方法所在文件,直接选中即可,白色框框中的路径一般不需要改,会自动生成在项目src文件下,最后点击应用确认就可以了。最后来到项目的根目录下,找到其中的 out 文件,进去,然后找到 artifacts 文件,进去,最后找到项目名文件,再进去,你就会惊喜的发现里面有一个 .jar 后缀的文件,没错这就是你打包后的文件,待会要用的。设置好了后还没结束,来到idea中,点击上方的构建,选图中的编译…
2022-07-19 16:45:49 2563 8
原创 Java 学生管理系统(详解)
以上就是整个项目的所有的代码了,因为大都是些 Java 的基本语法,选择结构和循环结构组成的所以就没有加什么注释了,相信学了 Java 前面的一些基本语法后应该都能看出个大概,剩下的可以交给百度。。
2022-07-18 21:36:47 20235 12
原创 IDEA清空控制台以及Java中运行cmd命令实现清屏操作
以上就是介绍的 Windows 下清空 cmd 和 idea中 三种清空控制台的方法,希望让那些遇到同样问题的小伙伴们少走弯路哈。
2022-07-15 12:12:44 13261
原创 Java 求解自幂数(水仙花数)
如果在一个固定的进制中,一个 n 位自然数等于自身各个数位上数字的 n 次幂之和,则称此数为自幂数。例如:在十进制中,153 是一个三位数,各个数位的3次幂之和为1^3+5^3+3^3=153,所以 153 是十进制中的自幂数。在n进制中,所有小于n的正整数都为自幂数,比如2进制中1是自幂数,3 进制中1 和 2 都是自幂数,4 进制中 1,2 和 3 都是自幂数......“水仙花数”也被称为:超完全数字不变数、自恋数、自幂数、阿姆斯壮数 或 阿姆斯特朗数。......
2022-06-29 00:32:07 1713
原创 电脑常用快捷键大全(收藏)
以上就是我给大家分享的所有内容啦,主要是Windows 常用的一些快捷键以及一些实用的小功能,可能由于系统的原因有些快捷键并不能在每台电脑上都能使用,但是大部分肯定是能用的,我个人比较推荐使用的快捷键已经加粗带高亮了,如果你把这些都熟练使用了的话那你就厉害了,你的电脑用起来一定会像德芙那样丝滑。。......
2022-06-22 23:17:40 7128 5
原创 Git、TortoiseGit中文安装教程,如何注册Gitee账号进行代码提交,上传代码后主页贡献度没显示绿点(详解)
下面是两款软件的介绍:Git 是一款免费、开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是 Linus Torvalds 为了帮助管理 >Linux 内核开发而开发的一个开放源码的版本控制软件。ortoisegit 是一款图形化的软件,让我们可以使用图形化界面来操作git。*...
2022-06-20 02:29:09 2712
原创 C语言实现扫雷游戏(完整版)
下面就是扫雷中使用到的所有函数,为了省事我把所有的代码都放在一个C文件中实现宏定义中设置了游戏的界面布局,以及设置地雷的个数(这里默认的是10个地雷),界面是一个的方格布局函数定义游戏规则设定这里使用了函数递归的方式来实现周围8个方格如果都没有地雷的话就一次性展开使用空格来填补,以及通过字符的ASCII码值来计算周围八个方格中地雷的数量以数字形式显示周围地雷个数。接下来就可以进行简单的排雷操作了,输入坐标进行排雷,直到排完所有雷则通过游戏,如果输入的方格坐标为之前布置的雷坐标那么恭喜你踩到雷了游
2022-06-03 11:48:56 9043 3
原创 C语言常见的八大排序(详解)
冒泡排序在一组需要排序的数组中,对两两数据顺序与要求顺序相反时,交换数据,使大的数据往后移,每趟排序将最大的数放在最后的位置上如上是一种最简单的实现方式,需要注意的可能是i, j的边界问题,这种方式固定循环次数,肯定可以解决各种情况,不过算法的目的是为了提升效率,根据冒泡排序的过程图可以看出这个算法至少可以从两点进行优化:如上,当nflag为0时,说明本次循环没有发生交换,序列已经有序不用再循环,如果nflag>0则记录了最后一次发生交换的位置,该位置以后的序列都是有序的,循环不再往后进行。这种方法
2022-06-02 23:27:31 4158 1
Java斗地主.zip
2022-07-31
VC++6.0 MSDN.zip-中文-英文
2022-06-13
Everything-搜索引擎-中文下载
2022-06-10
Snipaste-截图-免安装
2022-06-03
Git-2.36.1-64-bit、TortoiseGit、TortoiseGit-LanguagePack简体中文包
2022-06-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人