Home | 简体中文 | 繁体中文 | 杂文 | 打赏(Donations) | 云栖社区 | OSChina 博客 | Facebook | Linkedin | 知乎专栏 | Github | Search | About

Netkiller Spring Cloud 手札

Spring Cloud Cookbook

Mr. Neo Chan, 陈景峯(BG7NYT)



中国广东省深圳市望海路半岛城邦三期
518067
+86 13113668890


$Id: book.xml 606 2013-05-29 09:52:58Z netkiller $

版权声明

转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。

http://www.netkiller.cn
http://netkiller.github.io
http://netkiller.sourceforge.net
微信订阅号 netkiller-ebook (微信扫描二维码)
QQ:13721218 请注明“读者”
QQ群:128659835 请注明“读者”

2017-11


目录

1. 自述
1.1. 系列文档
1.2. 作者简介
1.3. 写给读者
1.4. 文档下载
1.4.1. Netkiller 手札 2017版电子书(epub,kindle,chm,pdf)
1.5. 打赏(Donations)
1.5.1. 微信(Wechat)
1.5.2. 支付宝(Alipay)
1.5.3. PayPal Donations
1.5.4. 银行(Bank)
1. Spring Tool Suite
1.1. 安装
1.2. Dashboard
2. Spring Boot
2.1. Spring Boot Quick start
2.1.1. pom.xml
2.1.2. Controller
2.2. Maven 插件
2.2.1. resource
2.3. 运行 Spring boot 项目
2.3.1. Maven run
2.3.2. Linux systemd
2.3.3. 传统 init.d 脚本
2.3.4. 编译用于Tomcat的 War
2.4. SpringApplication
2.4.1. @SpringBootApplication
2.4.1.1. 排除 @EnableAutoConfiguration 加载项
2.4.2. @EnableAutoConfiguration
2.4.3. @ComponentScan
2.4.4. @EntityScan 实体扫描
2.4.5. @EnableJpaRepositories
2.4.6. CharacterEncodingFilter
2.4.7. 隐藏 Banner
2.4.8. 实体与仓库扫描
2.4.9. 列出 Beans
2.5. application.properties
2.5.1. application.properties 参考
2.5.2. 启动指定参数
2.5.3. 加载排除
2.5.4. PID FILE
2.5.5. 内嵌 tomcat server
2.5.5.1. server.tomcat.basedir
2.5.5.2. server
2.5.5.3. access.log
2.5.5.4. logging
2.5.5.5. charset
2.5.5.6. Session 配置
2.5.5.7. cookie
2.5.5.8. error 路径
2.5.5.9. 压缩传输
2.5.5.10. server.servlet.context-path
2.5.5.11. ssl
2.5.5.12. 上传限制
2.5.6. JSON 输出与日期格式化
2.5.7. SMTP 相关配置
2.5.8. Redis
2.5.9. MongoDB
2.5.10. MySQL
2.5.11. Oracle
2.5.12. default_schema
2.5.13. datasource
2.5.14. velocity
2.5.15. Security 相关配置
2.5.16. MVC 配置
2.5.17. Kafka 相关配置
2.5.18.
2.6. Properties
2.6.1. @Value 注解
2.6.2. @PropertySource 注解载入 properties 文件
2.6.3. @EnableConfigurationProperties 引用自定义 *.properties 配置文件
2.6.4. 手工载入 *.properties 文件
2.6.5. spring.profiles.active 参数切换配置文件
2.6.6. SpringApplicationBuilder.properties() 方法添加配置项
2.7. Spring boot with Logging
2.7.1. 打印日志
2.7.2. 日志输出级别
2.7.3. 禁止控制台输出日志
2.7.4. 标准输出
2.7.5. 安天分隔日志
2.7.6. 按照文件尺寸分割日志
2.7.7. 指定Class过滤日志
2.7.8. 日志写入 MongoDB
2.7.9. logback 配置详解
2.7.9.1. configuration 属性配置
2.7.9.2. contextName 设置上下文名称
2.7.9.3. property 设置变量
2.7.9.4. encoder 日志格式设置
2.7.9.5. RollingFileAppender
2.8. Spring boot with Webpage
2.8.1. Maven
2.8.2. application.properties
2.8.3. Application
2.8.4. IndexController
2.8.5. src/main/webapp/WEB-INF/jsp/index.jsp
2.8.6. 集成模板引擎
2.9. Spring boot with Velocity template
2.9.1. Maven
2.9.2. Resource
2.9.3. Application
2.9.4. RestController
2.9.5. Test
2.10. Spring boot with Thymeleaf
2.10.1. Maven
2.10.2. application.properties
2.10.3. Controller
2.10.4. HTML5 Template
2.11. String boot with RestTemplate
2.11.1. 在控制器中完整实例
2.12. Spring boot with Session share
2.12.1. Redis
2.12.1.1. Maven
2.12.1.2. application.properties
2.12.1.3. Application
2.12.2. 测试 Session
2.12.3. JDBC
2.13. Spring boot with MongoDB
2.13.1. Maven
2.13.2. Application
2.13.3. MongoTemplate
2.13.4. Repository
2.14. Spring boot with MySQL
2.14.1. Maven
2.14.2. Resource
2.14.3. Application
2.14.4. JdbcTemplate
2.14.5. CrudRepository
2.15. Spring boot with Oracle
2.15.1. Maven
2.15.2. application.properties
2.15.3. Application
2.15.4. CrudRepository
2.15.5. JdbcTemplate
2.15.6. Controller
2.16. Spring boot with PostgreSQL
2.16.1. pom.xml
2.16.2. application.properties
2.16.3. Application
2.16.4. CrudRepository
2.16.5. JdbcTemplate
2.16.6. Controller
2.16.7. Test
2.17. 数据源配置
2.17.1. 多数据源配置
2.17.2. JPA 多数据源
2.17.3. Connection and Statement Pooling
2.17.3.1. org.apache.tomcat.jdbc.pool.DataSource
2.17.3.2. druid
2.17.3.3. c3p0 - JDBC3 Connection and Statement Pooling
2.17.3.4. dbcp2
2.17.3.5. bonecp
2.17.3.6. dbcp2
2.18. Spring boot with Redis
2.18.1. Spring boot with Redis
2.18.1.1. maven
2.18.1.2. application.properties
2.18.1.3. JUnit
2.18.1.4. Controller
2.18.2. Redis Pub/Sub
2.18.2.1. Redis配置类
2.18.2.2. 订阅和发布类
2.18.2.3. 消息发布演示
2.19. Spring boot with Caching
2.19.1. maven
2.19.2. 启用 Cache
2.19.3. 测试 Controller
2.19.4. @Cacheable 的用法
2.19.5. @CachePut 用法
2.19.6. 解决Expire 和 TTL 过期时间
2.19.7. SpEL表达式
2.20. Spring boot with Email
2.20.1. Maven
2.20.2. Resource
2.20.3. POJO
2.20.4. RestController
2.20.5. Test
2.21. Spring boot with Spring security
2.21.1. Maven
2.21.2. Reource
2.21.3. Application
2.21.4. WebSecurityConfigurer
2.21.5. RestController
2.21.6. 测试
2.21.7. Spring + Security + MongoDB
2.21.7.1. Account
2.21.7.2. AccountRepository
2.21.7.3. WebSecurityConfiguration
2.22. Spring boot with Oauth2
2.22.1. Maven
2.22.2. Password tools
2.22.3. Server
2.22.3.1. Maven
2.22.3.2. application.properties
2.22.3.3. EnableAuthorizationServer
2.22.3.4. EnableResourceServer
2.22.3.5. Entity Table
2.22.3.6. UserRepository
2.22.3.7. UserService
2.22.3.8. TestRestController
2.22.3.9. 数据库初始化
2.22.3.10. Test
2.22.4. Spring boot with Oauth2 RestTemplate
2.22.4.1. Maven
2.22.4.2. OAuth2ClientConfiguration.java
2.22.4.3. Application.java
2.22.4.4. application.properties
2.22.4.5. Controller
2.22.4.6. Test
2.23. Spring boot with Oauth2 jwt
2.23.1. Maven
2.23.2. Authorization Server
2.23.3. Resource Server
2.23.4. Web Security
2.23.5. 插入数据
2.23.6. 使用 CURL 测试 JWT
2.23.7. 测试 Shell
2.24. Spring boot with Oauth2 jwt 非对称证书
2.24.1. 创建证书
2.24.2. Authorization Server
2.24.3. Resource Server
2.25. Apple iOS 访问 Oauth2
2.26. Spring boot with Scheduling
2.26.1. Application.java
2.26.2. Component
2.26.3. 查看日志
2.26.4. 计划任务控制开关
2.26.5. @Scheduled 详解
2.26.5.1. 每3秒钟一运行一次
2.26.5.2. 凌晨23点运行
2.27. Spring boot with Hessian
2.27.1. Maven
2.27.2. Application
2.27.3. HessianServiceExporter
2.27.4. Service
2.27.5. RestController
2.28. Spring boot with Apache Kafka
2.28.1. 安装 kafka
2.28.2. maven
2.28.3. Spring boot Application
2.28.4. EnableKafka
2.28.5. KafkaListener
2.28.6. 测试
2.28.7. 完整的发布订阅实例
2.28.7.1. Consumer
2.28.7.2. Producer
2.28.7.3. Test
2.28.8. Spring cloud with Kafka
2.28.8.1. Application 主文件
2.28.8.2. 资源配置文件
2.28.8.2.1. application.properties
2.28.8.2.2. bootstrap.properties
2.28.8.2.3. Git 仓库
2.28.8.3. 启用 kafka
2.28.8.4. 消息发布主程序
2.29. Spring boot with RabbitMQ(AMQP)
2.29.1. maven
2.29.2. RabbitMQConfig
2.29.3. 生产者
2.29.4. 消费者
2.30. Spring boot with Git version
2.30.1. CommonRestController 公共控制器
2.30.2. VersionRestController 测试控制器
2.30.3. 创建 .gitattributes 文件
2.31. Spring boot with HTTPS SSL
2.31.1. 生成自签名证书
2.31.2. application.properties 配置文件
2.31.3. 启动 Spring boot
2.31.4. restTemplate 调用实例
2.32. Spring boot with Elasticsearch 2.x
2.32.1. Maven
2.32.2. Application
2.32.3. application.properties
2.32.4. Domain
2.32.5. ElasticsearchRepository
2.33. Spring boot with Elasticsearch 5.5.x
2.33.1. Maven
2.33.2. Application
2.33.3. application.properties
2.33.4. ElasticsearchConfiguration
2.33.5. RestController
2.34. Spring boot with Apache Hive
2.34.1. Maven
2.34.2. application.properties
2.34.3. Configuration
2.34.4. CURD 操作实例
2.35. Spring boot with Phoenix
2.35.1. Maven
2.35.2. application.properties
2.35.3. Configuration
2.36. Spring boot with Data restful
2.36.1. Maven
2.37. Spring boot with ELK(Elasticsearch + Logstash + Kibana)
2.37.1. TCP 方案
2.37.2. Redis 方案
2.37.3. Kafka 方案
2.37.4. Other
2.38. Springboot with Ethereum (web3j)
2.38.1. Maven
2.38.2. application.properties
2.38.3. TestRestController
2.38.4. 测试
2.39. 异步执行
2.39.1. 最简单的配置
2.39.2.
2.40. Spring boot with export csv.
2.41. Spring boot with lombok
3. Spring MVC
3.1. @EnableWebMvc
3.1.1. CORS 跨域请求
3.1.2. Spring MVC CORS with WebMvcConfigurerAdapter
3.2. @Controller
3.2.1. @RequestMapping
3.2.1.1. @RequestMapping("/")
3.2.1.2. 映射多个URL
3.2.1.3. 匹配通配符
3.2.1.4. headers
3.2.1.5. @GetMapping
3.2.1.6. @PostMapping
3.2.2. RequestMapping with Path Variables - @PathVariable
3.2.2.1. URL 参数传递
3.2.2.2. 默认值
3.2.2.3. URL 传递 Date 类型
3.2.2.4. 处理特殊字符
3.2.2.5. @PathVariable 注意事项
3.2.3. RequestMapping with Request Parameters - @RequestParam
3.2.3.1. HTTP GET
3.2.3.2. HTTP POST
3.2.3.3. @RequestParam 传递特殊字符串
3.2.3.4. 传递日期参数
3.2.3.5. 上传文件
3.2.3.6. @RequestParam - POST 数组
3.2.4. @RequestBody
3.2.4.1. @RequestBody 传递 List
3.2.4.2. 传递 Map 数据
3.2.5. @ModelAttribute
3.2.6. @CookieValue - 获取 Cookie 值
3.2.7. @RequestHeader - 获取 HTTP Header 信息
3.2.7.1. @RequestHeader 从 Http 头中获取变量
3.2.8. @SessionAttributes
3.2.9. @ResponseBody
3.2.9.1. 直接返回HTML
3.2.10. @CrossOrigin
3.2.10.1. maxAge
3.2.11. @SessionAttributes
3.2.12. ModelAndView
3.2.12.1. 变量传递
3.2.12.2. ModelMap 传递多个变量
3.2.12.3. redirect
3.2.12.4. ArrayList
3.2.12.5. HashMap
3.2.12.6. 传递对象
3.2.12.7.
3.2.13. HttpServletRequest / HttpServletResponse
3.2.13.1. HttpServletResponse
3.2.13.2. HttpServletRequest
3.3. @RestController
3.3.1. 返回实体
3.3.2. JSON
3.3.3. 处理原始 RAW JSON 数据
3.3.4. 返回 JSON 对象 NULL 专为 "" 字符串
3.3.5. XML
3.3.6. 兼容传统 json 接口
3.3.7. @PageableDefault 分页
3.3.8. 上传文件
3.4. View
3.4.1. Using Spring’s form tag library
3.4.1.1. css
3.4.1.1.1. cssClass
3.4.1.1.2. cssStyle
3.4.1.1.3. cssErrorClass
3.4.1.2. cssClass
3.4.2. Thymeleaf
3.4.2.1. Maven pom.xml
3.4.2.2. Spring 配置
3.4.2.3. controller
3.4.2.4. HTML5 Template
3.4.2.5. thymeleaf 渲染表格
3.4.2.6. URL 链接
3.4.2.7. 拆分字符串
3.4.2.8. 日期格式化
3.4.3. FreeMarker
3.5. Service
3.5.1. Application
3.5.2. 定义接口
3.5.3. 实现接口
3.5.4. 调用 Service
3.6. i18n 国际化
3.6.1. 在 appliction.properties 中配置启用 i18n
3.6.2. 创建语言包文件
3.6.3. 控制器重引用语言包
3.6.4. 参数传递
3.7. FAQ
3.7.1. o.s.web.servlet.PageNotFound
3.7.2. HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
3.7.3. 同时使用 Thymeleaf 与 JSP
3.7.4. 排除静态内容
3.7.5. HTTP Status 406
3.7.6. Caused by: java.lang.IllegalArgumentException: Not a managed type: class common.domain.Article
3.7.7. {"error":"unauthorized","error_description":"Full authentication is required to access this resource"}
4. RestTemplate - Spring4 Restful
4.1. RestTemplate Example
4.1.1. pom.xml
4.1.2. web.xml
4.1.3. springframework.xml
4.1.4. RestController
4.1.5. POJO
4.1.6. 测试
4.2. getForObject
4.2.1. 返回字符串
4.2.2. 传递 GET 参数
4.3. postForObject
4.3.1. 传递对象
4.3.2. 传递数据结构 MultiValueMap
4.4. postForEntity
4.5. PUT
4.6. Delete
4.7. 上传文件
4.8. HTTP Auth
4.8.1. Client
4.9. PKCS12
5. Spring Data
5.1. Spring Data Redis
5.1.1. 集成 Redis
5.1.1.1. pom.xml
5.1.1.2. springframework-servlet.xml
5.1.1.3. Controller
5.1.1.4. index.jsp
5.1.1.5. 测试
5.1.2. RedisTemplate
5.1.2.1. stringRedisTemplate
5.1.2.2. 删除 key
5.1.2.3. ZSET 数据类型
5.1.2.4. Hash
5.1.2.5. List
5.1.2.6. 过期时间未执行
5.1.2.7. 存储 Json 对象
5.1.2.7.1. 集成 RedisTemplate 定义新类 JsonRedisTemplate
5.1.2.7.2. 配置 Redis
5.1.2.7.3. 测试
5.1.3. Spring Data Redis - Repository Examples
5.1.3.1. @EnableRedisRepositories 启动 Redis 仓库
5.1.3.2. 定义 Domain 类
5.1.3.3. Repository 接口
5.1.3.4. 测试代码
5.2. Spring Data MongoDB
5.2.1. Example Spring Data MongoDB
5.2.1.1. pom.xml
5.2.1.2. springframework-servlet.xml
5.2.1.3. POJO
5.2.1.4. Controller
5.2.1.5. 查看测试结果
5.2.1.6. 条件查询
5.2.2. @Document
5.2.2.1. 指定表名
5.2.2.2. @Id
5.2.2.3. @Version
5.2.2.4. @Field 定义字段名
5.2.2.5. @Indexed
5.2.2.5.1. 普通索引
5.2.2.5.2. 唯一索引
5.2.2.5.3. 索引排序方式
5.2.2.5.4. 稀疏索引
5.2.2.5.5. 索引过期时间设置
5.2.2.6. @CompoundIndex 复合索引
5.2.2.6.1. 普通复合索引
5.2.2.6.2. 唯一复合索引
5.2.2.7. @TextIndexed
5.2.2.8. @GeoSpatialIndex 地理位置索引
5.2.2.9. @Transient 丢弃数据,不存到 mongodb
5.2.2.10. @DBRef 做外外键引用
5.2.2.10.1. Article 类
5.2.2.10.2. Hypermedia 类
5.2.2.10.3. MongoRepository
5.2.2.10.4. RestController
5.2.2.10.5. 运行结果
5.2.2.11. @DateTimeFormat
5.2.2.12. @JsonFormat 格式化 json 时间格式
5.2.2.13. @NumberFormat
5.2.2.14. 在 @Document 中使用 Enum 类型
5.2.2.15. 在 @Document 中定义数据结构 List/Map
5.2.2.16. GeoJson 数据类型
5.2.3. MongoRepository
5.2.3.1. 扫描仓库接口
5.2.3.2. findAll()
5.2.3.3. deleteAll()
5.2.3.4. save()
5.2.3.5. count()
5.2.3.6. exists() 判断是否存在
5.2.3.7. existsById()
5.2.3.8. findByXXXX
5.2.3.9. findAll with Sort
5.2.3.10. FindAll with Pageable
5.2.3.10.1. PageRequest - springboot 1.x 旧版本
5.2.3.11. StartingWith 和 EndingWith
5.2.3.12. Between
5.2.3.13. @Query
5.2.4. mongoTemplate
5.2.4.1. Save 保存
5.2.4.2. Insert
5.2.4.3. 更新第一条
5.2.4.4. 更新所有数据
5.2.4.5. 查找并保存
5.2.4.6. upsert
5.2.4.7. 删除
5.2.4.8. 查找一条数据
5.2.4.9. 查找所有数据
5.2.4.10. Query
5.2.4.10.1. 翻页
5.2.4.10.2. between
5.2.4.11. Criteria
5.2.4.11.1. is
5.2.4.11.2. Regex 正则表达式搜索
5.2.4.11.3. lt 和 gt
5.2.4.11.4. exists()
5.2.4.11.5. 包含
5.2.4.12. Update
5.2.4.12.1. set
5.2.4.12.2. 追加数据
5.2.4.12.3. 更新数据
5.2.4.12.4. 删除数据
5.2.4.12.5. inc
5.2.4.12.6. update.addToSet
5.2.4.13. Sort
5.2.4.14. Query + PageRequest
5.2.4.15. newAggregation
5.2.4.16. 创建索引
5.2.4.17. 子对象操作
5.2.4.17.1. List 类型
5.2.5. GeoJson 反序列化
5.2.6. FAQ
5.2.6.1. location object expected, location array not in correct format; nested exception is com.mongodb.MongoWriteException: location object expected, location array not in correct format
5.3. Spring Data MySQL
5.3.1. 选择数据库表引擎
5.3.2. @Entity
5.3.2.1. @Table
5.3.2.1.1. catalog
5.3.2.1.2. schema
5.3.2.1.3. uniqueConstraints
5.3.2.2. @Id
5.3.2.3. @Column
5.3.2.3.1. 字段长度
5.3.2.3.2. 浮点型
5.3.2.3.3. 创建于更新控制
5.3.2.3.4. TEXT 类型
5.3.2.4. @Lob 注解属性将被持久化为 Blog 或 Clob 类型
5.3.2.5. @NotNull 不能为空声明
5.3.2.6. @JsonIgnore 返回json是不含有该字段
5.3.2.7. @DateTimeFormat 处理日期时间格式
5.3.2.8. 默认时间规则
5.3.2.8.1. CreatedDate
5.3.2.8.2. 与时间日期有关的 hibernate 注解
5.3.2.8.2.1. 设置默认时间
5.3.2.8.2.2. 创建时间
5.3.2.8.2.3. 更新时间
5.3.2.8.3. 数据库级别的默认创建日期时间定义
5.3.2.8.4. 数据库级别的默认创建日期与更新时间定义
5.3.2.8.5. 最后修改时间
5.3.2.9. 索引
5.3.2.9.1. 普通索引
5.3.2.9.2. 唯一索引
5.3.2.9.3. 复合索引
5.3.2.10. Enum 枚举数据类型
5.3.2.10.1. 实体中处理 enum 类型
5.3.2.10.2. 数据库枚举类型
5.3.2.11. SET 数据结构
5.3.2.12. 整形数据类型
5.3.2.13. JSON 数据类型
5.3.2.14. @JoinColumn
5.3.2.15. @OneToOne
5.3.2.16. OneToMany 一对多
5.3.2.17. ManyToMany 多对多
5.3.2.18. 外键级联删除
5.3.2.19. 其他
5.3.2.19.1. Cascade
5.3.2.19.2. @JsonIgnore
5.3.3. 创建复合主键
5.3.4. @EnableJpaAuditing 开启 JPA 审计功能
5.3.5. 实体集成
5.3.6. Repository
5.3.6.1. CrudRepository
5.3.6.2. JpaRepository
5.3.6.3. findByXXX
5.3.6.3.1. 传 Boolean 参数
5.3.6.3.2. Eunm 传递枚举参数
5.3.6.4. count 操作
5.3.6.5. OrderBy
5.3.6.6. GreaterThan
5.3.6.7. PageRequest 翻页操作
5.3.6.7.1. PageRequest.of
5.3.6.7.2. Pageable
5.3.6.8. Sort 排序操作操作
5.3.6.9. Query
5.3.6.9.1. 参数传递
5.3.6.9.2. 原生 SQL
5.3.6.9.3. @Query 与 Pageagble
5.3.6.9.4. 返回指定字段
5.3.6.9.5. 返回指定的模型
5.3.6.10. @Transactional
5.3.6.10.1. 删除更新需要 @Transactional 注解
5.3.6.10.2. 回滚操作
5.3.6.11. 锁 @Lock
5.4. EntityManager
5.5. JdbcTemplate
5.5.1. execute
5.5.2. queryForInt
5.5.3. queryForInt
5.5.4. queryForObject
5.5.4.1. 返回整形与字符型
5.5.4.2. 查询 Double 类型数据库
5.5.4.3. 返回日期
5.5.4.4. 返回结果集
5.5.4.5. 通过 "?" 向SQL传递参数
5.5.4.6. RowMapper 记录映射
5.5.5. queryForList
5.5.6. queryForMap
5.5.7. query
5.5.7.1. ResultSet
5.5.7.2. ResultSetExtractor
5.5.7.3. RowMapper
5.5.8. queryForRowSet
5.5.9. update
5.5.10.
5.5.11. 实例参考
5.5.11.1. 参数传递技巧
5.6. Elasticsearch
5.6.1. 内嵌 Elasticsearch
5.6.1.1. Maven
5.6.1.2. src/main/resources/application.properties
5.6.1.3. Domain Class
5.6.1.4. ElasticsearchRepository
5.6.1.5. SearchRestController
5.6.1.6. 测试
5.6.2. 集群模式
5.6.3. Document
5.6.4. Elasticsearch 删除操作
5.6.5. FAQ
5.6.5.1. java.lang.IllegalStateException: Received message from unsupported version: [2.0.0] minimal compatible version is: [5.0.0]
5.7. Spring Data FAQ
5.7.1. No identifier specified for entity
5.7.2. Oracle Date 类型显示日期和时间
5.7.3. java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
5.7.4. Executing an update/delete query; nested exception is javax.persistence.TransactionRequiredException: Executing an update/delete query
6. Spring Security
6.1. 配置 Spring Security
6.1.1. 默认配置
6.1.2. 设置用户名和密码
6.1.3. 禁用 Security
6.2. EnableWebSecurity
6.3. 访问控制列表(Access Control List,ACL)
6.3.1. antMatchers
6.3.2. HTTP Auth
6.3.3. Rest
6.3.4. hasRole
6.3.5. hasAnyRole()
6.3.6. X-Frame-Options 安全
6.4. WebSecurity
6.4.1. 正则匹配
6.5. AuthenticationManagerBuilder
6.5.1. 添加用户
6.5.2. 添加多个用户,并指定角色
6.6. corsConfigurationSource()
6.7. 获取当前用户
7. Interceptor
7.1. WebMvcConfigurerAdapter
7.2. HandlerInterceptor
8. Spring Cloud
8.1. Spring Cloud Config
8.1.1. Git 仓库
8.1.1.1. 分支
8.1.1.2. HTTP Auth
8.1.1.3. basedir
8.1.1.4. 本地git仓库
8.1.2. Server
8.1.2.1. Maven
8.1.2.2. Application
8.1.2.3. application.properties
8.1.2.4. 测试服务器
8.1.3. Client
8.1.3.1. Maven pom.xml
8.1.3.2. Application
8.1.3.3. bootstrap.properties
8.1.3.4. 测试 client
8.1.4. Config server 用户认证
8.1.4.1. Server 配置
8.1.4.1.1. application.properties
8.1.4.1.2. Maven
8.1.4.1.3. 测试是否生效
8.1.4.2. Client 配置
8.1.5. 加密敏感数据
8.1.6. Spring Cloud Config JDBC Backend
8.1.6.1.
8.1.6.2.
8.1.6.3.
8.1.6.4. application.properties
8.1.7. Old
8.1.7.1. Server (Camden.SR5)
8.1.7.2. Client (Camden.SR5)
8.2. Spring Cloud Netflix
8.2.1. Eureka Server
8.2.1.1. Maven
8.2.1.2. Application
8.2.1.3. application.properties
8.2.1.4. 检查注册服务器
8.2.1.5. 为 Eureka Server 增加用户认证
8.2.1.5.1. Maven
8.2.1.5.2. application.properties
8.2.1.5.3. Eureka Client
8.2.1.5.4. Feign Client
8.2.2. Eureka Client
8.2.2.1. Maven
8.2.2.2. Application
8.2.2.3. RestController
8.2.2.4. application.properties
8.2.2.5. 测试
8.2.3. Feign client
8.2.3.1. Maven
8.2.3.2. Application
8.2.3.3. interface
8.2.3.4. application.properties
8.2.3.5. 测试
8.2.3.6. fallback
8.2.4. Zuul
8.2.4.1. Maven
8.2.4.2. EnableZuulProxy
8.2.4.3. application.yml
8.2.4.4. 负载均衡配置
8.3. Spring Cloud Finchley
8.4. Spring Cloud 相关的 application.properties 配置
8.4.1. 启用或禁用 bootstrap
8.5. FAQ
8.5.1. Feign请求超时
8.5.2. 已停止的微服务节点注销慢或不注销
8.5.3. Eureka Client (Dalston.SR1)
8.5.3.1. Maven
8.5.3.2. Application
8.5.3.3. RestController
8.5.3.4. application.properties
8.5.3.5. 测试
8.5.4. Feign 启动出错 PathVariable annotation was empty on param 0.
8.5.5. Feign 提示 Consider defining a bean of type 'common.feign.Cms' in your configuration.
9. SpringBootTest
9.1.
9.2. 测试类
9.2.1. Junit基本注解介绍
9.3.
9.3.1. Assert.assertEquals 判断相等
9.3.2. Assert.assertTrue
9.4. Controller单元测试
9.5. JPA 测试
10. Tomcat Spring 运行环境
10.1. Maven
10.2. Spring Boot Quick start
10.2.1. pom.xml
10.2.2. Controller
10.3. Spring MVC configuration
10.4. Tomcat
10.5. 集成 Mybatis
10.5.1. pom.xml
10.5.2. properties
10.5.3. dataSource
10.5.4. SqlSessionFactory
10.5.5. Mapper 扫描
10.5.6. Mapper 单一class映射
10.5.7. Service
10.5.8. 测试实例
11. Miscellaneous
11.1. Object to Json
11.2. Json To Object
12. FAQ
12.1. org.hibernate.dialect.Oracle10gDialect does not support identity key generation
12.2. No identifier specified for entity
12.3. Could not read document: Invalid UTF-8 middle byte 0xd0
12.4. java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
12.5. Field javaMailSender in cn.netkiller.rest.EmailRestController required a bean of type 'org.springframework.mail.javamail.JavaMailSender' that could not be found.
12.6. org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "172.16.0.3", user "test", database "test ", SSL off
12.7. Spring boot 怎样显示执行的SQL语句
12.8. Cannot determine embedded database driver class for database type NONE
12.9. Spring boot / Spring cloud 时区差8个小时
12.10. @Value 取不到值

范例清单

2.1. Spring boot with Velocity template (pom.xml)
2.2. Example Spring boot with Oracle
2.3. RedisTemplate
2.4. Spring boot with Email (pom.xml)
2.5. Spring boot with Apache kafka.
2.6. Spring boot with Apache kafka.
2.7. Test Spring Kafka
5.1. Spring Data Redis Example
5.2. Spring Data MongoDB - springframework-servlet.xml
8.1. Share feign interface.
10.1. MyBatis