springboot
文章平均质量分 86
lxhjh
这个作者很懒,什么都没留下…
展开
-
SpringBoot入门系列:第二篇 再学Hello World
Spring-Boot是Spring的新东东,为了让人尽快的使用,它提供了一个非常好的辅助工具,直接为我们生成Maven架构的工程。下面,我们通过helloworld看一、在浏览器中打开http://start.spring.io/,如图在Artifact中输入spring-boot-sample-helloworld,点击“Switch to the full version.”,勾原创 2016-06-24 13:25:23 · 30747 阅读 · 24 评论 -
SpringBoot的RabbitMQ消息队列: 四、第三模式"Publish/Subscribe"
Publish/Subscribe 发布/订阅模式,官方定义是每次把消息发送给多个消费者(Sending messages to many consumers at once)。它的结构式一、相关概念1、RabbitMQ结构通常我们谈到队列服务, 会有三个概念: 发消息者、队列、收消息者,RabbitMQ 在这个基本概念之上, 多做了一层抽象, 在发消息者和 队列之间, 加原创 2017-04-04 23:06:11 · 8732 阅读 · 1 评论 -
SpringBoot的RabbitMQ消息队列: 六、第五模式"Topics"
Topics模式,官方的解释是Receiving messages based on a pattern (topics),它的结构是消费者各自监控自己的队列;交换机通过一种模式策略确定生产者的消息放入那个队列。1、建立工程, 通过http://start.spring.io,建立Topic工程2、下载、解压,导入eclipse3、修改pom.xml,以便于热部署原创 2017-04-04 23:50:04 · 2671 阅读 · 1 评论 -
SpringBoot的RabbitMQ消息队列: 五、第四模式"Routing"
Routing模式,官方的解释是Receiving messages selectively,它的结构是消费者各自监控自己的队列;交换机确定生产者的消息放入那个队列。其实这就是用Diret类型的交换机实现。1、建立工程, 通过http://start.spring.io,建立Direct工程2、下载、解压,导入eclipse3、修改pom.xml,以便于热部署4、增加日原创 2017-04-04 23:45:08 · 1720 阅读 · 0 评论 -
SpringBoot的DeferredResult实例:二、另一个请求控制请求的返回时机
本系列文章均采用springboot,采用同样的环境。一、创建工程1、 在http://start.spring.io/中创建RabbitMQHello工程: A、MAVEN工程 B、2.0.0.BUILD-SNAPSHOT C 、Group:com.example D、Art原创 2017-04-19 11:44:46 · 5319 阅读 · 2 评论 -
SpringBoot的DeferredResult实例:一、理解Spring的Callable 和DeferredResult
1-介绍Servlet 3中的异步支持为在另一个线程中处理HTTP请求提供了可能性。当有一个长时间运行的任务时,这是特别有趣的,因为当另一个线程处理这个请求时,容器线程被释放,并且可以继续为其他请求服务。这个主题已经解释了很多次,Spring框架提供的关于这个功能的类似乎有一点混乱——在一个Controller中返回Callable 和 DeferredResult。在这篇文章中,我将原创 2017-04-19 10:47:34 · 9202 阅读 · 0 评论 -
SpringBoot的DeferredResult实例:三、DeferredResult的超时处理
DeferredResult的超时处理,采用委托机制,也就是在实例DeferredResult时给予一个超时时长(毫秒),同时在onTimeout中委托(传入)一个新的处理线程(我们可以认为是超时线程);当超时时间到来,DeferredResult启动超时线程,超时线程处理业务,封装返回数据,给DeferredResult赋值(正确返回的或错误返回的)。这个实例可以对上一个实例的代码稍作改动即原创 2017-04-19 15:25:11 · 12119 阅读 · 0 评论 -
RestTemplate处理请求状态码为非200的返回数据
一、RestTemplate实践RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。调用RestTemplate的默认构造函数,RestTemplate对象在底层通过使用java.net包下的实现创建HTTP 请求,可以通过使用ClientHttpRequestF...原创 2018-08-22 10:13:56 · 15120 阅读 · 1 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:三、heroapi项目中增加用户、角色的增删改查
一、增加用户、角色实体1、角色枚举package com.jh.heroes.api.domain;public enum AuthorityName { ROLE_USER, ROLE_ADMIN}2、用户实体package com.jh.heroes.api.domain;import java.util.Date;import java.util.List;...原创 2018-08-31 11:06:22 · 722 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:一、创建SpringBoot类型的heroapi项目
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列,涉及Spring Boot的基础应用、CORS配置、Actuator监控、springfox-swagger集成、CI集成等,演示了如何利用Swagger生成JSON API文档,如何利用Swagger UI和Postman进行Rest API测试。介绍了Angular 6的新特性,Angula...原创 2018-08-31 11:05:53 · 1774 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:二、Angualr项目连接heroapi项目的增删改查接口
Angular官方样例Tour of Heroes通过angular-in-memory-web-api来模拟实现远程调用对hero进行增删改查,本节对其修改调用上一节实现的接口。一、在码云中创建项目heroes-web二、下载Angular官方样例代码三、安装依赖包,在项目所在文件夹的控制台(或cmd)中: npm install四、关联git: 1、创建git创库: g...原创 2018-08-24 19:39:34 · 1062 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:五、heroapi项目中用Spring Security实现JWT令牌的身份认证
一、Spring Security基本原理Spring Security在实现上是一系列过滤器,组成过滤器链,这些过滤器按一定的次序依次拦截请求,先是绿色的认证过滤器,再是蓝色的错误转换过滤器,再是橙色的安全拦截器,最后才是我们的接口。Spring Security的身份认证,实际上是在其过滤器链的绿色区的某个节点上,根据一定的规则,构建一个认证Authentication,然后向Se...原创 2018-09-07 20:14:03 · 1230 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:四、heroapi项目中用Spring Security实现用户和密码的认证及返回JWT令牌
一、基本认证实现 使用Spring Security提供的UsernamePasswordAuthentication进行认证,在我们前面的代码基础之上,仅需要进行两个步骤即可:1、实现Spring Security的UserDetailsService/** * */package com.jh.heroes.api.service;import java.ut...原创 2018-09-03 16:39:04 · 1302 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:六、Spring Security的授权
Spring Security的授权,相对于认证来说,使用上比较简单。一、工程中使用Spring Security的步骤:第一步、工程依赖中引入依赖包。第二步、继承WebSecurityConfigurerAdapter,使用@Configuration、@EnableWebSecurity声明这是一个配置文件,启用Spring Security的WebSecurity功能。第三步...原创 2018-12-06 11:01:24 · 516 阅读 · 0 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:七、Spring Boot的Cache注解
Spring Boot的Cache注解,常用的如下一、@EnableCaching 项目中使用Cache的声明,在启动类上声明一次即可.二、@Cacheable 注解Cacheable声明了方法的结果是可缓存的,如果缓存存在,则目标方法不会被调用,直接取出缓存。如果缓存不存在,则进入实际业务方法,将业务方法返回的结果缓存。1、缓存的名称注解Cacheab...原创 2018-12-06 12:52:32 · 484 阅读 · 0 评论 -
springMVC整合异步请求特性
源自:http://blog.csdn.net/u013755987/article/details/62424001springMVC中也整合了异步请求的特性,我们只需要配置好支持异步请求特性,然后结合Java自带的回调函数处理就可以实现简单的异步请求,但是这样的异步请求往往是不能满足我们需求的,所以最终我们还是会使用比较完整的异步请求接口,那就是spring的WebAsyncTask和转载 2017-04-13 11:39:29 · 908 阅读 · 0 评论 -
SpringBoot的RabbitMQ消息队列: 三、第二模式"Work queues"
上一节的两个工程,一个负责发送,一个负责接收,也就是一一对于的关系。 只要消息发出了,接收者就处理;当接收效率较低时,就会出现接收者处理不过来,我们就可能会处理不过来,于是我们就可能多配置接受者。这个模式就是"Work queues",它的结构如下 多个接收者,它们会出现什么情况呢?是否像大锅饭,有的人撑死,有的人饿死。这个通过例子验证。一、再建一个接收者工程 H原创 2017-04-04 02:05:42 · 14613 阅读 · 0 评论 -
SpringBoot的RabbitMQ消息队列: 二、第一模式"Hello World!"
用消息中心的目的是解耦,消息(数据)在多个系统中传递,各个系统自主处理各自的事物。为此,根据RabbitMQ官方教程,我们逐渐开展研究。首先,研究第一模式"Hello World!",我们将会设计两个程序,一个发送Hello world,另一个接收这个数据并且打印到屏幕。整体的设计如下图:一、建立工程1、通过http://start.spring.io/分别建立HelloS原创 2017-04-04 00:08:44 · 3377 阅读 · 0 评论 -
SpringBoot入门系列:第四篇 redis
一,准备工作,建立spring-boot-sample-redis工程1、http://start.spring.io/ A、Artifact中输入spring-boot-sample-redis B、勾选Web下的web C、勾选NOSQL下的Redis2、Eclips中导入工程spring-boot-sample-redis A、解压快捷原创 2016-06-24 18:01:18 · 28227 阅读 · 23 评论 -
SpringBoot入门系列:第三篇 日志输出
Java程序,日志输出,我认为是第一位的,把它的应用拿到这里。Spring-Boot对日志的处理,和我们往常的处理完全可以一致,通过logback.xml进行处理,即使有更先进的东西,我们也不用去管它。这里,为了简便,我们任然使用前一篇的工程spring-boot-sample-data第一步,在src/main/resources中增加logback.xml文件,文件内容为(这里仅最...原创 2016-06-24 14:37:58 · 45417 阅读 · 29 评论 -
SpringBoot入门系列:第五篇 JPA mysql
一,准备工作,建立spring-boot-sample-mysql工程1、http://start.spring.io/ A、Artifact中输入spring-boot-sample-mysql B、勾选Web下的web C、勾选SQL下的JPA MYSQL2、Eclips中导入工程spring-boot-sample-mysql原创 2016-06-24 18:59:22 · 19827 阅读 · 19 评论 -
SpringBoot入门系列:第六篇 mybatis
这一篇,代码折腾的时间较长,完成之后都是一些小细节,主要有三:1、引入的依赖错误;2、启动配置错误;3、xml文件的mapper命名空间错误。一、完整的pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2016-06-26 22:06:11 · 36029 阅读 · 7 评论 -
SpringBoot入门系列:第七篇 Spring Boot的测试
Spring Boot的测试,和普通项目的测试类同,可以继续使用我们熟悉的测试工具。当然,这里的测试,主要还是后台代码的测试。主要需要注意的地方仅有三点:1、依赖包的引入:pom.xml中仅依赖spring-boot-starter-test,它把相关的依赖全部引入。2、在测试类上的注解,常用的注解有三个@RunWith(SpringJUnit4ClassRunner.class)原创 2016-06-27 18:14:50 · 16150 阅读 · 5 评论 -
Spring Security 和 Angular JS(1)
Spring Security 和 Angular JS系列,是对http://www.oschina.net/translate/spring-security-and-angular-js一文的解析。受保护的单页面应用程序 这一节我们要展示将Spring Security、Spring Boot和Angular JS放在一起使用的一些不错的特性,它们能提供令人愉快且安全的用户体原创 2016-06-30 16:00:56 · 5181 阅读 · 1 评论 -
Spring Security 和 Angular JS(2)
添加动态的内容目前我们已经有了一个应用程序,硬编码了一句问候语在里面。这对学习如何把这些凑到一起很有帮助,不过实际上我们期望的是来自于后台服务器的内容,因此我们可以创建一个HTTP端点,然后用这个来抓取到一句问候语。在你的启动类 (SpringSecurityAndAngularJsBasicApplication)中, 加上 @RestController 注解并定义一个新的 @Requ原创 2016-06-30 17:12:03 · 4991 阅读 · 0 评论 -
SpringBoot入门系列:第一篇 Hello World
跟随SpringBoot的文档(http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-documentation)学习,前后几章关联才调通代码,煞是痛苦,在这里记录结果,过程隐忍。一、准备工作1、根据Maven工程特点,建立文档结果myFirstProject +-sr原创 2016-06-19 10:36:14 · 336271 阅读 · 50 评论 -
SpringBoot集成Jquery easyUI:一、创建 CRUD 应用
前段时间,学习了些spring boot的东东,也整理了一些。这段时间,准备根据http://www.runoob.com进行jQuery easy的学习。 这第一篇的东西,按照http://www.runoob.com/jeasyui/jeasyui-app-crud1.html,在php上,分分钟搞定,把它移到Java中,折腾我好几天。 先把代码放出,代码存在在https:原创 2016-08-08 11:38:21 · 13363 阅读 · 3 评论 -
SpringBoot集成Jquery easyUI:二、创建 CRUD 数据网格
在上一章节中,我们使用对话框(dialog)组件创建了 CRUD 应用来创建和编辑用户信息。本教程我们将告诉您如何创建一个 CRUD 数据网格(DataGrid)。我们将使用可编辑的数据网格(DataGrid)插件 来完成这些 CRUD 操作动作。步骤 1:在 HTML 标签中定义数据网格(DataGrid) <table id="dg" title="My Users"原创 2016-08-15 11:42:19 · 4803 阅读 · 1 评论 -
RPC 的概念模型与实现解析
转载自:http://mp.weixin.qq.com/s?__biz=MzAxMTEyOTQ5OQ==&mid=2650610547&idx=1&sn=2cae08dbf62d9a6c2f964ffd440c0077#rd两年前写过两篇关于 RPC 的文章,如今回顾发现结构和逻辑略显凌乱,特作整理重新整合成一篇,想了解 RPC 原理的同学可以看看。近几年的项目中,服务化和微服转载 2017-04-12 18:23:07 · 1076 阅读 · 1 评论 -
SpringBoot热部署
本篇所谓的 SpringBoot热部署,是为了代码修改,命令行的mvn spring-boot:run能够自动发布、重启。操作要点:修改配置文件pom.xml,仅下面2步即可1、在依赖包中增加devtools引用 org.springframework.boot spring-boot-devtools true2、在build的plugins增加springloaded插原创 2017-04-03 18:44:40 · 1363 阅读 · 1 评论 -
SpringBoot的RabbitMQ消息队列: 一、消息发送接收第一印象
本节用一个简单的例子,介绍SpringBoot中对RabbitMQ的使用。一、创建工程 1、 在http://start.spring.io/中创建RabbitMQHello工程: A、MAVEN工程 B、2.0.0.BUILD-SNAPSHOT C 、Group:com.example原创 2017-04-03 22:50:22 · 2841 阅读 · 1 评论 -
Angular 6集成Spring Boot 2,Spring Security,JWT和CORS系列:八、Spring Boot实现两级cache
Springboot实现缓存很简单,最多两处配置(Maven工程的pom.xml引入依赖包和系统配置文件application.yml定义参数)即可引入缓存,然后再使用注解,就可以很方便是开始使用缓存了。这样是比较简单,书写代码也很高效。可是执行的代码高效吗,当然的不高效:1、单机的redis,并发访问量有限吧?2、集群redis,并发访问量还是有限吧?3、redis的命中率、网络...原创 2018-12-10 17:03:01 · 581 阅读 · 0 评论