SpringBoot框架搭建教程分享
发布时间 - 2026-01-11 02:57:55 点击率:次SpringBoot几乎集成了SpringMVC的所有内容,以及tomcat容器,同时去除了繁复的xml配置文件,开发起来十分方便;页面配合thymeleaf模板渲染也是非常简单,如果是前后端分离的项目,那么SpringBoot就专门负责提供restful风格的api接口,通过json格式与前端进行数据交互。

下面pom.xml里面一些依赖
<?xml version="1.0" encoding="UTF-8"?>
<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>com.test</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<modules>
<module>common</module>
<module>web</module>
</modules>
<packaging>pom</packaging>
<name>demo</name>
<description>a project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>7.0.47</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.3.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.6.RELEASE</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.19</version>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.0.1</version>
</dependency>
<!--log4j2-->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.12</version>
</dependency>
</dependencies>
<build>
<finalName>demo</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>application-dev.properties</exclude>
<exclude>application-prod.properties</exclude>
<exclude>application.properties</exclude>
</excludes>
<filtering>true</filtering>
</resource>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<includes>
<include>application-${environment}.properties</include>
<include>application.properties</include>
</includes>
</resource>
</resources>
</build>
<profiles>
<profile>
<id>dev</id>
<properties>
<environment>dev</environment>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<environment>prod</environment>
</properties>
</profile>
</profiles>
</project>
下面是SpringBoot的启动配置文件application.properties:
spring.thymeleaf.cache=false server.port=8021 server.context-path=/demo spring.datasource.url=jdbc:mysql://localhost:3306/demo?characterEncoding=utf8&useSSL=false spring.datasource.username=root spring.datasource.password=XXX spring.datasource.driver-class-name=com.mysql.jdbc.Driver
下面是SpringBoot的启动类:
package com.test.demo.web;
import com.test.demo.web.filter.AccessFilter;
import com.test.demo.web.interceptor.AccessInterceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.boot.autoconfigure.SpringBootVFS;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import javax.sql.DataSource;
@SpringBootApplication(scanBasePackages = "com.test.demo")
@MapperScan("com.test.demo.common.dao")
@Configuration
public class WebApplication { @Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return new org.apache.tomcat.jdbc.pool.DataSource();
}
// 提供SqlSession
@Bean
public SqlSessionFactory sqlSessionFactoryBean() throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource());
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
sqlSessionFactoryBean.setVfs(SpringBootVFS.class);
sqlSessionFactoryBean.setTypeAliasesPackage("com.test.demo.common.model");
sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath:/mapper/*.xml"));
return sqlSessionFactoryBean.getObject();
}
// 事务配置
@Bean
public PlatformTransactionManager transactionManager() {
return new DataSourceTransactionManager(dataSource());
}
// 主启动函数
public static void main(String[] args) {
SpringApplication.run(WebApplication.class, args);
}
// 过滤器配置
@Bean
public FilterRegistrationBean someFilterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean();
AccessFilter accessFilter = new AccessFilter();
registration.setFilter(accessFilter);
registration.addUrlPatterns("/admin/*");
registration.setName("accessFilter");
return registration;
}
// 拦截器配置
@Configuration
public class addInterceptor extends WebMvcConfigurerAdapter {
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new AccessInterceptor()).addPathPatterns("/admin/**");
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# SpringBoot框架搭建
# SpringBoot框架搭建教程
# SpringBoot搭建
# Spring Boot构建框架详解
# Spring Boot快速搭建Spring框架教程
# Spring Boot 快速搭建微服务框架详细教程
# JavaEE微框架Spring Boot深入解读
# 初识Spring Boot框架之Spring Boot的自动配置
# 初识Spring Boot框架和快速入门
# Spring-Boot框架初步搭建
# 【spring-boot】快速构建spring-boot微框架的方法
# 配置文件
# 所有内容
# 大家多多
# 后端
# 拦截器
# 集成了
# devtools
# exclusions
# optional
# exclusion
# scope
# logging
# true
# tx
# jdbc
# dependency
# RELEASE
# relativePath
# properties
# starter
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤
5种Android数据存储方式汇总
夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化
jQuery中的100个技巧汇总
php 三元运算符实例详细介绍
微信小程序 require机制详解及实例代码
🚀拖拽式CMS建站能否实现高效与个性化并存?
百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭
Laravel如何配置Horizon来管理队列?(安装和使用)
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
如何在建站宝盒中设置产品搜索功能?
网站建设要注意的标准 促进网站用户好感度!
焦点电影公司作品,电影焦点结局是什么?
如何获取上海专业网站定制建站电话?
宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程
node.js报错:Cannot find module 'ejs'的解决办法
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
如何在Windows服务器上快速搭建网站?
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
html5的keygen标签为什么废弃_替代方案说明【解答】
Laravel如何为API编写文档_Laravel API文档生成与维护方法
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
韩国服务器如何优化跨境访问实现高效连接?
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
C++用Dijkstra(迪杰斯特拉)算法求最短路径
网站页面设计需要考虑到这些问题
如何快速搭建高效可靠的建站解决方案?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
phpredis提高消息队列的实时性方法(推荐)
如何在Windows环境下新建FTP站点并设置权限?
微信小程序 scroll-view组件实现列表页实例代码
网站制作大概多少钱一个,做一个平台网站大概多少钱?
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
如何构建满足综合性能需求的优质建站方案?
深入理解Android中的xmlns:tools属性
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
详解jQuery停止动画——stop()方法的使用
Laravel怎么使用artisan命令缓存配置和视图
如何在阿里云虚拟主机上快速搭建个人网站?
Linux网络带宽限制_tc配置实践解析【教程】
Laravel模型事件有哪些_Laravel Model Event生命周期详解
如何在万网自助建站中设置域名及备案?
Android使用GridView实现日历的简单功能
EditPlus中的正则表达式 实战(4)
html5audio标签播放结束怎么触发事件_onended回调方法【教程】

