![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
实战开发
文章平均质量分 77
开发过程中的点滴
架构帅
JAVA工程师
展开
-
@Autowired自动注入map
参考文档https//my.oschina.net/u/1000241/blog/3029017。适用于一个接口有多个实现类,然后根据不同的参数选择执行不同的实现类,其实这种通过@Autowired注入map(接口有多个实现类),这里有三个实现类,都实现了KakfaStrategy接口;除了可以注入到map中,也可以注入到list等其他集合中;spring是支持基于接口实现类的直接注入的;支持注入map,list等。中,不用做其他的配置,直接注入;这种方式多用于策略模式中。......转载 2022-07-28 14:37:04 · 5698 阅读 · 0 评论 -
13个认证授权常见面试题/知识点总结!(2021 最新版)
大家好,我是 Guide哥!端午已过,又要开始工作学习啦!我发现有很多小伙伴对认证授权方面的知识不是特别了解,搞不清 Session 认证、JWT 以及 Cookie 这些概念。所以,根据我根据日常对这部分学习已经在项目中的实际运用总结了这 13 个相关的问题并且附上了详细的回答。希望能够对大家有帮助!认证 (Authentication) 和授权 (Authorization)的区别是什么?这是一个绝大多数人都会混淆的问题。首先先从读音上来认识这两个名词,很多人都会把它俩的读音搞混,所以我转载 2021-06-15 18:17:54 · 847 阅读 · 0 评论 -
git库的膨胀导致:[remote rejected] master -> master (pre-receive hook declined) error: failed to push s
某天回家,本地修改好相关文档,开始推送到远程,结果,idea报了个错:Push rejectedPush master to origin/master was rejected by remote为避免idea的问题,又用git bash手动push,结果还是报错:! [remote rejected] master -> master (pre-receive hook declined)error: failed to push some refs to 'git@xxxxx..原创 2021-01-04 21:46:30 · 5749 阅读 · 2 评论 -
浅析VO、DTO、DO、PO的概念、区别和用处
由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念:概念:VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数.转载 2020-12-24 10:32:03 · 255 阅读 · 0 评论 -
阿里云如何获取AccessKey ID和AccessKey Secret
https://help.aliyun.com/knowledge_detail/38738.html原创 2020-12-19 18:25:29 · 14998 阅读 · 1 评论 -
SpringBoot整合发送邮件的四种方式
邮件发送是一个非常非常常见的功能,注册时的身份认证、 重要通知发送等都会用到邮件发送。Sun公司提供了JavaMail用来实现邮件发送,但是配置烦琐。Spring 中提供了JavaMailSender用来简化邮件配置。Spring Boot 则提供了 MailSenderAutoConfiguration 对邮件的发送做了进一步简化现在我们就来学习在Spring Boot中如何发送邮件。本文将介绍四种类型邮件的发送方式:简单文本邮件、带附件邮件、邮件正文带图片、使用Themeleaf构...原创 2020-08-14 13:55:41 · 8029 阅读 · 2 评论 -
maven项目pom.xml中parent标签的使用
使用maven是为了更好的帮项目管理包依赖,maven的核心就是pom.xml。当我们需要引入一个jar包时,在pom文件中加上<dependency></dependency>就可以从仓库中依赖到相应的jar包。 现在有这样一个场景,有两个web项目A、B,一个java项目C,它们都需要用到同一个jar包:common.jar。如果分别在三个项目的pom文件中定义各自对common.jar的依赖,那么当common.jar的版本发生变化时,三个项目的...转载 2020-08-12 16:25:36 · 809 阅读 · 0 评论 -
shiro SecurityUtils.getSubject()深度分析
1.总的来说,SecurityUtils.getSubject()是每个请求创建一个Subject, 并保存到ThreadContext的resources(ThreadLocal<Map<Object, Object>>)变量中,也就是一个http请求一个subject,并绑定到当前线程。问题来了:.subject.login()登陆认证成功后,下一次请求如何知道是那个用户的请求呢?友情提示:本文唯一可以读一下的就是分析这个疑问,如果你已经明白就不用往下看了。首先给出内...转载 2020-08-10 20:44:08 · 1836 阅读 · 0 评论 -
mybatis-plus执行自定义sql报 Invalid bound statement错误怎么办
Mybatis-Plus (简称MP) 是mybatis的一个增强工具,在mybatis的基础上只做增强不做改变,简化了开发效率。其实就是帮我们封装了一些简单的curd方法,可以直接调用,不必再重写这些简单的sql语句。 Mybatis-plus自带的条件构造器虽然很强大,在项目实战的时候,各种复杂的应用场景,你肯定避免不了要写稍微复杂一点的sql语句,又或者一些朋友习惯通过写sql来操作数据,于是我们就需要在使用mybatis-plus的基础上自定义sql语句。 ...原创 2020-08-07 22:58:33 · 4032 阅读 · 2 评论 -
阿里druid报错java.lang.IllegalArgumentException: illegal maxActive 2
在使用druid的时候,报了一个异常,错误如下:这个异常很常见,违法的参数异常,说明maxActive 2配置有误。但是哪里配置有误呢?我翻了半天博客也没找到解决方案,怎么办呢?万事不决debug,看源码。结果就如上图所示。我设置的maxActive(最大连接数)是2,而minIdle(最小空闲数)是3,最大连接数比最小空闲数还小,自热而然就报了违法参数异常。解决办法自然也就出来了,修改maxActive的值,保证不小于minIdle就行了。...原创 2020-08-06 17:14:06 · 4489 阅读 · 2 评论 -
阿里云服务器centos7挖矿病毒处理
【阿里云】尊敬的1*********6:云盾云安全中心检测到您的服务器:1xx.xx.xx.x5(gateway)出现了紧急安全事件:主动连接恶意下载源,建议您立即登录云安全中心控制台-安全告警处理http://a.aliyun.com/f1.gYVW7 进行处理。云安全中心提供企业版7天免费试用,您可以开通试用查看更多信息。如果您在处理过程中遇到问题,可以咨询阿里云官方电话95187-1处理过程:1、查找异常进程,确定病毒进程,定位病毒脚本的执行用户2、杀掉病毒进程,注意要检查清楚,病...原创 2020-08-05 18:37:52 · 3169 阅读 · 0 评论 -
new 出的对象无法使用 @Autowired装配进来的属性,会报空指针异常
异常描述原本我再测试RabbitMQ的发送程序,里面用到了一个AmqpTemplate接口,用了@Autowired注解。但是当我使用AmqpTemplate的convertAndSend()方法时却总报空指针异常 :java.lang.NullPointException错误代码修改过的可重现问题代码:@Componentpublic class Test { //修改过的重现问题代码 @Autowired AmqpTemplate amqpTemplate; .转载 2020-07-20 16:59:49 · 1371 阅读 · 1 评论 -
阿里云ECS服务器8080端口访问不了
问题分析:使用阿里云ECS服务器,在tomcat上部署项目,或者直接启动Spring Boot的jar时,通过类似http://111.11.122.122:8080/hello?username=hh的url会发现8080端口访问不了。访问不了的原因是:1、阿里云ECS服务器没有配置8080端口的规则2、阿里云ECS服务器没有开放8080端口解决办法:第一步:配置8080端口规则进入实例详情页面--->点击左下角“本实例安全组”---->安全组列表---->配原创 2020-06-29 17:35:16 · 6395 阅读 · 6 评论 -
Python发送邮件详细介绍
1、开启SMTP服务如果想要发送邮件,我们需要开启SMTP服务,这里以QQ邮箱为例:设置--账户拉到下面,找到账户安全,如下图所示,需要做的就是开启SMTP服务,然后生成授权码,代码中发邮件的时候需要用到授权码:2、不带附件代码示例如下,关键处请替换为自己的邮箱、口令密码等。#!/usr/bin/python3import smtplibfrom email.mime.text import MIMETextfrom email.header import H.原创 2020-06-15 16:40:21 · 1351 阅读 · 0 评论 -
Java实现根据地址调用高德地图获取经纬度等信息
最近在做一个车辆调度的应用系统,需要根据车辆和站点的位置做相应的规划,因此要调用第三方的地图接口来获取经纬度等信息。这里,我选择的是高德平台,下面是一个从注册到简单使用的例子,可供大家学习参考,更深入的使用,大家可参考官网学习。1、关于高德开放平台高德开放平台的网址:http://lbs.amap.com/注册账号:如果之前没有注册过账号,先注册账号。2、创建应用注册号账号,登...原创 2020-04-22 16:12:24 · 5574 阅读 · 0 评论 -
Java 格式化输出JSON字符串:fastjson和gson
方式一、使用阿里的FastJson1、项目的pom.xml依赖<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.58</version></depende...原创 2020-04-21 14:44:18 · 6896 阅读 · 0 评论 -
遍历JSONObject、JSONArray (适用任意复杂结构类型)
本文讲述如何遍历简单JSONObject,嵌套JSONObject,任意类型JSONObject的遍历操作。原创 2020-02-22 14:41:36 · 14815 阅读 · 0 评论 -
关于BETA、ALPHA、RC、RELEASE、GA、SNAPSHOT等版本号的意义
版本号版本号,顾名思义,系统、架包、软件的标识号。版本号的数字信息通俗易懂,格式:主版本号+次版本+(修正版本号build-可选)+(编译版本号-可选)+英文常见号(重点)。常见号:英文各种架包名,Maven的依赖,官网API时,常见,GA、SNAP-SHOT、RELEASE、ALPHA、BETA、RC等版本号。Alpha、Beta、Gamma版本以下三者,在系统、架...转载 2020-02-10 22:13:06 · 313 阅读 · 0 评论