Maven搭建
Maven搭建不是本文重点,所有不再赘述。
Springboot搭建
创建项目
选择maven创建项目
Maven引入Spring Boot基础依赖
<?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>org.example</groupId>
<artifactId>SpringBootSQLTest</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<spring-boot.version>2.1.1.RELEASE</spring-boot.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.outputEncoding>UTF-8</project.build.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!--Spring Boot-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- jdbc -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!--MySQL-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.4.2</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
创建Application.java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
创建配置文件
server:
port: 8080
运行Application
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.1.RELEASE)
2021-06-23 16:32:20.803 INFO 13304 --- [ main] com.czy.Application : Starting Application on DESKTOP-RL6I4CD with PID 13304 (D:\DevelopData\JavaProject\SpringBootSQLTest\SingleLibTable\target\classes started by 90501 in D:\DevelopData\JavaProject\SpringBootSQLTest)
2021-06-23 16:32:20.808 INFO 13304 --- [ main] com.czy.Application : No active profile set, falling back to default profiles: default
2021-06-23 16:32:22.848 INFO 13304 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2021-06-23 16:32:22.871 INFO 13304 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2021-06-23 16:32:22.871 INFO 13304 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/9.0.13
2021-06-23 16:32:22.880 INFO 13304 --- [ main] o.a.catalina.core.AprLifecycleListener : Loaded APR based Apache Tomcat Native library [1.2.23] using APR version [1.7.0].
2021-06-23 16:32:22.880 INFO 13304 --- [ main] o.a.catalina.core.AprLifecycleListener : APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
2021-06-23 16:32:22.880 INFO 13304 --- [ main] o.a.catalina.core.AprLifecycleListener : APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
2021-06-23 16:32:22.903 INFO 13304 --- [ main] o.a.catalina.core.AprLifecycleListener : OpenSSL successfully initialized [OpenSSL 1.1.1c 28 May 2019]
2021-06-23 16:32:23.032 INFO 13304 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2021-06-23 16:32:23.032 INFO 13304 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2134 ms
2021-06-23 16:32:23.353 INFO 13304 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2021-06-23 16:32:23.543 WARN 13304 --- [ main] ion$DefaultTemplateResolverConfiguration : Cannot find template location: classpath:/templates/ (please add some templates or check your Thymeleaf configuration)
2021-06-23 16:32:23.724 INFO 13304 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2021-06-23 16:32:23.728 INFO 13304 --- [ main] com.czy.Application : Started Application in 3.625 seconds (JVM running for 4.582)
运行成功
一个简单的SpringBoot项目就完成了。
MySQL配置
搭建MySQL
网上资源很多,这里就不再赘述了。
[docker部署MySQL](juejin.cn/post/697537…](juejin.cn/post/697537…)
创建一个数据库
CREATE DATABASE gz;
项目连接数据库
配置文件
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://192.168.1.74:3307/gz?characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true&useAffectedRows=true&allowMultiQueries=true
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
platform: mysql
separator: $$$
Application.java去掉无数据库模式
@SpringBootApplication
引入mybatis
创建三大模块controller,dao,service
controller
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("test")
public class TestController {
@Autowired
private InfoService infoService;
@GetMapping("1")
public String getInfo(){
return infoService.getInfo().toString();
}
}
dao
public interface InfoDao {
List<String> getInfo();
}
service
public interface InfoService {
List<String> getInfo();
}
@Service
public class InfoServiceImpl implements InfoService {
@Autowired
private InfoDao infoDao;
@Override
public List<String> getInfo() {
return infoDao.getInfo();
}
}
创建mapper.xml
创建一个mapper文件夹,再创建一个test.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.czy.dao.InfoDao">
<select id="getInfo" resultType="String">
SELECT content FROM t_test
</select>
</mapper>
主程序扫描
// 扫描dao接口
@MapperScan("com.czy.dao")
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
测试
获取到了数据库数据