根据上一篇文章中搭建了一个springboot简单工程,在该工程中编写HelloWordController.java接口类,并在该类中写了一个main函数,做为该类的接口服务启动入口.此时如果新增多个接口服务类时,不修改任何代码是无法访问新增类的接口服务. 实际上springboot提供了统一配置全局扫描接口服务类的启动方法,本文就介绍如何使用: 如何配置统一启动入口 在src根目录下新建一个app包,在包下创建一个App.java类,通过代码配置使其作为该工程的一个通用启动入口类: pack…
基于spring-boot的社区社交微信小程序,适合做脚手架.二次开发 代码地址如下:http://www.demodashi.com/demo/13867.html 1 概述 笔者做的一个后端基于spring-boot的社区社交微信小程序,可以作为开发的脚手架,开发速度快,灵活,前后端分离,很适合二次开发.数据主要存储在MySQL上,笔者封装了一个MysqlGenerator.java工具类,结合spring jdbc,做数据库操作很方便.另外提供了一个文档系统,后端人员产出接口直接写出mar…
-- 以下内容均基于2.1.8.RELEASE版本 由上一篇SpringBoot基本启动过程的分析可以发现在run方法内部启动SpringBoot应用时采用多个步骤来实现,本文记录启动的第二个环节:环境信息准备 阅读提示 阅读本文应当关注的重点: 应用一开始启动阶段通过SPI扩展机制获取的接口,往往他们就是Spring框架扩展的一部分 有关于事件发布的接口,它们用于处理不同阶段的任务,这里也是Spring框架扩展的一部分 默认配置和指定环境的配置(profiles)他们的关系(是否覆盖,优先级等…
因项目集成了Redis缓存部分数据,需要在程序启动时将数据加载到Redis中,即初始化数据到Redis. 在SpringBoot项目下,即在容器初始化完毕后执行我们自己的初始化代码. 第一步:创建实现ApplicationListener接口的类 package com.stone; import com.stone.service.IPermissionService; import org.springframework.context.ApplicationListener; import…
前面我们使用sharding-jdbc配置了分库分表.sharding-jdbc还有个用法,就是实现读写分离. 什么时候需要或者可以使用读写分离? 当我们的项目所使用的数据库查询的访问量,访问频率,及访问的并发量远大于修改的时候,我们需要将访问数据库的方式读写分离.比如我们使用的微博,更多人都只是刷一刷,发布微博动态的次数还是远小于我们刷微博的次数的. sharding-jdbc sharding-jdbc较于MyCat,我认为最大的优势是:sharding-jdbc是轻量级的第三方工具,我们只…
SpringBoot的配置文件在resources文件夹下 springboot的配置文件支持两种形式的写法,一种是经典的properties另一种是yml yml通过空格缩进的形式来表示对象的层级关系,这里采用yml方法来示例,如果你之前写过k8s的容器文件话那就更容易上手了 首先要把文件的编码格式设置成UTF-8不然会中文乱码 更改配置文件的文件后缀为yml,然后编写配置文件 server:port可以设置springboot的启动端口 然后我们在控制器中声明几个属性来拿配置文件的值,然后通…
有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发.调试.打包到最后的投产上线. 开发阶段 单元测试 在开发阶段的时候最重要的是单元测试了,springboot对单元测试的支持已经很完善了. 1.在pom包中添加spring-boot-starter-test包引用 <dependency> <groupId>org.springframework.boot</groupI…
学习文章来自:http://www.ityouknow.com/spring-boot.html web开发 spring boot web开发非常的简单,其中包括常用的json输出.filters.property.log等 json 接口开发 在以前的spring 开发的时候需要我们提供json接口的时候需要做那些配置呢 添加 jackjson 等相关jar包 配置spring controller扫描 对接的方法添加@ResponseBody 就这样我们会经常由于配置错误,导致406错误等…
今天发现一台服务器上的springboot程序启动特别慢,完全启动起来用了有好几分钟.刚开始以为是代码写的有问题造成了卡死,直到看到这条log: 2017-03-08 10:06:49.600 INFO 6439 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8888 (http) 2017-03-08 10:06:49.613 INFO 6439 --- [main]…
SpringBoot应用运维脚本 一.获取PID 二.Kill命令 三.nohup命令 四.编写SpringBoot应用运维脚本 4.1全局变量 4.2编写核心方法 4.3Info方法 4.4status方法 4.5start方法 4.6stop方法 4.7restart方法 4.8测试 4.9完整的server.sh内容 编写SpringBoot应用运维脚本除了基本的Shell语法要相对熟练之外,还需要解决两个比较重要的问题: 正确获取目标应用程序的进程ID,也就是获取Process ID(下…