- 博客(26)
- 收藏
- 关注
原创 可以不通过注解,多态不可以自动找到要实现的service接口的实现类吗
在Java中,多态是一种通过父类引用指向子类对象的机制,它允许使用父类类型的变量来引用不同子类类型的对象。尽管多态可以在运行时确定要调用的方法,但它无法自动找到要实现的接口的具体实现类。要实现这个目标,可以使用依赖注入框架或手动创建实现类的实例来管理和注入具体的实现类。如果没有使用依赖注入框架,你可以手动创建实现类的实例,并将其传递给需要接口类型的变量。要找到具体的接口实现类,需要使用其他机制,例如依赖注入框架(如Spring)或手动创建和管理实现类的实例。
2023-05-23 18:00:17
170
原创 为什么service需要写接口和实现,而不直接写实现类
如果你需要更换服务实现或者添加新的实现,只需要更改注入的实现类,而不需要修改控制器中的代码。在控制器中,通过使用`@Autowired`或`@Resource`注解并指定相同的限定符值,告诉Spring框架要注入的是哪个具体的实现类。总之,使用接口和实现类的方式来定义服务层是一种良好的编程实践,它提供了代码的解耦合、可扩展性和可测试性。需要注意的是,如果有多个实现类匹配同一个接口,需要使用限定符(qualifier)或者其他方式进行指定,以确保正确的实现类被注入到控制器中。// 实现类A的具体实现。
2023-05-23 17:50:35
5657
原创 @RequestMapping
总之,@RequestMapping注解是Spring MVC中用于映射HTTP请求的重要注解,它提供了灵活的方式来定义URL路径和请求方法,以便将请求路由到相应的方法或控制器类进行处理。它用于定义URL路径和HTTP请求方法,以便将请求映射到相应的方法或控制器类。在类级别上使用@RequestMapping注解可以指定控制器类的根路径,而在方法级别上使用它可以进一步定义具体的请求路径。@RequestMapping是一个注解,用于将HTTP请求映射到处理请求的方法或控制器类上。
2023-05-21 17:12:18
331
原创 为什么dao层和service层要用接口?
先说dao,这玩意儿是做数据库读写的。再从抽象角度说,不同业务模块之间的共用,不一定是共用某段代码,也可能是共用某段逻辑框架,这时候就需要抽象一个接口层出来,再通过不同的注入逻辑实现。有各种理由可以支持这种工序的合理性,比如一般来说,上一层的一行代码会对应下一层的好多行代码,那先让写上层代码的人写一遍,解决高端层面的bug,会提高很多效率。没有良好接口设计能力的人,写出来的接口抽象不合理,等于没写,什么好处都得不到,只有坏处,这种情况下干脆别写。最简单的场景,写接口的是你,写实现的是你小弟。
2023-05-14 16:44:14
932
原创 vscode中//需要空格和tab制表位的问题
原来eslint是一个语法检查工具,但是限制很严格,在我的vue文件里面很多空格都会导致红线(红线可以关闭提示),虽然可以关闭,但是在编译的时候老是会跳出来,所以能关闭是最好的了。然后再重新运行一下npm run dev或者构建命令 npm run build。
2023-04-22 11:14:45
244
原创 怎样用通俗的语言解释REST,以及RESTful?
在之前的桌面时代问题不大,但是近年来移动互联网的发展,各种类型的Client层出不穷,RESTful可以通过一套统一的接口为 Web,iOS和Android提供服务。另外对于广大平台来说,比如Facebook platform,微博开放平台,微信公共平台等,它们不需要有显式的前端,只需要一套提供服务的接口,于是RESTful更是它们最好的选择。格式一般是JSON。PhD的毕业学校是 UC Irvine,Irvine在加州,有着充裕的阳光和美丽的海滩,是著名的富人区。众说周知,论文都是晦涩难懂的。
2023-04-13 08:36:39
56
原创 renrenfast nacaos与springboot2.6.6冲突导致启动不了renrenfast
我是直接把nacos的版本设置为如图就成功了。
2023-04-11 23:10:19
181
原创 思维导图软件推荐
测试标签的最大字数限制+图片:测试不出来 没有合适的文档测试,但是估计不会小。我需要思维导图软件:mindmanager、mind、 master 关键思维导图中可以又标题备注 备注中可以添加图片 但是具有这个功能没有收费的软件少。问题1、测试了mindmanager的导出文件格式,和导入到其他mind软件,会不会导致我最想要的功能便签功能和里面的内容失效。问题3、导出便签中签中含有图片时,ecxel和word中图片看不到,只有一个图片的框保存的文件测试图片,保存的文件测试图片如下。
2023-04-11 16:38:10
74
原创 直播设备从硬件到软件
用obs直播推流到其他多平台,建议采用两台电脑,一台电脑直播,一台电脑负责推流。如果没有两台合适的电脑推流用平板来替代(等待测试)。普通直播:户外:简单录视频:聊天直播:用手机就行,或者随便一台电脑+一个麦克风+摄像头(手机就不需要摄像头)。3、直播画面监视:本来直播是有延迟几十秒:那么我实时收到的弹幕也是延迟了,延迟这么一点真的是坏事吗?1、采集卡暂无:需要一个采集卡+需要的线(因为是用平板或者手机推流),现在需要解决的主要问题?最好的设备:硬件:一台游戏电脑+一台推流电脑+一个采集卡+摄像头+麦克风。
2023-04-11 16:24:21
161
原创 spring boot,DAO层、ENTITY层、SERVICE层、CONTROLLER层之间的关系
5、View层 此层与Controller控制层结合比较紧密,需要二者结合起来协同工作。View层主要负责前台jsp页面的表示。另外一种总结1、DAO层: 持久层 主要与数据库进行交互DAO层主要是做数据持久层的工作,主要与数据库进行交互。DAO层首先会创建DAO接口,然后会在配置文件中定义该接口的实现类,接着就可以在模块中就可以调用DAO 的接口进行数据业务的而处理,并且不用关注此接口的具体实现类是哪一个类。DAO 层的数据源和数据库连接的参数数都是在配置文件中进行配置的。
2023-04-11 16:05:29
4695
原创 spring,springmvc ,springboot注解
到之后学到Spring的注解,Spring MVC的注解,Spring Boot的注解,Spring Cloud包括其中各种组件(比如nacos)注解。简直学习乱了,该怎么整理一下呢?先翻译在看理解一个的来,一类一类的分类。在开始接触java的时候,从最开始java中带的几个注解:详见我的“java基本注解”那个文章。
2023-04-11 16:03:27
39
原创 java基本注解
Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。Java 注解是从 Java5 开始添加到 Java 的。将上面的话再翻译一下,如下:(1)元数据在开发中的作用就是做数据约束和标准定义,可以将其理解成代码的规范标准(代码的模板);(2)代码的模板(元数据)不直接影响代码的执行,它只是帮助我们来更快捷的开发;
2023-04-08 14:44:07
64
原创 SSM、Spring MVC、Spring Boot、Spring、Spring Cloud、MyBatis
在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter方法来注入,而不需要你在A里面new这些bean了。之前开发Spring工程,除了引入依赖,还需要配置许多上下文容器中的配置,例如我们数据库配置,bean的配置,mvc mapping的声明,都是十分麻烦的。,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;
2023-04-08 14:28:26
789
原创 开始学习编程电脑环境需要做那些的准备,避免以后踩坑
配置:建议:电脑配置尽量高点,没有配过台式机装过系统的人,尽量不要用自己的第一次配的电脑来学习。对于很多人来说,电脑又很多种的用途,打游戏,看剧,做ppt,做表格办公等,却不管理自己的电脑,要学习编程的时候中间又回碰到c盘爆红,其他盘空间不足。1、电脑的名字一定不要带上空格、特殊字符、符号、汉字。建议用一台专门用于编程的电脑,不要在去用这台电脑装广联达,建模软件,盗版软件,剪辑视频,开模拟器等等。2、ip设置:很多时候连接数据库,我们电脑的ip地址会变化,如果是自动获取ip地址,建议固定自己的ip地址。
2023-04-06 11:26:51
150
原创 command命令
有人发现当他们用Word或者别的文本编辑器写好一篇文章,兴高采烈地发布到博客、论坛、网站上时,发现格式完全乱了,于是需要花费大量的时间来重新排版,处理图片、缩进、字体、加粗、标题等。不在根目录访问文件分两种情况:1、访问的文件在当前文件的子路径中(图中两种方式均可)2、访问的文件不在当前的的子路径:A回到根目录用(图中两种方式均可)B:a在当前目录直接用绝对路径,b用相对路径cd 相对路径。如果配置redis时,自动下载最新的版本,而不启动自己下载的redis 配置时在-d redis:版本。
2023-04-05 17:20:37
73
原创 关于搭建renren-fast vue时,npm install 各种报错
关于浏览了很多解决办法和查看错误信息,总结了错误和遇到的问题,期望大家不要走弯路弯路。1、关于网上说的版本不匹配,package.json中的node-sass版本,是否能用老师讲的node.js和npm版本下载成功。这里估计有很多一番折腾。每个版本的node.js是自带的npm的版本。2、关于python环境设置,建议把设置好全局的python3和python2版本的环境变量。注意后面是否带上“\”。
2023-04-02 21:38:03
1672
1
原创 renren-fast引入项目后pom部分无法解析
1.全部groupid和artifact和version都爆红,是maven中的repository中的版本不一致或者仓库中没有,pom把version更改到和仓库一样的版本,没有的要想办法下载一个版本。一:删除idea中引用的maven的仓库中的文件,刷新moven->clear->compile->重启idea->刷新moven->clear->compile->。这一步不行,执行下一步。这是我遇到的问题解决,问题千千万万,环境千千万,bug千千万。二:在pom中定位到爆红和无法解析的引用,
2023-04-01 10:34:16
330
原创 command
1.停止运行该容器实例:docker stop id 或者停止所有运行的容器实例docker ps -a。如果配置redis时,自动下载最新的版本,而不启动自己下载的redis 配置时在-d redis:版本。docker images 展示安装的镜像 docker ps 当前正在运行的镜像的容器。dockers exec -it redis redis-cli 到redies容器的控制台。4.删除所有的docker:镜像docker rmi $(docker images -q)
2023-04-01 10:12:59
33
原创 数据库语句复制执行问题
数据库sqlyog复制数据库时,复制第二个表的语句要粘贴时, 前面的语句还在,又要找复制语句和第一条语句断开的位置去选择 ,再执行,真实很慢很难找,解决办法:再sqlyog中选择全选不用的sql语句,按下删除键。简而言之就是把之前用过的sql语句删除了,也不会影响他们已经执行成功的数据里的数据。
2023-04-01 10:11:34
58
转载 Linux中国
命令可以告诉你很多网络连接配置和状态的信息,但是所有这些词和数字意味着什么?让我们深入了解一下,看看所有显示的值都试图告诉你什么。命令的输出中 —— 例如传输数据包的统计信息。如果您想查看发送和接收的数据包数量以及冲突数量的列表,可以使用以下。它已经在基于systemd 的 Linux 系统上使用了一段时间了。接口名称取决于硬件的物理位置。列出的其他值也告诉了我们很多关于接口的知识,但我们需要知道。所以,这里显示的是上面展示的。告诉我们很多我们正在使用的硬件的信息。命令提供有关系统路由表的信息。
2023-03-31 08:43:51
87
原创 什么是vagrant,感觉很有意思!
这是vagrant可以选择的各种虚拟机软件中的linux系统的安装版本:地址是。3、直接通过命令在vagrant中去下载一个linux系统就行了。1、下载安装好虚拟机软件:virtualbox或者vmware。4、并且使用vagrant ssh登录到linux系统使用。一句话就是简化我们以前安装linux系统的各种繁杂的配置。2、安装好vagrant软件。
2023-03-30 10:51:54
269
1
原创 docker无法拉取镜像,错误代码error response from daemon:Head ......no such host
都说是/etc/resolv.conf中需要配DNS。不过听说重启虚拟机会失效,暂时没有尝试待补充。成功下载mysql:5.7。
2023-03-30 10:51:26
1920
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人