spring
一片蓝蓝的云
立志做码农的小白
展开
-
@Primary、@Qualifier使用
Spring注解解释(@Primary、@Qualifier)_悟空_的博客-CSDN博客_springboot qualifier转载 2023-01-05 21:14:20 · 778 阅读 · 0 评论 -
Springboot学习笔记-创建Springboot项目
1.安装SpringAssistant步骤:打开intellij-Preference-Plugins-输入SpringAssistant,点击安装,如下安装好后重新启动2.创建Springboot项目New-Project-选择Spring Assistant填写必要信息可以选择Spring Web填写项目名称,项目存放地址...原创 2020-12-01 15:40:43 · 368 阅读 · 0 评论 -
定时任务之@JobHandler
1.引入依赖 <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> <version>2.1.1-SNAPSHOT</version> </dependency>2.继承IJobHandler3.声明为b原创 2021-11-07 12:21:24 · 10536 阅读 · 3 评论 -
@PostConstruct
PostConstruct注解详细使用说明及理解_skh2015java的博客-CSDN博客转载 2021-10-22 17:03:25 · 67 阅读 · 0 评论 -
@Async异步调用
一.异步调用同步调用就是客户端等待调用执行完成并返回结果。异步调用就是客户端不等待调用执行完成返回结果,不过依然可以通过回调函数等接收到返回结果的通知。 ... 而异步调用指:程序在执行时,无需等待执行的返回值可继续执行后面的代码。二.开启异步调用1.在启动类上添加@EnableAsync注解@Configuration@EnableAsyncpublic class SpringAsyncConfig { ... }2.基于xml文件配置Bean文件配置: spr.原创 2021-10-14 21:00:44 · 515 阅读 · 0 评论 -
SpingBoot中编写注解
在Java开发中,会用到很多注解,比如@Autowired,@Bean,这些是SpringBoot框架给我们封装好的,那如何去编写属于自己的注解呢?一.元注解@Target1.@Target可以定义Annotation能够被应用于源码的哪些位置2.类或接口:ElementType.TYPE; 字段:ElementType.FIELD; 方法:ElementType.METHOD; 构造方法:ElementType.CONSTRUCTOR; 方法参数:ElementType.P原创 2021-10-11 19:13:04 · 263 阅读 · 0 评论 -
记一次@Lazy问题
背景在启动SpringBoot时出现这样的问题:直接启动失败初步解决百度后说是bean注入失败,于是不知道????♀️为啥,我竟然在AndroidService类中的AsyncTask加了@Lazy注解,竟然可以启动了。但是这改动了之前同学的代码,虽然问题暂时解决了,但还不是很清楚问题的根本原因于是仔细去翻了AndroidService的代码,可以发现:这个类中注入了AsyncTask,点击这个AsyncTask可以看到这个类被注入了@Lazy,而这个类就是!!!!我在原创 2021-09-10 13:12:22 · 457 阅读 · 0 评论 -
EnvironmentAware接口作用
一.学习背景在SpringBoot项目中,读取配置文件时,默认读取application.properties文件,但往往比较大的项目时会有很多配置文件,这就导致在运行代码时,到底是运行哪个配置文件呢?二.代码编写配置类实现EnvironmentAware接口,代码如下:@Configurationpublic class ApplicationConfig implements EnvironmentAware { private Environment environm原创 2021-08-07 13:42:07 · 856 阅读 · 0 评论 -
Springboot项目如何执行单元测试
一.学习背景在编写SpringBoot项目时,需要对Service层进行测试,这样可以减少测试成本,那如何对Service层进行测试呢?二.步骤引入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId>原创 2021-08-06 14:38:00 · 2501 阅读 · 0 评论 -
@JSONField
1.引入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.76</version> </dependency>2.@JSONField注解可以用在方法(method),属性(f原创 2021-07-23 18:11:26 · 5708 阅读 · 0 评论 -
@Scheduled用法
1.注解在方法顶部2.需要在类上加注解@EnableScheduling3.主要是定时做一些事情,定时的时间控制在注解后面的括号中具体用法:https://www.jianshu.com/p/1defb0f22ed1测试代码如下:@Component@EnableSchedulingpublic class ScheduledTask { @Scheduled(fixedDelay = 5000) public void reportName(){原创 2021-07-04 09:41:33 · 594 阅读 · 0 评论 -
MongoDb和SpringBoot结合
继承mongo要声明类型,比如参考文档:https://blog.csdn.net/weixin_39214304/article/details/84791953https://blog.csdn.net/weixin_43935907/article/details/86568387原创 2021-06-07 19:59:19 · 1440 阅读 · 0 评论 -
Spring中application-xxx.yml详解
在SpringBoot框架中,需要配置文件application-xxx.yml,但往往情况下,需要多个配置文件,比如如下:那SpringBoot启动时到底用哪个配置文件呢?1.在启动时,会优先加载application.yaml文件,在这个文件中有一个属性是spring.profile.active这行代表的意思是:指定读取配置文件:dev(开发环境),prod(生产环境),qa(测试环境)2....原创 2021-06-05 11:48:57 · 1104 阅读 · 0 评论 -
@Value的用法
记录不仅仅是记录,是为了成为更好的自己。就像遇见的那些人,也许不仅仅是遇见,而是让你明白,只有经历过那些,你才可以成为更好的自己。用法1.@Value(“${xxxx}”)注解从配置文件读取值的用法,也就是从application.yaml文件中获取值。比如存在application.yaml文件,配置内容如下:user: userName: xiaozhou sex: 女 age: 18在使用上述配置文件时,可以直接@Value(“${user.us.原创 2021-06-05 11:20:26 · 71246 阅读 · 5 评论 -
@RequestMapping和@GetMapping @PostMapping 区别
解释Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping},来帮助简化常用的HTTP方法的映射,并更好地表达被注解方法的语义。@GetMapping用于将HTTP GET请求映射到特定处理程序方法的注释。具体来说,@GetMapping是一个作为快捷方式的组合注释@RequestMapping(method = RequestMethod.GET)其他几种和@GetMapping.原创 2021-06-01 16:58:29 · 444 阅读 · 0 评论 -
@ApiOperation用法
作用:注解@ApiOperation是用来构建Api文档1.引入依赖在pom文件中引入依赖<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2</version></dependency>2.用法使用于在方法上,表示一个h原创 2021-05-29 15:32:03 · 37561 阅读 · 2 评论 -
Spring学习笔记-@Import 与 @ImportResource
@Import1.使用场景:2.在resource目录下新建个component-beans1文件,在这个文件里定义bean但此时需要在把该文件的bean扫描到ioc容器里,该如何做呢?<import resource="component-beans1.xml"/>根据上面的import即可以导入之前的bean了@ImportResource1.2....原创 2021-04-25 11:45:28 · 665 阅读 · 0 评论 -
Spring学习笔记-Mybatis中Mapper和MapperScan注解
@Mapper和@MapperScan两个注解是在Spring和Mybatis结合中会使用的注解。那这两个注解到底有什么不同的用法呢?我们来看一下@Mapper1.作用:在接口类上添加了@Mapper,会自动的把 @Mapper 注解的接口生成动态代理类添加位置:接口类上面2.在每个需要实现类的接口上都添加@Mapper注解,相对比较繁琐@MapperScan1.作用:配置一个或多个包路径,自动的扫描这些包路径下的类,自动的为它们生成代理类。添加位置:是在Springb.原创 2021-04-19 20:41:53 · 1173 阅读 · 0 评论 -
Spring实战学习笔记-自动扫描和自动装配
1.自动装配bean使用@Component注解可创建bean使用@ComponentScan默认扫描当前包及其子包下面的bean,如果在@ComponentScan后加上(basePackages="com.xx.xx"),即扫描固定xx包2.通过xml装配bean<bean id="helloService" class="com.example.HelloServiceImpl"></bean>3.通过Java代码装配bean@Config..原创 2021-04-19 14:22:24 · 207 阅读 · 0 评论 -
Spring实战学习-使用上下文和bean的生命周期
上下文的几种获取方法:1.AnnotationConfigApplicationContext:从一个或多个基于Java文件的配置类中加载Spring应用上下文。2.FileSystemXmlApplicationContext:从文件系统路径下的xml配置文件中加载应用上下文。3.ClassPathXmlApplicationContext:从类路径下xml配置文件中加载上下文定义,把应用上下文的定义文件作为类资源。注意:使用FileSystemXmlApplicationContex原创 2021-04-15 15:10:38 · 105 阅读 · 0 评论 -
Spring实战学习笔记-初知Spring
在学习任何一样事情前,我们都需要知道为何要学习他,他有什么优点?就像喜欢一个人一样,为何要喜欢他,一定是因为他身上的某个点戳中了你,所以才喜欢。学习东西亦是如此,所以在学习Spring实战前,我们先了解下为何要学习Spring。1.Spring是什么一句话解释:Spring是一个全方位的应用程序框架更详细的查看spring历史来源,可google2.Spring的优点最大优点是:简化开发(makes java simple)细化优点(特性):基于POJO的轻量级和..原创 2021-04-15 14:09:52 · 143 阅读 · 0 评论 -
SpringMVC学习笔记-@Controller和@RequestMapping注解
最早之前其实有大概说过@Controller和@RequestMapping这两个注解,但当时并没有深入了解,只是说这两个注解的作用分别是:@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。@RequestMapping用在类上可以没有,但是用在方法上必须有。@Controller在类上添加,表明该类是一个控制器@Controller1.在类上添加该注解,表明该类是控制器,需要被Sprin.原创 2021-04-14 15:14:38 · 441 阅读 · 0 评论 -
Spring学习笔记-访问数据库
数据开发一直都是核心之一,所以对于访问和使用数据库是十分有必要的。在数据库的不断变更迭代中,Mybatis已经成为主流框架,本篇博客也基于Mybatis进行学习1.引入Mybatis数据库依赖<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId>原创 2021-04-13 10:34:50 · 56 阅读 · 0 评论 -
Spring学习笔记-starter查看
在创建SpringBoot项目时,需要在pom文件依赖中引入该如下依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>但该依赖具体有何内容,我们来仔细看看,点击web依赖进入后可看到:.原创 2021-04-11 13:13:06 · 270 阅读 · 0 评论 -
Spring学习笔记-Spring Boot 报错:Web server failed to start. Port 8080 was already in use.
在启动Springboot时,报错如下:Web server failed to start. Port 8080 was already in use.原因很明显,端口号被占用了,那两种办法1.关闭当前使用8080端口号的进程终端输入命令:lsof -i:8080获取对应的进程杀掉进程kill -9 pid具体操作如下:然后重新启动Springboot即可。2.在application.properties中重新设置端口号server.po..原创 2021-01-12 14:20:59 · 731 阅读 · 0 评论 -
【转载】接口幂等处理方案
转载文章:https://www.jianshu.com/p/d8b30b85d8a9转载 2021-03-23 11:19:07 · 60 阅读 · 0 评论 -
Spring学习笔记-bean的生命周期和作用域
bean的生命周期bean的作用域原创 2021-02-07 14:54:04 · 129 阅读 · 0 评论 -
Spring学习笔记-通过上下文获取bean
方法一:ClassPathXmlApplicationContext --从classpath路径加载配置文件,创建Bean对象ApplicationContextctx= new ClassPathXmlApplicationContext("classpath:applicationContext.xml");ClassName clazz =(ClassName)ctx.getBean("beanName");方法二:FileSystemXmlApplicationContext...原创 2021-02-07 11:48:34 · 766 阅读 · 0 评论 -
Spring学习笔记9-AOP使用
前面大概了解了下AOP的术语和通知类型,本节就介绍下AOP的使用一.前置准备1.xml中导入aop<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springfr原创 2020-10-09 19:53:57 · 190 阅读 · 0 评论 -
Spring学习笔记8-AOP基础学习
AOP(Aspect-Oriented Programming)指一种程序设计范型,该范型以一种称为切面(aspect)的语言构造为基础,切面是一种新的模块化机制,用来描述分散在对象、类或方法中的横切关注点(crosscutting concern)。Spring AOP 模块提供拦截器来拦截一个应用程序,例如,当执行一个方法时,你可以在方法执行之前或之后添加额外的功能。理解:在不改变原来的代码基础上,增加了新的功能(通过代理),一种横向编程一.AOP基础学习在我们开始使用 AOP 工.原创 2020-10-09 16:59:31 · 107 阅读 · 0 评论 -
Spring学习笔记7-代理
代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能代理分为两种,一种是静态代理类,一种是动态代理类一.静态代理使用方法:静态代理在使用时,需要定义接口或者父类,被代理对象与代理对象一起实现相同的接口或者是继承相同父类。定义接口A 定义目标对象类B实现接口A 定义代理对象C实现接口A其中3中又涉及如下步骤:定义接收保存目标对象 扩展目标对象功能举个例子原创 2020-10-05 21:21:33 · 88 阅读 · 0 评论 -
Spring学习笔记6-bean作用域和自动装配
一.作用域作用域 描述 singleton 在springIoC容器仅存在一个Bean实例,Bean以单例方式存在,bean作用域范围的默认值。 prototype 每次从容器中调用Bean时,都返回一个新的实例,即每次调用getBean()时,相当于执行newXxxBean()。 request 每次HTTP请求都会创建一个新的Bean,该作用域仅适用于web的SpringWebApplicationContext环境。 session 同一个HTT...原创 2020-10-04 20:03:32 · 98 阅读 · 0 评论 -
Spring学习笔记5-依赖注入
依赖注入(DI),也就是dependency injection,通过spring容器“宏观调控”,调用者只要被动接受spring容器为调用者的成员变量赋值即可,而不需要主动获取被依赖对象。这种被动获取的方式就叫做依赖注入一.构造器注入构造器注入依赖于构造方法实现,而构造方法可以是有参数的或者是无参数的。在大部分的情况下,我们都是通过类的构造方法来创建类对象,Spring也可以采用反射的方式,通过使用构造方法来完成注入,这就是构造器注入的原理<bean id="hello" cla.原创 2020-10-03 18:56:29 · 151 阅读 · 0 评论 -
Spring学习笔记4-配置文件
一.前言前面学习提到只讲到了xml文件配置,并未涉及到properties文件,其实xml文件和properties是同一种东西,只是表达形式不一样罢了,但一般情况下,xml文件用来添加改动的配置,properties文件用来配置不经常改变的配置,比如数据库等配置二.xml文件2.1 基础配置xml文件的基础配置如下:<beans xmlns="http://www.springframework.org/schema/beans" <!--最基本的命名空间定义-->原创 2020-10-02 20:58:30 · 174 阅读 · 0 评论 -
Spring学习笔记3-创建对象
一,前言前面的学习笔记一笔带过了创建对象,利用ioc来创建对象,下面详细讲解一下二,创建对象方式2.1 使用无参构造方式首先要知道,任何类都有一个默认的构造方法,如果代码中写了构造方法,那默认的构造方法就不会被创建举个例子说明下:public class Hello { private String name; public Hello(){ System.out.println(name); }}对应的xml中配置文件为<b.原创 2020-10-02 13:52:36 · 106 阅读 · 0 评论 -
Spring学习笔记2-ioc
一,前言ioc是spring中非常重要的一个功能,下面就详细介绍下ioc二,ioc1.什么是iocioc其实就是inversion of control,翻译过来就是控制反转,为什么叫控制反转呢?我们可以回忆下最早以前写java代码时,是怎么写的?是不是这样写的?public void sayHelloTest(){ HelloWorld helloWorld=new HelloWorld(); helloWorld.setUserName("张三.原创 2020-10-02 11:25:30 · 116 阅读 · 0 评论 -
Spring学习笔记1-介绍
一,前言立flag,学习java,学习springboot,努力,每天记录学习过程和思考。二,简介概念:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。(百度抄的,可自行百度理解)官网:https:/.原创 2020-09-30 20:05:47 · 142 阅读 · 0 评论 -
Spring-Bean注册
Bean注册主要有三种方法1.@ComponentScan@Configuration:配置类 @Controller :web控制器 @Repository :数据仓库 @Service:业务逻辑以上四种都可以作为bean注册的方式Spring的注解形式:@Repository、@Service、@Controller,它们分别对应存储层Bean,业务层Bean,和展示层Beana,@Component1,默认不指定bean的名称,且类名首字母小写,比如你写的类名是Test,原创 2020-09-25 15:30:23 · 159 阅读 · 0 评论 -
Spring学习笔记-注解
注解1.注解注解是在写java代码时最经常用到的一种方法,注解就是Annotation。注解一般用@来表示,比如我们最常用的@Resource,@Autowired等等这些2.常用的注解@SpringBootApplication是Sprnig Boot项目的核心注解,目的是开启自动配置,用来标注在主程序的,表明他是一个springboot项目@SpringBootApplication 中包含 @link Configuration、@link EnableAutoCon.原创 2020-09-19 13:45:59 · 396 阅读 · 0 评论