Springboot 禁用数据库自动配置

如果我们用SpringBoot实现一个简单的微服务,不需要数据库,你会发现在写完代码启动时会报

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties'

之类的错误。这是因为SpringBoot默认会自动配置数据库,如果业务不需要,就要手动禁用数据库自动配置,在Application的SpringBootApplication注解里加上

@SpringBootApplication(exclude = {
DataSourceAutoConfiguration.class,
DataSourceTransactionManagerAutoConfiguration.class,
HibernateJpaAutoConfiguration.class})

Spring boot+mybatis+druid+SQL监控配置

之前写过一篇搭建Spring boot + mybatis + freemarker项目,Spring boot默认的数据库连接池是tomcat-jdbc,今天我们要用druid替换它。

什么是druid

druid是阿里巴巴开源的数据库连接池,自称是Java语言中最好的数据库连接池,提供强大的监控和扩展功能。

Continue reading “Spring boot+mybatis+druid+SQL监控配置” »

Spring boot 注册Servlet和Filter

使用Spring开发web程序,在大部分情况下,都是通过Spring默认的DispatcherServlet,转发请求到Controller,我们在Controller里处理请求。但有时候,可能有些请求我们不希望通过Spring,而是通过其他Servlet处理。如果是普通的Spring项目,注册Filter和Servlet只需在web.xml时添加filter、filter-mapping、servlet、servlet-mapping,但Spring boot项目里没有web.xml。

Spring boot有两种方法注册Servlet和Filter:代码注册、注解注册。
Continue reading “Spring boot 注册Servlet和Filter” »

Sonatype Nexus mavn私服安装与maven上传jar包

为什么要使用Maven私服?

某些jar包仅供内部使用,不适合在中央库发布。不用私服,团队间只能私底下传输打出来的jar包了,私服就是用来管理这些包。

Sonatype Nexus是什么?

Sonatype Nexus就是一个maven私服,也可以称做代理服务器。原理是代理中央库,同时管理私有库,在使用时,我们只要把maven的镜像地址配置成nexus地址即可。

Sonatype Nexus的安装

懒得折腾,所以直接用docker了。使用的是Sonatype Nexus Repository Manager 2镜像。当然,如果你有钻研学习精神,还是自己按官方教程一步一步来,否则建议直接用docker,一个字,快!

docker安装不再介绍

Continue reading “Sonatype Nexus mavn私服安装与maven上传jar包” »

搭建Spring boot + mybatis + freemarker项目

Spring boot是什么?

可以将Spring boot理解为spring项目的脚手架,它会默认配置我们引入的第三方依赖模块(jar),我们无需再用繁琐的xml配置,也可以快速搭建spring项目。Spring boot还内嵌了web容器(默认tomcat),服务器上不再需要单独安装tomcat,只需运行jar包即可。非常适合开发现在流行的微服务,拆分独立业务。

Spring boot优点

  1. 降低开发成本。大大简化了项目搭建时xml配置。
  2. 降低运维成本。内嵌了tomcat,不再需要运维再搭建tomcat.

Continue reading “搭建Spring boot + mybatis + freemarker项目” »