零基础入门学习——Spring Boot注解(一)
声明bean的注解:
@Component组件,没有明确角色的bean
@Service,在业务逻辑层(service)中使用
@Repository,在数据访问层(dao)中使用
@Controller,在展现层中使用
@Configuration声明配置类
实体类无需添加注解,因为并不需要“注入”实体类
指定Bean的作用域的注解:
@Scope("prototype")
默认值为singleton
可选值prototype、request、session、globalSession
声明生成Bean的方法的注解:
@Bean 用在方法上,告诉Spring容器,你可以从下面这个方法中拿到一个Bean
使用AnnotationApplicationContext对象的getBean方法获取Bean
注入Bean的注解:
@Autowired,自动注入(默认为byType型的注入),可以用在属性或者方法上,可以通过设置required = "false"说明不要求一定要注入有多个同样的接口的实现时,通过@qualifier区分
当注入的变量为List后者Map时,会把所有的接口实现都注入进来,key为Bean的名字,value为实现类对象。可以通过在实现类上添加@order=1来指定加载顺序,数越小越优先加载
@Lazy启动延迟注入
配置类注解:
@Configuration声明当前类是一个配置类,相当于Spring配置的一个xml文件
@ComponentScan,自动扫描配置类所在包名下的所有bean
@EnableAutoConfiguration,启动自动配置
在spring boot中这三个注解可以用一个@SpringBootApplication替代
@EnableTransactionManagement,开启事务支持
事务管理:
@EnableTransactionManagement,加在配置类中,开启事务支持
@Transactional,加在Service的方法上,标注需要事务支持
AOP注解:
@AspectJ
任务调度:
@Scheduled用在需要定时执行的方法上 @EnableScheduling用在需要使用的入口类上
Spring MVC集成:
首先需要对Application类进行修改
@SpringBootApplication @EnableTransactionManagement //1、添加继承SpringBootServletInitializer public class Application extends SpringBootServletInitializer{ public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Override //2、重写configure方法 protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return super.configure(builder); } } Spring MVC的注解: @Controller,在展现层使用 @ResponseBody @RestController
以上所述是小编给大家介绍的Spring Boot注解学习(一),希望对大家有所帮助!
相关推荐
-
Spring Boot 快速入门指南
最近因为项目的缘故,需要接触 Spring Boot,详细的介绍可以参考官方的文档,这里主要根据自己学习的实践进行简单分享.版本:1.3.6 简介 Spring 框架是非常著名的 Java 开源框架,历经十多年的发展,整个生态系统已经非常完善甚至是繁杂,Spring Boot 正是为了解决这个问题而开发的,为 Spring 平台和第三方库提供了开箱即用的设置,只需要很少的配置就可以开始一个 Spring 项目.当然,建议使用 Java 8 来进行开发. Spring Boot 实际上走的是 Se
-
Spring boot学习教程之快速入门篇
前言 首先来说一下为什么使用 Spring Boot,之前我用的后端 WEB 开发框架一直都是 PlayFramework的 1.2.7 版本(目前已经停止更新), 不得不说这个框架非常好用,但是由于 Play2.x 版本和 Play1.x 版本差别巨大,并且不兼容,所以现在面临着选择新的框架的问题,问了下身边的朋友,发现他们都在用 Spring ,然而我发现 Spring 的话,经常要配置各种东西,习惯了 Play 的简单明了的配置方式,确实有些不习惯 Spring ,这个时候发现了 Spri
-
Spring Boot 简介(入门篇)
1.什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置, 从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. 2.SpringBoot特性 1).创建独立的Spring项目 2).内置Tomcat和Jetty容器 3).提供一个sta
-
Spring Boot 入门教程
简介 相信很多人都接触spring框架很长时间了,每次搭建spring框架的时候都需要配置好多的jar.xml,做很多繁琐重复的配置,稍微不留神就会出现各种各样的问题,每次调试真的是香菇.蓝瘦啊. spring boot的出现帮助我们彻底解决了这些jar的依赖,只需要很少的配置就可以完成我们的开发工作,我们可以把自己的应用打包成jar,使用java -jar来运行spring web应用,spring boot集成了很多的web容器.今天给大家介绍一下spring Boot MVC,让我们学习一
-
SpringBoot入门系列之JPA mysql
一,准备工作,建立spring-boot-sample-mysql工程 1.http://start.spring.io/ A.Artifact中输入spring-boot-sample-MySQL B.勾选Web下的web C.勾选SQL下的JPA MYSQL 2.Eclips中导入工程spring-boot-sample-mysql A.解压快捷工程spring-boot-sample-mysql到某文件夹 B.eclips中file->import->Import E
-
Spring Boot入门(web+freemarker)
1.配置maven文件pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apach
-
初识Spring Boot框架和快速入门
前面的铺垫文章已经连着写了六篇了,主要是介绍了spring和SpringMVC框架,小伙伴们在学习的过程中大概也发现了这两个框架需要我们手动配置的地方非常多,不过做JavaEE开发的小伙伴们肯定也听说过"约定大于配置"这样一句话,就是说系统,类库,框架应该假定合理的默认值,而非要求提供不必要的配置,可是使用Spring或者SpringMVC的话依然有许多这样的东西需要我们进行配置,这样不仅徒增工作量而且在跨平台部署时容易出问题.OK,由于这些已经存在的问题,Spring Boot应运而
-
零基础入门学习——Spring Boot注解(一)
声明bean的注解: @Component组件,没有明确角色的bean @Service,在业务逻辑层(service)中使用 @Repository,在数据访问层(dao)中使用 @Controller,在展现层中使用 @Configuration声明配置类 实体类无需添加注解,因为并不需要"注入"实体类 指定Bean的作用域的注解: @Scope("prototype") 默认值为singleton 可选值prototype.request.session.gl
-
Python零基础入门学习之输入与输出
简介 在之前的编程中,我们的信息打印,数据的展示都是在控制台(命令行)直接输出的,信息都是一次性的没有办法复用和保存以便下次查看,今天我们将学习Python的输入输出,解决以上问题. 复习 得到输入用的是input(),完成输出用的是print(),之前还有对字符串的操作,这些我们都可以使用help()命令来查看具体的使用方法. 文件 在Python2的时候使用的是file来创建一个file类,对它进行操作.Python3中去掉了这个类(我没有查到,只是猜测),使用open来打开一个文件,返回一
-
Spring事务管理零基础入门
目录 一.简介 二.特性(一原持久隔离) 2.1 原子性 2.2 一致性(类似能量守恒) 2.3 隔离性 2.4 持久性 三.隔离级别 3.1 事务级别(从低到高) 3.2 常用数据库默认级别: 3.3 事务中可能出现的问题: 四.传播特性 4.1 死活都不要事务 4.2 可有可无的 4.3 必须要有事务 五.应用 5.1 数据表 5.2 实体类 5.3 Service 一.简介 概念:事务是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作,这些操作一起提交,要么都执行,要么都不
-
Spring零基础入门IOC
目录 1.HelloSpring 2.IOC创建对象方式 2.1.通过无参构造方法来创建 2.2.通过有参构造方法来创建 1.HelloSpring 导入Jar包 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.0.RELEASE</version> </de
-
SpringBoot零基础入门之基本操作与概念
目录 1.什么是Spring Boot 2.Spring Boot优点 3.Spring Boot 项目创建 3.1 使用Idea 创建 3.2 Spring Boot 项目 3.3 启动并验证Spring Boot项目有没有创建成功 3.4 网页版创建(了解) 4.项目目录介绍和运用 4.1 项目运行 4.2 输出 Hello world 5.注意事项-包路径错误 5.1 正确路径 5.2 小结 总结 1.什么是Spring Boot 为什么要学Spring Boot? Spring 的诞生是
-
spring boot注解方式使用redis缓存操作示例
本文实例讲述了spring boot注解方式使用redis缓存操作.分享给大家供大家参考,具体如下: 引入依赖库 在pom中引入依赖库,如下 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> &l
-
如何优雅的抛出Spring Boot注解的异常详解
前言 Spring Boot它简化了配置,内嵌式tomcat容器,用于快速开发基于Spring的应用,是一个微框架,本文主要介绍的是关于如何优雅的抛出Spring Boot注解的异常的相关内容,下面话不多说了,来一起看看详细的介绍吧 平时我们在写代码的时候肯定要进行很多参数验证,最开始的时候我们一般都是这样处理的 如下图 看起来好像也没什么,但是 如果参数多了呢?你就会看到这样的校验 OMG!!! 有没有感觉稍微有点视觉冲击,虽然这样写的已经很规整了,但是还是不够简单和优雅. 在SpringBo
-
Spring boot注解@Async线程池实例详解
这篇文章主要介绍了Spring boot注解@Async线程池实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 从Spring3开始提供了@Async注解,该注解可以被标注在方法上,以便异步地调用该方法.调用者将在调用时立即返回,方法的实际执行将提交给Spring TaskExecutor的任务中,由指定的线程池中的线程执行. 1. TaskExecutor Spring异步线程池的接口类,其实质是java.util.concurrent
-
Django零基础入门之自定义标签及模板中的使用
目录 自定义标签: 第一部分 (1)视图函数编写: (2)编写模板文件: (3)自定义标签实现: (4)效果展示: 第二部分 (1)视图函数编写: (2)编写模板文件: (3)自定义标签实现: 第三部分 紧接上文--<Django零基础入门之自定义过滤器及模板中的使用>,本文来讲一讲自定义标签!!! 自定义标签: 源码学习: template.Library().simple_tags(): def simple_tag(self, func=None, takes_context=None,
-
Django零基础入门之自定义过滤器及模板中的使用
目录 引言 自定义过滤器 (1)首先 (2)内置过滤器lower的使用: (3)自定义过滤器的使用: (4)模板中使用自定义过滤器: (5)效果展示: 引言 分析Django内置的模板过滤器: 通过分析可以将内置的过滤器理解为: 一个带有一个或两个参数的python函数: (输入的)变量的值[注意:不一定是字符串形式,在前面也讲过可以是哪些类型.] 参数的值--可以有一个初始值,或者完全没有参数. 自定义过滤器 新建一个名为ceshi的app以供本文学习使用: 自定义过滤器及标签所在的tem
随机推荐
- AngularJs基本特性解析(一)
- Flash 0day生成器提供下载
- Spring Boot实现图片上传功能
- Spring4整合Hibernate5详细步骤
- oracle impdp network_link参数使用介绍
- JavaScript中的子窗口与父窗口的互相调用问题
- 提交页面的定位--scrollIntoView的用法
- android LinearLayout和RelativeLayout组合实现精确布局方法介绍
- PHP中图片等比缩放的实例
- 浅谈Ajax技术实现页面无刷新
- Linux Shell脚本编程的注意事项
- linux下用Proftpd搭建ftp服务器及配置方法
- w3wp进程发生死锁ISAPI aspnet_isapi.dll报告它自身有问题,原因Deadlock detected
- 基于Jquery的温度计动画效果
- Apache加速模块mod_pagespeed安装使用详细介绍
- java页面中文乱码的解决办法
- Android编程开发之NotiFication用法详解
- Android带进度条的下载图片示例(AsyncTask异步任务)
- 深入分析安卓(Android)中的注解
- 浅谈static a[n*m]={0};中static的作用