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

第 5 章 Spring Boot

目录

5.1. Spring Boot Quick start
5.1.1. pom.xml
5.1.2. Controller
5.2. 运行
5.2.1. Linux systemd
5.2.2. 传统 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. error 路径
5.3.2.8. 压缩传输
5.3.2.9. server.servlet.context-path
5.3.2.10. 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. velocity
5.3.11.
5.4. SpringApplication
5.4.1. @SpringBootApplication
5.4.2. @EnableAutoConfiguration
5.4.3. @ComponentScan
5.4.4. CharacterEncodingFilter
5.4.5. 隐藏 Banner
5.4.6. CORS 跨域请求
5.4.7. 实体与仓库扫描
5.4.8. 列出 Beans
5.5. 编译用于Tomcat的 War
5.6. Properties
5.6.1. Application
5.6.2. spring.profiles.active 参数切换配置文件
5.7. Service
5.7.1. Application
5.7.2. 定义接口
5.7.3. 实现接口
5.7.4. 调用 Service
5.8. ViewResolver
5.8.1. application.properties
5.8.2. Application
5.8.3. IndexController
5.8.4. src/main/webapp/WEB-INF/jsp/index.jsp
5.8.5. 集成模板引擎
5.9. Logging
5.9.1. 打印日志
5.9.2. 日志输出级别
5.9.3. 禁止控制台输出日志
5.9.4. 日志分割
5.9.5. 日志写入 MongoDB
5.10. Session share
5.10.1. Redis
5.10.1.1. Maven
5.10.1.2. application.properties
5.10.1.3. Application
5.10.2. 测试 Session
5.10.3. JDBC
5.11. Connection and Statement Pooling
5.11.1. org.apache.tomcat.jdbc.pool.DataSource
5.11.2. druid
5.11.3. c3p0 - JDBC3 Connection and Statement Pooling
5.11.4. dbcp2
5.11.5. bonecp
5.11.6. dbcp2
5.12. Spring boot with MongoDB
5.12.1. Maven
5.12.2. Application
5.12.3. MongoTemplate
5.12.4. Repository
5.13. Spring boot with MySQL
5.13.1. Maven
5.13.2. Resource
5.13.3. Application
5.13.4. JdbcTemplate
5.13.5. CrudRepository
5.14. Spring boot with Oracle
5.14.1. Maven
5.14.2. application.properties
5.14.3. Application
5.14.4. CrudRepository
5.14.5. JdbcTemplate
5.14.6. Controller
5.15. Spring boot with PostgreSQL
5.15.1. pom.xml
5.15.2. application.properties
5.15.3. Application
5.15.4. CrudRepository
5.15.5. JdbcTemplate
5.15.6. Controller
5.15.7. Test
5.16. Spring boot with Email
5.16.1. Maven
5.16.2. Resource
5.16.3. POJO
5.16.4. RestController
5.16.5. Test
5.17. Spring boot with Velocity template
5.17.1. Maven
5.17.2. Resource
5.17.3. Application
5.17.4. RestController
5.17.5. Test
5.18. Spring boot with Spring security
5.18.1. Maven
5.18.2. Reource
5.18.3. Application
5.18.4. WebSecurityConfigurer
5.18.5. RestController
5.18.6. 测试
5.18.7. Spring + Security + MongoDB
5.18.7.1. Account
5.18.7.2. AccountRepository
5.18.7.3. WebSecurityConfiguration
5.19. Spring boot with Scheduling
5.19.1. Application.java
5.19.2. Component
5.19.3. 查看日志
5.19.4. 计划任务控制
5.20. Spring boot with Cache
5.20.1. Spring boot with Redis
5.20.1.1. maven
5.20.1.2. application.properties
5.20.1.3. JUnit
5.20.1.4. Controller
5.20.2. @Cacheable
5.20.2.1. maven
5.20.2.2. Controller
5.21. Spring boot with Hessian
5.21.1. Maven
5.21.2. Application
5.21.3. HessianServiceExporter
5.21.4. Service
5.21.5. RestController
5.22. Spring boot with Apache Kafka
5.22.1. 安装 kafka
5.22.2. maven
5.22.3. Spring boot Application
5.22.4. EnableKafka
5.22.5. KafkaListener
5.22.6. 测试
5.22.7. 完整的发布订阅实例
5.23. Spring boot with Git version
5.23.1. CommonRestController 公共控制器
5.23.2. VersionRestController 测试控制器
5.23.3. 创建 .gitattributes 文件
5.24. Spring boot with HTTPS SSL
5.24.1. 生成自签名证书
5.24.2. application..properties 配置文件
5.24.3. 启动 Spring boot
5.24.4. restTemplate 调用实例
5.25. Spring boot with Docker
5.25.1.
5.25.2.
5.25.3.
5.25.4.
5.26. FAQ
5.26.1. application.properties 参考
5.26.2. org.hibernate.dialect.Oracle10gDialect does not support identity key generation
5.26.3. No identifier specified for entity
5.26.4. Could not read document: Invalid UTF-8 middle byte 0xd0
5.26.5. java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
5.26.6. Field javaMailSender in cn.netkiller.rest.EmailRestController required a bean of type 'org.springframework.mail.javamail.JavaMailSender' that could not be found.
5.26.7. org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "172.16.0.3", user "test", database "test ", SSL off
5.26.8. Spring boot 怎样显示执行的SQL语句

注意以下使用 Spring boot 1.5.2

5.1. Spring Boot Quick start

5.1.1. pom.xml

		
<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>api.netkiller.cn</groupId>
	<artifactId>api.netkiller.cn</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>Skyline</name>
	<description>skylinechencf@gmail.com</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.4.0.RELEASE</version>
	</parent>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

	<build>
		<sourceDirectory>src</sourceDirectory>
		<plugins>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.3</version>
				<configuration>
					<source />
					<target />
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>		
		
		

5.1.2. Controller

		
package hello;

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;

@Controller
@EnableAutoConfiguration
public class SampleController {

    @RequestMapping("/")
    @ResponseBody
    String home() {
        return "Hello World!";
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(SampleController.class, args);
    }
}
		
		

测试

curl http://127.0.0.1:8080/