java框架之SpringBoot(14)-任务】的更多相关文章

使用 maven 创建 SpringBoot 项目,引入 Web 场景启动器. 异步任务 1.编写异步服务类,注册到 IoC 容器: package zze.springboot.task.service; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @Service public class AsyncService { @Async…
简介 Spring Boot 用来简化 Spring 应用开发,约定大于配置,去繁从简,just run 就能创建一个独立的.产品级别的应用. 背景: J2EE 笨重的开发.繁多的配置.低下的开发效率.复杂的部署流程.第三方技术集成难度大. 解决: “Spring全家桶”时代. Spring Boot -> J2EE 一站式解决方案. Spring Cloud -> 分布式整体解决方案. 优点: 可快速创建独立运行的 Spring 项目以及与主流框架集成. 使用嵌入式的 Servlet 容器,…
规范 SpringBoot 使用一个全局的配置文件,配置文件名固定为 application.properties 或 application.yml .比如我们要配置程序启动使用的端口号,如下: server.port=8081 application.properties server: port: 8081 application.yml 配置文件一般放在 src\main\resources 目录或者 classpath:config 下. .yml后缀的文件是 YAML(YAML Ai…
市面上的日志框架 日志抽象层 日志实现 JCL(Jakarta Commons Logging).SLF4J(Simple Logging Facade For Java).JBoss-Logging Log4j.JUL(java.util.logging).Log4j2.Logback 日志抽象层 JBoss-Logging 不适合平常开发使用.JCL 最后一次更新版本时间为 2014 年,有些过时.所以 SpringBoot 选中的日志抽象层为 SLF4J. 日志实现 日志实现 LogBac…
资源映射 静态资源映射 查看 SpringMVC 的自动配置类,里面有一个配置静态资源映射的方法: @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { if (!this.resourceProperties.isAddMappings()) { logger.debug("Default resource handling disabled"); return; } Integer…
本篇文章内容详细可参考官方文档第 29 节. SpringMVC介绍 SpringBoot 非常适合 Web 应用程序开发.可以使用嵌入式 Tomcat,Jetty,Undertow 或 Netty 创建自包含的 HTTP 服务器.大多数 Web 应用程序可以通过使用 spring-boot-starter-web 模块快速启动和运行.你还可以选择使用该 spring-boot-starter-webflux 模块构建响应式 Web 应用程序 . SpringMVC 框架是一个丰富的“模型视图控…
SpringSecurity介绍 Spring Security 是针对 Spring 项目的安全框架,也是 Spring Boot 底层安全模块默认的技术选型.它可以实现强大的 Web 安全控制.对于安全控制吧,我们仅如引入 Security 场景启动器,进行少量配置,即可实现强大的安全管理. 应用程序安全的主要两个区域就是“认证”和“授权”: 认证(Authentication):建立一个声明主体的过程,主体一般是指用户. 授权(Authorization):指确定一个主体是否允许在你的应用…
前言 分布式应用 在分布式系统中,国内常用 Zookeeper + Dubbo 组合,而 SpringBoot 推荐使用 Spring 提供的分布式一站式解决方案 Spring + SpringBoot + SpringCloud. 图 1:分布式架构图 Zookeeper和Dubbo Zookeeper 是一个分布式的,开放源码的分布式应用程序协调服务.它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护.域名维护.分布式同步.组服务等. Dubbo 是 Alibaba 开源的分…
      Spring-Boot 攻略 day01 spring-boot   一. 基本配置加运行   1. 导入配置文件(pom.xml 文件中)   <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version&…
1.理论概述 1.1.分布式 分布式系统是若干独立计算机的集合,这些计算机对于用户来讲就像单个系统. 由多个系统集成成一个整体,提供多个功能,组合成一个板块,用户在使用上看起来是一个服务.(比如淘宝网). 起源 分布式系统出现的原因是:用多个廉价的.普通的机器完成单个计算机无法完成的计算.存储任务 分布式使用 只有单个节点处理能力无法满足日益增长的计算.存储任务的时候,且硬件的提升(内存.磁盘.CPU)高昂得不偿失的时候,应用程序也不能进一步优化的时候,才考虑分布式. 因为分布式系统是建立在网络…
准备 环境 IDE:Idea SpringBoot版本:1.5.19 UI:BootStrap 4 模板引擎:thymeleaf 3 效果:Restful 风格 CRUD 功能的 Demo 依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w…
前言 在 SpringBoot 项目中,默认情况下,使用浏览器访问一个不存在的地址会返回如下错误页面: 而当客户端未非浏览器时,错误信息则会以 json 数据返回,如下: 会出现如上效果的原因是 SpringBoot 针对错误消息做了自动配置,对应自动配置类为 org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration . 自定义错误页 查看错误自动配置类会发现在该类中注册了如下组件: ErrorPageCustomi…
前言 SpringBoot 默认使用的嵌入式 Servlet 容器为 Tomcat,通过依赖关系就可以看到: 问题: 如何定制和修改 Servlet 容器相关配置? SpringBoot 能否支持其它 Servlet 容器? 相关配置 方式一:配置文件 在普通 web 程序中我们如果需要修改 Tomcat 配置则可通过 Tomcat 目录下 conf/server.xml 修改,而在 SpringBoot 中我们只需要在项目配置文件中通过 server 节下的相关属性即可修改容器相关配置,如:…
简介 对于数据访问层,无论是 SQL 还是 NOSQL,SpringBoot 默认采用整合 SpringData 的方式进行统一处理,添加了大量的自动配置,引入了各种 Template.Repository 来简化我们对数据访问层的操作,我们使用时只需进行简单的配置即可. 整合JDBC 数据源获取 1.使用 maven 构建 SpringBoot 项目,引入如下场景启动器: 2.配置数据库连接相关信息: spring: datasource: username: root password: r…
启动流程 直接从 SpringBoot 程序入口的 run 方法看起: public static ConfigurableApplicationContext run(Object source, String... args) { return run(new Object[] { source }, args); } org.springframework.boot.SpringApplication#run(java.lang.Object, java.lang.String...) 执…
Spring缓存抽象 介绍 Spring 从 3.1 版本开始定义了 org.springframework.cache.Cache 和 org.springframework.cache.CacheManager 接口来统一不同的缓存技术,并支持使用 JCache(JSR107)注解简化我们开发. 关于 JSR107: Java Caching 定义了 5 个核心接口,分别是 CachingProvider.CacheManager.Cache.Entry 和Expiry. CachingPr…
前言 概述 大多数应用中,可通过消息服务中间件来提升系统异步通信.扩展解耦的能力. 消息服务中两个重要概念:消息代理(message broker)和目的地(destination).当消息发送者发送消息后,将由消息代理接管,消息代理保证消息传递到指定目的地. 消息队列主要有两种形式的目的地: 队列(queue):点对点消息通信(point-to-point). 主题(topic):发布(publish)/订阅(subscribe)消息通信. 点对点: 消息发送者发送消息,消息代理将其放入一个队…
ElasticSearch介绍 简介 我们的应用经常需要使用检索功能,开源的 Elasticsearch 是目前全文搜索引擎的首选.它可以快速的存储.搜索和分析海量数据.SpringBoot 通过整合 SpringData Elasticsearch 为我们提供了非常便捷的检索功能支持. Elasticsearch 是一个分布式搜索服务,提供 Restful API,底层基于 Lucene,采用多 shard(分片)的方式保证数据安全,并且提供自动 resharding 的功能,github 等…
1.SpringBoot web项目集成Swagger2 1.1.认识Swagger2 Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和接口文档系统作为服务器以同样的速度来更新.文档的接口方法,参数和模型紧密集成到服务器端的代码,使用API来保持前后端接口的更新同步.解决了前后端分离开发中的痛点.   Swagger2官方文档:https://swagger.io   1.2.集成Swagger2初体验 ①基于Spr…
1.SpringBoot整合任务机制 1.1.SpringBoot实现异步方法 日常开发中涉及很多界面与后端的交互响应,都不是同步的,基于SpringBoot为我们提供了注解方式实现异步方法.使得前端的请求响应与后端的业务逻辑方法实现异步执行.提升了客户的体验.不由得说一句,SpringBoot的封装的确是精妙强大,以前需要多线程.Ajax实现异步,而SpringBoot底层封装之后,两个注解就Over了! ①需要在SpringApplication执行类上开启异步,使用@EnableAsync…
1.整合MyBatis操作 前面一篇提到了SpringBoot整合基础的数据源JDBC.Druid操作,实际项目中更常用的还是MyBatis框架,而SpringBoot整合MyBatis进行CRUD也非常方便. 下面从配置模式.注解模式.混合模式三个方面进行说明MyBatis与SpringBoot的整合. 1.1.配置模式 MyBatis配置模式是指使用mybatis配置文件的方式与SpringBoot进行整合,相对应的就有mybatis-config.xml(用于配置驼峰命名,也可以省略这个文…
快速入门 一.helloworld示例 二.springboot单元测试 三.springboot热部署 web开发 整合redis thymeleaf使用 spring-data-jpa使用 整合mybatis 整合RabbitMQ 定时任务和邮件 整合shiro 打包部署和其他小技巧…
介绍 SpringBoot 提供了监控管理功能的场景启动器,它可以为我们提供准生产环境下的应用监控和管理功能.我们可以通过HTTP.JMX.SSH协议来进行操作,自动得到审计.健康及指标信息等. 使用 简单测试 1.使用 maven 创建 SpringBoot 项目,选中如下场景启动器: 2.修改配置,关闭安全管理: # 关闭安全管理 management.security.enabled=false application.properties 3.测试: 启动项目,访问 localhost:…
JNPF.java版本采用全新的前后端分离架构模式.前后端分离已成为互联网项目开发的业界标准开发方式,通过 nginx+tomcat 等方式有效的进行解耦合,并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服务架构.多端化服务打下坚实的基础. 技术选型: SpringBoot SpringCloud Mybatis-Plus Redis Jquery Vue Bootstrap ElementUI Uniapp H5 JNPF.java采用SpringBoot框架和SpringCloud…
SpringBoot和Java框架spring 学习笔记(十九):事务管理(注解管理)所讲的类似,使用@Transactional注解便可以轻松实现事务管理.…
1.框架选型 spring-boot https://github.com/JeffLi1993/springboot-learning-example https://mp.weixin.qq.com/s/N507Cfb_mbkGvHtg_FIaVg 2.数据库相关选型 mybatis + common mapper + mysql https://mapperhelper.github.io/faq/ 另外一个开源优秀maybatis插件 http://mp.baomidou.com/ JP…
SpringBoot(14)-注解装配Bean SpringBoot装配Bean方式主要有两种 通过Java配置文件@Bean的方式定义Bean. 通过注解扫描的方式@Component/@ComponentScan. 一.当前项目装配Bean 创建项目名称为create-bean. 1.@Component方式 @Component("componentBean") public class ComponentBean { private String type = "@C…
https://www.cnblogs.com/itdragon/p/7750903.html FreeMarker是一个很值得去学习的模版引擎.它是基于模板文件生成其他文本的通用工具.本章内容通过如何使用FreeMarker生成Html web 页面 和 代码自动生成工具来快速了解FreeMarker. 1 简介 FreeMarker是一款用java语言编写的模版引擎,它虽然不是web应用框架,但它很合适作为web应用框架的一个组件. 特点: 1. 轻量级模版引擎,不需要Servlet环境就可…
14.2 Class 对象 https://github.com/zhaojiatao/javase 1.什么是Class对象,Class对象是用来做什么的? Class对象是java程序用来创建类的所有常规对象用的:每个类都有一个Class对象: 2.Class对象是如何创建的? 当程序创建第一个对类的静态成员(static修饰的成员以及构造方法)的引用时,就会加载这个类.类加载器首先检查这个类的 Class对象是否已经加载:如果尚未加载,默认的类加载器就会查找.class文件.在加载字节码后…
Spring 的核心特性是什么?Spring 优点? Spring 的核心是控制反转(IoC)和面向切面(AOP) Spring 优点: 程序员必须掌握的Java 框架,学会之后50k不是问题 (1)方便解耦,简化开发 (高内聚低耦合) Spring 就是一个大工厂(容器),可以将所有对象创建和依赖关系维护,交给 Spring管理 spring 工厂是用于生成 bean (2)AOP 编程的支持 Spring 提供面向切面编程,可以方便的实现对程序进行权限拦截.运行监控等功能 (3) 声明式事务…