- 浏览: 622828 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (819)
- java开发 (110)
- 数据库 (56)
- javascript (30)
- 生活、哲理 (17)
- jquery (36)
- 杂谈 (15)
- linux (62)
- spring (52)
- kafka (11)
- http协议 (22)
- 架构 (18)
- ZooKeeper (18)
- eclipse (13)
- ngork (2)
- dubbo框架 (6)
- Mybatis (9)
- 缓存 (28)
- maven (20)
- MongoDB (3)
- 设计模式 (3)
- shiro (10)
- taokeeper (1)
- 锁和多线程 (3)
- Tomcat7集群 (12)
- Nginx (34)
- nodejs (1)
- MDC (1)
- Netty (7)
- solr (15)
- JSON (8)
- rabbitmq (32)
- disconf (7)
- PowerDesigne (0)
- Spring Boot (31)
- 日志系统 (6)
- erlang (2)
- Swagger (3)
- 测试工具 (3)
- docker (17)
- ELK (2)
- TCC分布式事务 (2)
- marathon (12)
- phpMyAdmin (12)
- git (3)
- Atomix (1)
- Calico (1)
- Lua (7)
- 泛解析 (2)
- OpenResty (2)
- spring mvc (19)
- 前端 (3)
- spring cloud (15)
- Netflix (1)
- zipkin (3)
- JVM 内存模型 (5)
- websocket (1)
- Eureka (4)
- apollo (2)
- idea (2)
- go (1)
- 业务 (0)
- idea开发工具 (1)
最新评论
-
sichunli_030:
对于频繁调用的话,建议采用连接池机制
配置TOMCAT及httpClient的keepalive以高效利用长连接 -
11想念99不见:
你好,我看不太懂。假如我的项目中会频繁调用rest接口,是要用 ...
配置TOMCAT及httpClient的keepalive以高效利用长连接
之前用户使用的是3个注解注解他们的main类。分别是@Configuration,@EnableAutoConfiguration,@ComponentScan。由于这些注解一般都是一起使用,spring boot提供了一个统一的注解@SpringBootApplication。
@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan
分开解释@Configuration,@EnableAutoConfiguration,@ComponentScan。
1、@Configuration:提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件
相当于:
@Configuration的注解类标识这个类可以使用Spring IoC容器作为bean定义的来源。@Bean注解告诉Spring,一个带有@Bean的注解方法将返回一个对象,该对象应该被注册为在Spring应用程序上下文中的bean
2、@EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
3、@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller
http://blog.csdn.net/u013473691/article/details/52353923
@Configuration和@Bean的用法和理解
spring Boot提倡约定优于配置,如何将类的生命周期交给spring
1、第一种自己写的类,Controller,Service。 用@controller @service即可
2、第二种,集成其它框架,比如集成shiro权限框架,集成mybatis分页插件PageHelper,第三方框架的核心类都要交于Spring大管家管理
@Configuration可理解为用spring的时候xml里面的<beans>标签
@Bean可理解为用spring的时候xml里面的<bean>标签
Spring Boot不是spring的加强版,所以@Configuration和@Bean同样可以用在普通的spring项目中,而不是Spring Boot特有的,只是在spring用的时候,注意加上扫包配置
<context:component-scan base-package="com.xxx.xxx" />,普通的spring项目好多注解都需要扫包,才有用,有时候自己注解用的挺6,但不起效果,就要注意这点。
Spring Boot则不需要,主要你保证你的启动Spring Boot main入口,在这些类的上层包就行
就像这样,DemoApplication是启动类,关于启动类的位置放置,在另一篇博客有专门的去分析
@Configuration和@Bean的Demo类
这样,在项目中
@Autowired
private DataSource dataSource;
的时候,这个dataSource就是我们在ExampleConfiguration中配的DataSource
http://www.cnblogs.com/soundcode/p/6477974.html
@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan
@SpringBootApplication public class ApplicationMain { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
分开解释@Configuration,@EnableAutoConfiguration,@ComponentScan。
1、@Configuration:提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件
<beans> <bean id = "car" class="com.test.Car"> <property name="wheel" ref = "wheel"></property> </bean> <bean id = "wheel" class="com.test.Wheel"></bean> </beans>
相当于:
@Configuration public class Conf { @Bean public Car car() { Car car = new Car(); car.setWheel(wheel()); return car; } @Bean public Wheel wheel() { return new Wheel(); } }
@Configuration的注解类标识这个类可以使用Spring IoC容器作为bean定义的来源。@Bean注解告诉Spring,一个带有@Bean的注解方法将返回一个对象,该对象应该被注册为在Spring应用程序上下文中的bean
2、@EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
3、@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller
http://blog.csdn.net/u013473691/article/details/52353923
@Configuration和@Bean的用法和理解
spring Boot提倡约定优于配置,如何将类的生命周期交给spring
1、第一种自己写的类,Controller,Service。 用@controller @service即可
2、第二种,集成其它框架,比如集成shiro权限框架,集成mybatis分页插件PageHelper,第三方框架的核心类都要交于Spring大管家管理
@Configuration可理解为用spring的时候xml里面的<beans>标签
@Bean可理解为用spring的时候xml里面的<bean>标签
Spring Boot不是spring的加强版,所以@Configuration和@Bean同样可以用在普通的spring项目中,而不是Spring Boot特有的,只是在spring用的时候,注意加上扫包配置
<context:component-scan base-package="com.xxx.xxx" />,普通的spring项目好多注解都需要扫包,才有用,有时候自己注解用的挺6,但不起效果,就要注意这点。
Spring Boot则不需要,主要你保证你的启动Spring Boot main入口,在这些类的上层包就行
就像这样,DemoApplication是启动类,关于启动类的位置放置,在另一篇博客有专门的去分析
@Configuration和@Bean的Demo类
@Configuration public class ExampleConfiguration { @Value("com.mysql.jdbc.Driver") private String driverClassName; @Value("jdbc://xxxx.xx.xxx/xx") private String driverUrl; @Value("${root}") private String driverUsername; @Value("123456") private String driverPassword; @Bean(name = "dataSource") public DataSource dataSource() { BasicDataSource dataSource = new BasicDataSource(); dataSource.setDriverClassName(driverClassName); dataSource.setUrl(driverUrl); dataSource.setUsername(driverUsername); dataSource.setPassword(driverPassword); return dataSource; } @Bean public PlatformTransactionManager transactionManager() { return new DataSourceTransactionManager(dataSource()); } }
这样,在项目中
@Autowired
private DataSource dataSource;
的时候,这个dataSource就是我们在ExampleConfiguration中配的DataSource
http://www.cnblogs.com/soundcode/p/6477974.html
发表评论
-
spring-boot-configuration-processor的作用
2022-05-23 11:06 232spring-boot-configuration-proce ... -
springboot面试题
2022-04-18 10:35 182SpringBoot自动配置的原理及实现 用友Java后端社 ... -
IoTDB数据库整合MyBatis实现SpringBoot
2022-04-13 17:37 777IoTDB数据库整合MyBatis实现SpringBoot项目 ... -
SpringBoot系列教程之Redis集群环境配置
2022-02-28 00:37 247SpringBoot系列教程之Redis集群环境配置 Co ... -
spring boot增强性学习记录
2022-02-19 22:19 168spring boot增强性学习记录 SpringBoot常 ... -
StringRedisTemplate和RedisTemplate的区别和选择
2022-02-10 23:05 239StringRedisTemplate和RedisTempla ... -
SpringBoot优雅的全局异常处理
2022-01-24 23:20 602SpringBoot优雅的全局异常处理 第一种:使用@Co ... -
学习篇-springboot-SpringFactoriesLoader
2021-12-19 22:34 227springboot-SpringFactoriesLoade ... -
启动原理解析
2021-12-15 23:49 161【转】Spring Boot干货系列:(三)启动原理解析 s ... -
springBoot中线程池ThreadPoolExecutor的使用
2021-06-16 20:48 814springBoot中线程池ThreadPoolExecuto ... -
java及spring各种注解
2021-06-11 23:43 196函数式接口@FunctionalInterface的使用说明 ... -
Spring Boot 实践折腾记(五):自定义配置,扩展Spring MVC配置并使用fastjson
2019-01-07 23:47 620https://blog.csdn.net/mickjoust ... -
Spring高级话题-条件注解-@Condition
2018-02-24 14:49 573通过profile,我们可以获得不同的profile,我们可以 ... -
常规容器下SpringBootServletInitializer如何实现web.xml作用解析
2017-10-11 15:48 1423http://blog.csdn.net/songhaifen ... -
Spring Boot下使用Mybatis
2017-09-19 21:05 348http://blog.csdn.net/mickjoust/ ... -
SpringBoot读取application.properties文件
2017-08-25 16:59 1145SpringBoot读取application.propert ... -
spring-boot学习笔记之Listener
2017-08-06 17:12 1362spring-boot扩展了spring的Applicatio ... -
Spring Boot学习笔记03--深入了解SpringBoot的启动过程
2017-08-01 10:01 1558http://www.jianshu.com/p/cb5cb5 ... -
Spring Boot:定制自己的starter
2017-07-31 20:44 806http://www.jianshu.com/p/85460c ... -
springboot集成httpinvoker的客户端
2017-07-22 10:25 1394http://blog.csdn.net/geanwan/ar ...
相关推荐
在Spring Boot框架中,`@SpringBootApplication`是一个非常核心的注解,它简化了应用程序的启动和配置过程。这个注解实际上是多个注解的组合,包括`@SpringBootConfiguration`、`@EnableAutoConfiguration`和`@...
在上面的示例代码中,我们使用 @SpringBootApplication 注解来标注 TomcatdebugApplication 类,并在 main 方法中启动 SpringBoot 应用程序。 @SpringBootApplication 注解是 SpringBoot 应用程序中的核心注解,它...
Spring Boot@SpringBootApplication 源码分析 本文对 Spring Boot 中的@SpringBootApplication 源码进行了深入分析。通过分析@SpringBootApplication 注解和 SpringApplication 类的 run 方法,我们可以了解 Spring...
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 深入探索SpringApplication执行流程 SpringApplication的run...
@SpringBootApplication 注解是 SpringBoot 框架中最基本的注解之一,它表示当前类是 SpringBoot 应用程序的启动类。该注解包括了 @Configuration、@EnableAutoConfiguration 和 @ComponentScan 三个注解的功能。 @...
`@SpringBootApplication`是SpringBoot的核心注解,它整合了`@SpringBootConfiguration`、`@EnableAutoConfiguration`和`@ComponentScan`三个主要注解。这使得任何包含此注解的类都可以作为SpringBoot应用的入口点...
在Spring Boot项目中,我们可以使用@RestController注解来创建RESTful风格的控制器。例如,创建一个名为HelloController的类,并在其中定义一个返回"Hello, World!"的GET方法,如下所示: ```java @RestController ...
在这篇文章中,我们将深入探讨 Spring Boot 的启动原理,了解 @SpringBootApplication 注解和 SpringApplication.run 方法的作用。 一、@SpringBootApplication 注解 @SpringBootApplication 注解是 Spring Boot ...
可以使用一个@SpringBootApplication注解来启用这三个特性,即:@EnableAutoConfiguration:SpringBoot 2.0
@SpringBootApplication public class Application { public static void main(String[] args) { new SpringApplicationBuilder().sources(Application.class).web(false).run(args); } } ``` 在上面的代码中,...
在SpringBoot的主配置类(`@SpringBootApplication`)上添加`@EnableFeignClients`注解: ```java @SpringBootApplication @EnableFeignClients public class Application { public static void main(String[] ...
通过`@SpringBootApplication`注解,开发者可以快速创建一个可运行的独立Java应用。 接下来,我们来看看Mybatis。Mybatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。Mybatis避免了几乎所有的...
在使用 @SpringBootApplication 注解时, SpringBoot 会自动配置相应的 Bean,包括数据源、事务管理器、Web 容器等。同时,SpringBoot 也提供了许多的 Starter 依赖项,例如 spring-boot-starter-web、spring-boot-...
- 自动配置:基于`@SpringBootApplication`注解,SpringBoot会自动扫描并配置相关的Bean,减少手动配置。 - Starter POMs:预定义的依赖集合,如`spring-boot-starter-web`,简化Maven或Gradle配置。 - 健康检查...
但是,如果我们有一些Bean位于其他包中,而这些包不在@SpringBootApplication注解的启动类所在的包及其下级包,那么我们需要手动添加@ComponentScan注解来指定这些Bean所在的包。 @ComponentScan注解的使用 -------...
例如,通过`@SpringBootApplication`注解,SpringBoot会自动扫描指定包及其子包下的类,包括`@Component`、`@Service`、`@Repository`和`@Controller`等注解的类,实现组件的自动注册。 接下来,我们来看看如何创建...
这个`NewsApplication`类是SpringBoot应用的入口点,`@SpringBootApplication`注解启动了Spring的自动配置、组件扫描和应用监听器。 除此之外,`src/main/resources`目录可能包含了配置文件(如`application....
本教程将详细介绍如何在Spring Boot项目中整合MyBatis,并使用@Select注解来实现数据库查询。 首先,我们需要在Spring Boot项目中引入MyBatis的依赖。在`pom.xml`文件中添加如下依赖: ```xml <groupId>org....
你只需要在 `@SpringBootApplication` 类中添加少量或无需额外的配置,就可以运行一个完整的 Web 应用。 **二、起步依赖** 起步依赖是 SpringBoot 提供的一种便捷方式,它允许你通过声明式地引入特定的 `starter` ...
在配置类中通过@EnableAsync 开启对异步任务的支持,并通过在实际执行的 Bean 的方法中使用@Async 注解来声明其是一个异步任务。 四、计划任务 计划任务是 Spring Boot 中的一种机制,用于在特定的时间点执行特定...