1.去除了大量的xml配置文件
2.简化复杂的依赖管理
3.配合各种starter使用,基本上可以做到自动化配置
4.快速启动容器
5. 配合Maven或Gradle等构件工具打成Jar包后,Java -jar 进行部署运行还是蛮简单的
创建独立Spring应用程序,嵌入式Tomcat,Jetty容器,无需部署WAR包,简化Maven及Gradle配置,尽可能的自动化配置Spring,直接植入产品环境下的实用功能,比如度量指标、健康检查及扩展配置等,无需代码生成及XML配置。
下面为SpringBoot的简要配置 加上七牛存储作为缓存和使用security作为权限的管理(这一部分目前正在学习)
spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf8 username: root password: abc123 # 初始化大小,最小,最大 initialSize: 5 minIdle: 5 maxActive: 20 # 配置获取连接等待超时的时间 maxWait: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 timeBetweenEvictionRunsMillis: 60000 # 配置一个连接在池中最小生存的时间,单位是毫秒 minEvictableIdleTimeMillis: 300000 validationQuery: SELECT 1 FROM DUAL testWhileIdle: true testOnBorrow: false testOnReturn: false # 打开PSCache,并且指定每个连接上PSCache的大小 poolPreparedStatements: true maxPoolPreparedStatementPerConnectionSize: 20 # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 filters: stat,wall,log4j # 通过connectProperties属性来打开mergeSql功能;慢SQL记录 connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 # 合并多个DruidDataSource的监控数据 #useGlobalDataSourceStat=true jpa: database: MYSQL show-sql: true #Hibernate ddl auto (validate|create|create-drop|update)在配置里面spring.jpa.hibernate.ddl-auto
中有5节点值,1.create:每次加载都会加载hibernate会自动创建表,以后启动会覆盖之前的表,这个一般不予使用
1.create-drop:每次加载的时候都根据实体类生成表,但是在sessionFactory关闭的时候会删除
hibernate: ddl-auto: update naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy properties: hibernate: dialect: org.hibernate.dialect.MySQL5Dialect thymeleaf: cache: false #maxfilesize 指定上传文件允许的最大大小 默认1M maxRequestSize:指定允许表单请求的最大数据大小默认10M http: multipart: max-file-size: 5MB max-request-size: 15MB server: port: 8080 tomcat: uri-encoding: UTF-8 context-path: /taleblog #七牛的存储 qiniu: imgSpace: ycimgs AK: sj0iFkqo-dmmFz3u6KkKuBDqRxI4EVqnVUn7I2U_ SK: 7ejmThWZQCTrJnKOU5y8-5B2RNLWiGPeADWU95Co #url 的权限访问。#一些资源没有配置权限访问例如:show操作没有 #配置什么角色可以访问,那么它可以被所有的用户的访问。 securityconfig: openway: yml #取值(yml代表配置文件读取权限信息,sql代表从数据库读取权限信息) logoutsuccssurl: / permitall: /rest/**,/bbs**,/login deniedpage: /deny
#这里需要配置较详细的权限。注意权限不能互斥 urlroles: /role/index = admin; /role/add = admin; /role/edit/* = sa; /role/delete/** = sa; /order/delete/** = admin ## LOG4J配置 #log4j.rootCategory=INFO, stdout # ## 控制台输出 #log4j.appender.stdout=org.apache.log4j.ConsoleAppender #log4j.appender.stdout.layout=org.apache.log4j.PatternLayout #log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n #spring.redis.host=localhost #spring.redis.port=8080 #spring.redis.pool.max-idle=8 #spring.redis.pool.min-idle=0 #spring.redis.pool.max-active=8 #spring.redis.pool.max-wait=-1 #amazon.associateId = habuma-20 ##添加那个目录的文件需要restart #spring.devtools.restart.additional-paths=src/main/java ##排除那个目录的文件不需要restart #spring.devtools.restart.exclude=static/**,public/**
在配置里面spring.jpa.hibernate.ddl-auto的节点配置中有5节点值
1.create:每次加载都会加载hibernate会自动创建表,以后启动会覆盖之前的表,这个一般不予使用
2.create-drop:每次加载的时候都根据实体类创建表,但是在sessionFactory关闭的时候会删除表单
3.update:加载的是会根据实体类创建表,这些表名是依据@Entity和@Table的注释的值,SessionFactory关闭的话也不会删除,且斜刺加载hibernate时根据实体类更新结构或者有新的实体类的话 就新增表
4.validate:启动时验证表结构,不会创建表。
5.none:启动时不做任何操作。
从大三开始这么久 从开始的学着懵懵懂懂 都现在也是懵懵懂懂的。动手做过的东西也不是很多,从开始的学习动力十足到现在慢慢的开始懒了下来,先随便写一个有关学习方面的 希望自己能坚持