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

Netkiller Java 手札

Java, Servlet, JavaBean, Struts, Spring ...

Mr. Neo Chan, 陈景峯(BG7NYT)


中国广东省深圳市龙华新区民治街道溪山美地
518131
+86 13113668890


文档始创于2015-11-10

版权声明

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

文档出处:
http://netkiller.github.io
http://netkiller.sourceforge.net

微信扫描二维码进入 Netkiller 微信订阅号

QQ群:128659835 请注明“读者”

$Date: 2013-04-10 15:03:49 +0800 (Wed, 10 Apr 2013) $

关于《Netkiller Java 手札》

作者2002年开始在项目中使用Java,各种原因没有留下Java文档,2015因工作需要重新拾起Java并整理本文档。

本电子书重点内容是Spring boot, Spring cloud, Spring data, Spring security


目录

1. 自述
1.1. 系列文档
1.2. 作者简介
1.3. 写给读者
1.4. 文档下载
1.5. 打赏(Donations)
1.5.1. 微信(Wechat)
1.5.2. 支付宝(Alipay)
1.5.3. PayPal Donations
1.5.4. 银行(Bank)
1. Java
1.1. JVM
1.1.1. 安装 Java 6
1.1.1.1. HeapDumpOnOutOfMemoryError
1.1.2. java-1.8.0-openjdk
1.1.3. java - Launches a Java application.
1.1.3.1. -verbose:class 显示载入jar文件
1.1.3.2. java.io.tmpdir
1.1.3.3. 显示版本号
1.1.4. jar
1.1.5. jdeps - Java class dependency analyzer.
1.2. System
1.2.1. user.dir
1.2.2. java.io.tmpdir
1.2.3. 自定义
1.3. exec 运行shell
1.4. 类型
1.4.1. String
1.4.1.1. 随机字符串
1.4.1.2. 字符串替换处理
1.4.1.2.1. 正则表达式查找与替换
1.4.1.3. substring
1.4.1.4. string to timestamp
1.4.2. 类型转换
1.4.2.1. Long to String
1.4.3. Date
1.4.3.1. SimpleDateFormat
1.4.3.2. Timestamp
1.4.3.3. TimeZone
1.4.3.4. String to Date
1.4.3.5. 比较两个日期与时间
1.4.3.6. Calendar
1.4.3.7. getToday
1.4.3.8. Yesterday
1.4.3.9. ISO 8601
1.4.4. Array
1.4.4.1. for each
1.4.4.2. Array to String
1.4.5. float
1.4.6. double
1.4.7. BigDecimal
1.4.7.1. Convert BigDecimal Object to double value
1.4.8. enum
1.5. 数据结构
1.5.1. Collection
1.5.2. ArrayList
1.5.2.1. ArrayList to String
1.5.2.2. Array to List
1.5.3. HashMap
1.5.3.1. foreach hashmap
1.6. Network
1.6.1. URL
1.6.2. java.io.tmpdir
1.7. JDBC
1.7.1. 安装 JDBC 包
1.7.2. MySQL
1.7.3. Oracle
1.7.3.1. SID
1.7.3.2. SERVICE_NAME
1.7.3.3. TNS
1.7.3.3.1.
1.7.3.4. Oracle RAC Cluster
1.7.3.5. Oracle JDBC Demo
1.7.4. FAQ
1.7.4.1. java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
1.7.4.2. Exception in thread "main" java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
1.8. Util
1.8.1. *.properties
1.8.1.1. propertyNames()
1.8.1.2. keySet()
1.8.1.3. entrySet()
1.8.1.4. 方法中返回 Properties
1.8.1.5.
1.8.1.6. getResourceAsStream()
1.8.1.7. store
1.8.2. Logging
1.8.2.1. console
1.8.3. BASE64
1.9. Reflection 反射
1.9.1. 获得所有变量
1.9.2. 批量赋值
1.9.3. 方法操作
1.9.3.1. 获得所有方法
1.9.3.2. set/get 方法
1.9.3.3. static 方法调用
1.10. Thread 线程
1.10.1. 实现异步执行
1.10.2.
1.10.3.
1.11. java 脚本引擎
1.11.1. Maven
1.11.2. Helloworld
1.11.3. 运行脚本文件
1.11.4. 变量传递
1.11.5. 全局变量与局部变量定义
1.11.6. 调用脚本中的函数或方法
1.11.7. 脚本编译
1.11.8. jjs - Invokes the Nashorn engine.
1.12. Crypto
1.12.1. MD5
1.12.2. AES
2. Build Tools
2.1. Apache Ant
2.1.1. 安装 ant
2.1.1.1. 1.8
2.1.1.2. 1.10.1
2.1.2. ANT
2.1.2.1. ant.project.name
2.1.2.2. 定义
2.1.3. Project
2.1.3.1. property
2.1.3.2. ant
2.1.3.3. environment
2.1.4. path
2.1.5. copy
2.1.6. javac
2.1.7. condition
2.1.8. exec
2.1.8.1. sshexec
2.1.9. if
2.1.10. macrodef
2.1.10.1. Git
2.1.10.2. Rsync
2.1.10.3. SSH
2.1.10.4. maven
2.1.11. Javascript
2.1.12. mail
2.1.13. basename
2.1.14. FAQ
2.1.14.1. warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
2.1.14.2. 调试 exec
2.2. Apache Ivy
2.2.1. Ivy Install
2.2.1.1. source code
2.2.1.2. apt-get
2.2.2. Test example
2.3. maven
2.3.1. 安装
2.3.1.1. Ubuntu
2.3.1.2. 源码安装
2.3.2. Maven 命令
2.3.2.1. help
2.3.2.2. archetype:create
2.3.2.3. clean
2.3.2.4. compile
2.3.2.5. test
2.3.2.6. package
2.3.2.7. install
2.3.2.7.1. install-file
2.3.2.8. war
2.3.2.9. exec
2.3.2.10. dependency
2.3.2.10.1. build-classpath
2.3.2.10.2. dependency:tree 显示包依赖树
2.3.2.10.3. copy-dependencies 导出依赖包
2.3.2.10.4. analyze 查看未被使用的包
2.3.2.10.5. sources 下载源码
2.3.2.11. jar
2.3.2.12. help:describe
2.3.3. Maven 仓库
2.3.4. pom.xml
2.3.4.1. properties
2.3.4.1.1. java.version
2.3.4.2. dependencies
2.3.4.3. build
2.3.4.4. build
2.3.4.4.1. finalName
2.3.4.4.2. sourceDirectory
2.3.4.4.3. resources 文件处理
2.3.4.4.3.1. resources
2.3.4.5. plugins
2.3.4.5.1. 跳过Unit test
2.3.4.5.2. maven-shade-plugin
2.3.5. plugins
2.3.5.1. maven-compiler-plugin
2.3.5.2. maven-war-plugin
2.3.5.3. maven-antrun-plugin
2.3.5.4. maven-install-plugin
2.3.5.5. maven-surefire-plugin
2.3.5.6. maven-deploy-plugin
2.3.5.7. maven-jar-plugin
2.3.5.8. maven-dependency-plugin
2.3.5.9. spring-boot-maven-plugin
2.4. Gradle
2.4.1. gradle 命令
2.4.1.1. tasks 列出任务
2.4.2. build.gradle
2.4.2.1. repositories
2.4.2.2. dependencies
2.4.2.3. jar
2.4.3. gradle.properties
2.4.3.1. 列出 properties
2.4.3.2. 自定义 gradle.properties
2.4.3.3.
2.4.3.4. System.properties
2.4.4. Example
3. Servlet
3.1. Example
3.2. Session
3.3. HttpServletRequest
3.4. Filter
3.4.1. web.xml
3.4.2. Filter 类
3.5. Listener
3.5.1. web.xml
3.5.2. NewsListener 类
3.5.3. NewsTask 类
3.5.4. JSP 中心显示
3.6. JSP
3.6.1. 注释
3.6.2. pageContext
3.6.2.1. queryString
3.6.3. request
3.6.3.1. Form
3.6.4.
3.6.4.1. sendRedirect
3.6.5. cookie
3.6.6. session
3.6.7. page
3.6.7.1. Session
3.6.8. trimDirectiveWhitespaces
3.6.9. include
3.6.10. jsp
3.6.10.1. jsp:forward
3.6.11. error-page
3.6.12. JSP 编程
3.6.12.1. 随机数
3.6.13. FAQ
3.6.13.1. http://www.netkiller.cn/test.html;jsessionid=7D25CE666FF437F2094AA945E97CEB37
3.7. JSTL(JavaServer Pages Standard Tag Library)
3.7.1. c:set
3.7.1.1. c:remove
3.7.2. c:out
3.7.3. c:url
3.7.4. c:redirect
3.7.5. c:import
3.7.6. c:if
3.7.6.1. boolean
3.7.7. c:choose
3.7.8. c:forEach
3.7.8.1. List 处理
3.7.8.2. Map 处理
3.7.9. empty 判断是否为空
3.7.10. JSTL fmt Tag setBundle Example
3.7.10.1. fmt:message
3.7.10.1.1. Language Package
3.7.10.1.2. fmt:message 变量
3.7.10.2.
3.8. WebSocket
3.8.1. Server
3.8.2. Client
I. Spring Framework
4. Spring Tool Suite
4.1. 安装
4.2. Dashboard
5. Spring Boot
5.1. Spring Boot Quick start
5.1.1. pom.xml
5.1.2. Controller
5.2. 运行 Spring boot 项目
5.2.1. Maven run
5.2.2. Linux systemd
5.2.3. 传统 init.d 脚本
5.3. application.properties
5.3.1. PID FILE
5.3.2. 内嵌 tomcat server
5.3.2.1. server.tomcat.basedir
5.3.2.2. server
5.3.2.3. tomcat
5.3.2.4. logging
5.3.2.5. charset
5.3.2.6. Session 配置
5.3.2.7. cookie
5.3.2.8. error 路径
5.3.2.9. 压缩传输
5.3.2.10. server.servlet.context-path
5.3.2.11. ssl
5.3.3. JSON
5.3.4. SMTP 相关配置
5.3.5. Redis
5.3.6. MongoDB
5.3.7. MySQL
5.3.8. Oracle
5.3.9. default_schema
5.3.10. datasource
5.3.11. velocity
5.3.12.
5.4. SpringApplication
5.4.1. @SpringBootApplication
5.4.2. @EnableAutoConfiguration
5.4.3. @ComponentScan
5.4.4. @EntityScan 实体扫描
5.4.5. CharacterEncodingFilter
5.4.6. 隐藏 Banner
5.4.7. CORS 跨域请求
5.4.8. 实体与仓库扫描
5.4.9. 列出 Beans
5.5. 编译用于Tomcat的 War
5.6. Properties
5.6.1. @EnableConfigurationProperties 引用自定义 *.properties 配置文件
5.6.2. spring.profiles.active 参数切换配置文件
5.6.3. SpringApplicationBuilder.properties() 方法添加配置项
5.7. Service
5.7.1. Application
5.7.2. 定义接口
5.7.3. 实现接口
5.7.4. 调用 Service
5.8. Spring boot with Webpage
5.8.1. Maven
5.8.2. application.properties
5.8.3. Application
5.8.4. IndexController
5.8.5. src/main/webapp/WEB-INF/jsp/index.jsp
5.8.6. 集成模板引擎
5.9. String boot with RestTemplate
5.9.1. 在控制器中完整实例
5.10. Spring boot with Logging
5.10.1. 打印日志
5.10.2. 日志输出级别
5.10.3. 禁止控制台输出日志
5.10.4. 标准输出
5.10.5. 日志分割
5.10.6. 日志写入 MongoDB
5.11. Spring boot with Session share
5.11.1. Redis
5.11.1.1. Maven
5.11.1.2. application.properties
5.11.1.3. Application
5.11.2. 测试 Session
5.11.3. JDBC
5.12. Connection and Statement Pooling
5.12.1. org.apache.tomcat.jdbc.pool.DataSource
5.12.2. druid
5.12.3. c3p0 - JDBC3 Connection and Statement Pooling
5.12.4. dbcp2
5.12.5. bonecp
5.12.6. dbcp2
5.13. Spring boot with MongoDB
5.13.1. Maven
5.13.2. Application
5.13.3. MongoTemplate
5.13.4. Repository
5.14. Spring boot with MySQL
5.14.1. Maven
5.14.2. Resource
5.14.3. Application
5.14.4. JdbcTemplate
5.14.5. CrudRepository
5.15. Spring boot with Oracle
5.15.1. Maven
5.15.2. application.properties
5.15.3. Application
5.15.4. CrudRepository
5.15.5. JdbcTemplate
5.15.6. Controller
5.16. Spring boot with PostgreSQL
5.16.1. pom.xml
5.16.2. application.properties
5.16.3. Application
5.16.4. CrudRepository
5.16.5. JdbcTemplate
5.16.6. Controller
5.16.7. Test
5.17. Spring boot with Email
5.17.1. Maven
5.17.2. Resource
5.17.3. POJO
5.17.4. RestController
5.17.5. Test
5.18. Spring boot with Velocity template
5.18.1. Maven
5.18.2. Resource
5.18.3. Application
5.18.4. RestController
5.18.5. Test
5.19. Spring boot with Thymeleaf
5.19.1. Maven
5.19.2. application.properties
5.19.3. Controller
5.19.4. HTML5 Template
5.20. Spring boot with Spring security
5.20.1. Maven
5.20.2. Reource
5.20.3. Application
5.20.4. WebSecurityConfigurer
5.20.5. RestController
5.20.6. 测试
5.20.7. Spring + Security + MongoDB
5.20.7.1. Account
5.20.7.2. AccountRepository
5.20.7.3. WebSecurityConfiguration
5.21. Spring boot with Oauth2
5.21.1. Maven
5.21.2. Password tools
5.21.3. Server
5.21.3.1. Maven
5.21.3.2. application.properties
5.21.3.3. EnableAuthorizationServer
5.21.3.4. EnableResourceServer
5.21.3.5. Entity Table
5.21.3.6. UserRepository
5.21.3.7. UserService
5.21.3.8. TestRestController
5.21.3.9. 数据库初始化
5.21.3.10. Test
5.21.4. Spring boot with Oauth2 RestTemplate
5.21.4.1. Maven
5.21.4.2. OAuth2ClientConfiguration.java
5.21.4.3. Application.java
5.21.4.4. application.properties
5.21.4.5. Controller
5.21.4.6. Test
5.22. Spring boot with Scheduling
5.22.1. Application.java
5.22.2. Component
5.22.3. 查看日志
5.22.4. 计划任务控制
5.23. Spring boot with Cache
5.23.1. Spring boot with Redis
5.23.1.1. maven
5.23.1.2. application.properties
5.23.1.3. JUnit
5.23.1.4. Controller
5.23.2. @Cacheable
5.23.2.1. maven
5.23.2.2. Controller
5.24. Spring boot with Hessian
5.24.1. Maven
5.24.2. Application
5.24.3. HessianServiceExporter
5.24.4. Service
5.24.5. RestController
5.25. Spring boot with Apache Kafka
5.25.1. 安装 kafka
5.25.2. maven
5.25.3. Spring boot Application
5.25.4. EnableKafka
5.25.5. KafkaListener
5.25.6. 测试
5.25.7. 完整的发布订阅实例
5.26. Spring boot with Git version
5.26.1. CommonRestController 公共控制器
5.26.2. VersionRestController 测试控制器
5.26.3. 创建 .gitattributes 文件
5.27. Spring boot with HTTPS SSL
5.27.1. 生成自签名证书
5.27.2. application.properties 配置文件
5.27.3. 启动 Spring boot
5.27.4. restTemplate 调用实例
5.28. Spring boot with Elasticsearch 2.x
5.28.1. Maven
5.28.2. Application
5.28.3. application.properties
5.28.4. Domain
5.28.5. ElasticsearchRepository
5.29. Spring boot with Elasticsearch 5.5.x
5.29.1. Maven
5.29.2. Application
5.29.3. application.properties
5.29.4. ElasticsearchConfiguration
5.29.5. RestController
5.30. Spring boot with Apache Hive
5.30.1. Maven
5.30.2. application.properties
5.30.3. Configuration
5.30.4. CURD 操作实例
5.31. Spring boot with Phoenix
5.31.1. Maven
5.31.2. application.properties
5.31.3. Configuration
5.32. Spring boot with Data restful
5.32.1. Maven
5.33. Spring boot with ELK(Elasticsearch + Logstash + Kibana)
5.33.1. TCP 方案
5.33.2. Redis 方案
5.33.3. Kafka 方案
5.33.4. Other
5.34. Spring boot with Docker
5.34.1.
5.34.2.
5.34.3.
5.34.4.
5.35. SpringBootTest
5.35.1.
5.36. FAQ
5.36.1. application.properties 参考
5.36.2. org.hibernate.dialect.Oracle10gDialect does not support identity key generation
5.36.3. No identifier specified for entity
5.36.4. Could not read document: Invalid UTF-8 middle byte 0xd0
5.36.5. java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
5.36.6. Field javaMailSender in cn.netkiller.rest.EmailRestController required a bean of type 'org.springframework.mail.javamail.JavaMailSender' that could not be found.
5.36.7. org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "172.16.0.3", user "test", database "test ", SSL off
5.36.8. Spring boot 怎样显示执行的SQL语句
6. Spring MVC
6.1. @Controller
6.1.1. @RequestMapping
6.1.1.1. @RequestMapping("/")
6.1.1.2. 映射多个URL
6.1.1.3. headers
6.1.1.4. @GetMapping
6.1.1.5. @PostMapping
6.1.2. RequestMapping with Path Variables - @PathVariable
6.1.2.1. URL 参数传递
6.1.2.2. URL 传递 Date 类型
6.1.2.3. 处理特殊字符
6.1.2.4. @PathVariable 注意事项
6.1.3. RequestMapping with Request Parameters - @RequestParam
6.1.3.1. HTTP GET
6.1.3.2. HTTP POST
6.1.3.3. @RequestParam 传递特殊字符串
6.1.3.4. 传递日期参数
6.1.4. @RequestBody
6.1.4.1. @RequestBody 传递 List
6.1.4.2. 传递 Map 数据
6.1.5. @ModelAttribute
6.1.6. @CookieValue
6.1.7. @RequestHeader
6.1.8. @@SessionAttributes
6.1.9. @ResponseBody
6.1.9.1. 直接返回HTML
6.1.10. ModelAndView
6.1.10.1. 变量传递
6.1.10.2. ModelMap 传递多个变量
6.1.10.3. redirect
6.1.10.4. ArrayList
6.1.10.5. HashMap
6.1.10.6. 传递对象
6.1.10.7.
6.1.11. @CrossOrigin
6.1.12. @SessionAttributes
6.1.13. HttpServletRequest / HttpServletResponse
6.1.13.1. 用于方法参数
6.1.13.2. 注入方式
6.2. @RestController
6.2.1. 返回实体
6.2.2. JSON
6.2.3. XML
6.2.4. 兼容传统 json 接口
6.2.5. @PageableDefault 分页
6.3. @Scheduled 计划任务
6.3.1. 每3秒钟一运行一次
6.3.2. 凌晨23点运行
6.4. View
6.4.1. Using Spring’s form tag library
6.4.1.1. css
6.4.1.1.1. cssClass
6.4.1.1.2. cssStyle
6.4.1.1.3. cssErrorClass
6.4.1.2. cssClass
6.4.2. Thymeleaf
6.4.2.1. Maven pom.xml
6.4.2.2. Spring 配置
6.4.2.3. controller
6.4.2.4. HTML5 Template
6.4.3. FreeMarker
6.5. Properties
6.5.1. 载入*.properties文件
6.5.2. @Value 注解
6.5.3. @PropertySource 注解
6.6. FAQ
6.6.1. o.s.web.servlet.PageNotFound
6.6.2. HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
6.6.3. 同时使用 Thymeleaf 与 JSP
6.6.4. 排除静态内容
6.6.5. HTTP Status 406
6.6.6. Caused by: java.lang.IllegalArgumentException: Not a managed type: class common.domain.Article
7. RestTemplate - Spring4 Restful
7.1. RestTemplate Example
7.1.1. pom.xml
7.1.2. web.xml
7.1.3. springframework.xml
7.1.4. RestController
7.1.5. POJO
7.1.6. 测试
7.2. getForObject
7.2.1. 返回字符串
7.2.2. 传递 GET 参数
7.3. postForObject
7.3.1. 传递对象
7.3.2. 传递数据结构 MultiValueMap
7.4. postForEntity
7.5. PUT
7.6. Delete
7.7. HTTP Auth
7.7.1. Client
7.8. PKCS12
8. Spring Data
8.1. Spring Data Redis
8.1.1. pom.xml
8.1.2. springframework-servlet.xml
8.1.3. Controller
8.1.4. index.jsp
8.1.5. 删除 key
8.1.6. 测试
8.1.7. ZSET 数据类型
8.1.8. Hash
8.1.9. List
8.2. Spring Data MongoDB
8.2.1. Example Spring Data MongoDB
8.2.1.1. pom.xml
8.2.1.2. springframework-servlet.xml
8.2.1.3. POJO
8.2.1.4. Controller
8.2.1.5. 查看测试结果
8.2.1.6. 条件查询
8.2.2. @Document
8.2.2.1. @Indexed
8.2.2.1.1. 普通索引
8.2.2.1.2. 唯一索引
8.2.2.2. @DateTimeFormat
8.2.2.3. @NumberFormat
8.2.2.4. 在 @Document 中使用 Enum 类型
8.2.2.5. 在 @Document 中定义数据结构 List/Map
8.2.3. MongoRepository
8.2.3.1. findAll()
8.2.3.2. deleteAll()
8.2.3.3. save()
8.2.3.4. count()
8.2.3.5. findByXXXX
8.2.3.6. StartingWith 和 EndingWith
8.2.3.7. Between
8.2.3.8. PageRequest
8.2.3.9. @Query
8.2.4. mongoTemplate
8.2.4.1. is
8.2.4.2. Regex 正则表达式搜索
8.2.4.3. lt 和 gt
8.2.4.4. between
8.2.4.5. Criteria
8.2.4.6. Sort
8.2.4.7. Query + PageRequest
8.2.4.8. newAggregation
8.3. Spring Data JPA
8.3.1. @Entity
8.3.1.1. @Id
8.3.1.2. @Table
8.3.1.3. @Column
8.3.1.3.1. 字段长度
8.3.1.3.2. 浮点型
8.3.1.3.3. 创建于更新控制
8.3.1.4. @NotNull 不能为空声明
8.3.1.5. @DateTimeFormat 处理日期时间格式
8.3.1.6. 默认时间规则
8.3.1.6.1. CreatedDate
8.3.1.6.2. 与时间日期有关的 hibernate 注解
8.3.1.6.2.1. 设置默认时间
8.3.1.6.2.2. 创建时间
8.3.1.6.2.3. 更新时间
8.3.1.6.3. 数据库级别的默认创建日期时间定义
8.3.1.6.4. 数据库级别的默认创建日期与更新时间定义
8.3.1.6.5. 最后修改时间
8.3.1.7. 索引
8.3.1.8. Enum 枚举数据类型
8.3.1.8.1. 实体中处理 enum 类型
8.3.1.8.2. 数据库枚举类型
8.3.1.9. 整形数据类型
8.3.1.10. @JoinColumn
8.3.1.11. @OneToOne
8.3.1.12. OneToMany 一对多
8.3.1.13. ManyToMany 多对多
8.3.1.14. 外键级联删除
8.3.1.15. 其他
8.3.1.15.1. Cascade
8.3.1.15.2. @JsonIgnore
8.3.2. 实体集成
8.3.3. Repository
8.3.3.1. 传递枚举参数
8.3.3.2. 翻页操作
8.3.3.3. 排序操作操作
8.3.3.4. OrderBy
8.3.3.5. Query
8.3.3.5.1. 参数传递
8.3.3.6. @Transactional
8.3.3.6.1. 删除更新需要 @Transactional 注解
8.3.3.6.2. 回滚操作
8.3.4. CrudRepository
8.3.5. JpaRepository
8.4. EntityManager
8.5. JdbcTemplate
8.5.1. execute
8.5.2. queryForInt
8.5.3. queryForObject
8.5.3.1. 返回整形与字符型
8.5.3.2. 查询 Double 类型数据库
8.5.3.3. 返回日期
8.5.3.4. 返回结果集
8.5.3.5. 通过 "?" 向SQL传递参数
8.5.3.6. RowMapper 记录映射
8.5.4. queryForList
8.5.5. queryForMap
8.5.6. query
8.5.6.1. ResultSet
8.5.6.2. ResultSetExtractor
8.5.6.3. RowMapper
8.5.7. queryForRowSet
8.5.8. update
8.6. Elasticsearch
8.6.1. 内嵌 Elasticsearch
8.6.1.1. Maven
8.6.1.2. src/main/resources/application.properties
8.6.1.3. Domain Class
8.6.1.4. ElasticsearchRepository
8.6.1.5. SearchRestController
8.6.1.6. 测试
8.6.2. 集群模式
8.6.3. Document
8.6.4. Elasticsearch 删除操作
8.6.5. FAQ
8.6.5.1. java.lang.IllegalStateException: Received message from unsupported version: [2.0.0] minimal compatible version is: [5.0.0]
8.7. Spring Data FAQ
8.7.1. No identifier specified for entity
8.7.2. Oracle Date 类型显示日期和时间
8.7.3. java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
8.7.4. Executing an update/delete query; nested exception is javax.persistence.TransactionRequiredException: Executing an update/delete query
9. Spring Security
9.1. 配置 Spring Security
9.1.1. 禁用 Security
9.2. EnableWebSecurity
9.2.1. 访问控制列表(Access Control List,ACL)
9.2.2. WebSecurity
9.2.3. HTTP Auth
9.2.4. Rest
9.2.5. hasRole
9.2.6. Add User
9.3. 获取当前用户
9.4. HTTP 安全
10. Interceptor
10.1. WebMvcConfigurerAdapter
10.2. HandlerInterceptor
11. Spring Cloud
11.1. Spring Cloud Config
11.1.1. Git 仓库
11.1.1.1. 分支
11.1.1.2. HTTP Auth
11.1.1.3. basedir
11.1.1.4. 本地git仓库
11.1.2. Server
11.1.2.1. Maven
11.1.2.2. Application
11.1.2.3. application.properties
11.1.2.4. 测试服务器
11.1.3. Client
11.1.3.1. Maven pom.xml
11.1.3.2. Application
11.1.3.3. bootstrap.properties
11.1.3.4. 测试 client
11.1.4. Config server 用户认证
11.1.4.1. Server 配置
11.1.4.1.1. application.properties
11.1.4.1.2. Maven
11.1.4.1.3. 测试是否生效
11.1.4.2. Client 配置
11.1.5. 加密敏感数据
11.1.6. Old

Maven pom.xml 请使用最新版本 1.3.1, 下面的 maven 是早期 Camden.SR5 版本的配置

			
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>netkiller.cn</groupId>
	<artifactId>cloud</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>Neo</name>
	<description>http://www.netkiller.cn</description>
	<packaging>jar</packaging>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.3.RELEASE</version>
		<relativePath />
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-config-server</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>Camden.SR5</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>
</project>
			
			

Maven pom.xml Camden.SR5 为早期版本,尽可以使用新版

			
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>netkiller.cn</groupId>
	<artifactId>cloud</artifactId>
	<version>0.0.1-SNAPSHOT</version>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.2.RELEASE</version>
		<relativePath />
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>Camden.SR5</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>			
			
			
11.2. Spring Cloud Netflix
11.2.1. Eureka Server
11.2.1.1. Maven
11.2.1.2. Application
11.2.1.3. application.properties
11.2.1.4. 检查注册服务器
11.2.1.5. 为 Eureka Server 增加用户认证
11.2.1.5.1. Maven
11.2.1.5.2. application.properties
11.2.1.5.3. Eureka Client
11.2.1.5.4. Feign Client
11.2.2. Eureka Client
11.2.2.1. Maven
11.2.2.2. Application
11.2.2.3. RestController
11.2.2.4. application.properties
11.2.2.5. 测试
11.2.3. Feign client
11.2.3.1. Maven
11.2.3.2. Application
11.2.3.3. interface
11.2.3.4. application.properties
11.2.3.5. 测试
11.2.3.6. fallback
11.2.4. Zuul
11.2.4.1. Maven
11.2.4.2. EnableZuulProxy
11.2.4.3. application.yml
11.2.4.4. 负载均衡配置
11.3. FAQ
11.3.1. Feign请求超时
11.3.2. 已停止的微服务节点注销慢或不注销
11.3.3. Eureka Client (Dalston.SR1)
11.3.3.1. Maven
11.3.3.2. Application
11.3.3.3. RestController
11.3.3.4. application.properties
11.3.3.5. 测试
11.3.4. Feign 启动出错 PathVariable annotation was empty on param 0.
11.3.5. Feign 提示 Consider defining a bean of type 'common.feign.Cms' in your configuration.
12. Tomcat Spring 运行环境
12.1. Maven
12.2. Spring Boot Quick start
12.2.1. pom.xml
12.2.2. Controller
12.3. Spring MVC configuration
12.4. Tomcat
12.5. 集成 Mybatis
12.5.1. pom.xml
12.5.2. properties
12.5.3. dataSource
12.5.4. SqlSessionFactory
12.5.5. Mapper 扫描
12.5.6. Mapper 单一class映射
12.5.7. Service
12.5.8. 测试实例
13. MyBatis
13.1. Mybatis 入门
13.2. 接口注解
14. Apache Struts
14.1. struts.xml
14.1.1. include
14.2. Struts Tags
14.2.1. property
14.2.2. set
14.2.3. url
14.2.4. s:include
14.2.5. s:action
14.2.6. HTML Form
14.2.6.1. form
14.2.6.2. textfield
14.2.6.3. s:hidden
14.2.6.4. select
14.2.7. iterator
14.2.8. if elseif else
14.3. Action
14.3.1. redirect
14.3.2. redirectAction
14.3.3. JSON
14.3.3.1. enableGZIP 压缩传输
14.3.3.2. excludeProperties 排除 Properties
14.3.3.3.
14.3.4. 传递 Timestamp 变量
14.4. Ajax + JSON
14.4.1. GET/POST JSON
14.5. Json 内容展示
14.5.1. 禁止方法
14.5.2. 格式化日期
14.5.3. 重命名变量名
14.5.4. org.apache.struts2.json
14.6. Interceptor
14.6.1. Session
14.7. Action 中使用线程
14.8. 日志
14.9. FAQ
14.9.1. Struts 怎样判断用户来自电脑还是移动设备
15. Apache Tiles
15.1. 配置 Tiles
15.1.1. Maven
15.1.2. web.xml
15.2. Template 配置模板
15.3. Struts tiles
16. Play
17. Log
17.1. Logback
17.2. slf4j
17.3. log4j
17.3.1. 安装 Log4j
17.3.1.1. 手工安装
17.3.1.2. Maven
17.3.2. log4j 环境变量
17.3.3. Log4j Example
17.3.4. log4j.properties
18. JSON (JavaScript Object Notation)
18.1. javax.json.*
18.1.1. Json 编码
18.1.2. Json 解码
18.1.3. URL获取Json
18.2. com.google.gson
18.2.1. map 处理
18.2.2. POJO
18.2.3. toJson
18.2.4. fromJson
18.2.5. JsonParser
19. AMQP(Advanced Message Queuing Protocol)
19.1. Send and Recv
19.2. direct
20. NoSQL
20.1. MongoDB
20.1.1. pom.xml
20.1.2. 插入操作
20.1.3. 读取操作
21. Elasticsearch API
21.1. Client
21.2. insert
21.3. Get
21.4. delete
21.5. Search
21.6. Query 查询
21.6.1. match all 匹配所有数据
21.6.2. match 匹配查询
21.6.3. match phrase 短语精准匹配
21.7. Filter 过滤
21.7.1. term
21.7.2. range
21.8. Sorting
21.9. 返回 Source 字段
21.10. Count
21.11. Example 范例
21.11.1. Spring boot 案例
21.12. FAQ
21.12.1. 显示查询 JSON 字符串
22. Jersey - RESTful Web Services in Java.
22.1. Client 2.x
22.1.1. Maven 版本
22.1.2. GET 操作
22.1.3. GET + Auth 用户认证
22.2. Client 1.x
22.2.1. Jersey + Auth + HTTP2 + SSL
23. Apache HttpComponents
23.1. org.apache.commons.lang3
23.1.1. HTML 标签处理
23.2. Apache HttpClient
23.2.1. Maven
23.2.2. HTTP POST 操作
23.2.2.1. Post Data
23.2.2.2. POST RAW 数据
23.2.3. HTTPS
23.2.3.1. Get https 接口
23.2.3.2. POST json 数据
23.2.4. Host name 'api.netkiller.cn' does not match the certificate subject provided
24. Cache
24.1. java memcached client
24.2. Jedis
24.2.1. 认证
24.2.2. jedis.keys
24.3. Ehcache
25. Software Development Kit
25.1. Hessian
25.2. quartz-scheduler
25.3. Redisson
26. Android
26.1. Android Studio
26.2. AndroidManifest.xml
26.2.1. 开启网络
26.3. Layout
26.3.1.

范例清单

1.1. /etc/profile.d/java.sh
2.1. Maven properties
5.1. Example Spring boot with Oracle
5.2. Spring boot with Email (pom.xml)
5.3. Spring boot with Velocity template (pom.xml)
5.4. RedisTemplate
5.5. Spring boot with Apache kafka.
8.1. Spring Data Redis Example
8.2. Spring Data MongoDB - springframework-servlet.xml
11.1. Share feign interface.
12.1. MyBatis
24.1. memcached.java