springBoot项目创建
一、新建项目
二、项目设置,这里选择Java version 8,可根据实际情况选择,然后为项目命名(注意,命名不能有大写字母),然后点击下一步
三、为项目选择依赖包,先选择一个spring Web,然后点击下一步
四、直接点击finish
至此,一个spring boot项目就搭起来了,然后我们可以看到目录下有一个启动文件(testdemo/src/main/java/com/example/testdemo/TestdemoApplication.java
)
然后我们用IJ编辑器将数据库连接起来用来生成entity
-----------------------------------------------------------分割线----------------------------------------------------
一、IJ连接数据库(MySQL)
Ctrl+Alt+Shift+S然后按照如下配置选择jpa
点击OK
此时编辑器最右侧点击databases点击添加数据库选择MySQL
进行数据库配置,配置完后可以点test Connect测试一下
然后我们在项目下创建entity文件夹,用来存放实体类 路径testdemo/src/main/java/com/example/testdemo/eneity
打开我们的persistence
然后选择生成实体类的表,然后点击OK
这时可以看到我们的entity文件夹下生成了我们预期的实体类
这个时候我们在根目录下的pom.xml中引入一些配置,这里我直接贴出来我的配置供参考
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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.5</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>testdemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>hellospring</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
引入这些配置后我们需要加载一遍Maven
接下来我们在testdemo/src/main/resources/application.properties
中写入数据库配置文件、端口等
我直接贴出我的application.properties
application.properties
server.port=8669
server.servlet.context-path=/springBoot
# https://dev.mysql.com/downloads/file/?id=502728 安装jdbc
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://minidb.c34ulbc7eg.rds.cn-north-1.amazonaws.com.cn:3306/stg_miniapi?characterEncoding=utf-8&serverTimezone=UTC&useSSL=false
spring.datasource.username=用户名
spring.datasource.password=密码
spring.jpa.database-platform=MySQL5InnoDB
这个时候我们基本的配置就准备就绪了,我们开始写service,我们在路径下建立service文件夹
这里我直接贴出来我的service和implements
IdpFieldsService
package com.example.testdemo.service;
import com.example.testdemo.eneity.IdpFieldsEntity;
import java.util.List;
public interface IdpFieldsService {
//根据编号的传入查询所有匹配数据
public List<IdpFieldsEntity> getFieldsInfo(Integer fieldId);
}
IdpFieldsServiceImpl
package com.example.testdemo.service.impl;
import com.example.testdemo.eneity.IdpFieldsEntity;
import com.example.testdemo.repository.dao.IdpFieldsDao;
import com.example.testdemo.service.IdpFieldsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class IdpFieldsServiceImpl implements IdpFieldsService {
@Autowired
private IdpFieldsDao fieldsDao;
@Override
public List<IdpFieldsEntity> getFieldsInfo(Integer fieldId) {
return fieldsDao.findByAndFieldId(fieldId);
}
}
service层建立好了后我们开始写Dao层
IdpFieldsDao
package com.example.testdemo.repository.dao;
import com.example.testdemo.eneity.IdpFieldsEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface IdpFieldsDao extends JpaRepository<IdpFieldsEntity,Integer> {
List<IdpFieldsEntity> findByAndFieldId(Integer fieldId);
}
Dao层写好后我们开始写controller层
IdpFieldsController
package com.example.testdemo.controller;
import com.example.testdemo.eneity.IdpFieldsEntity;
import com.example.testdemo.service.impl.IdpFieldsServiceImpl;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
@RestController
@EnableAutoConfiguration
public class IdpFieldsController {
@Autowired
private IdpFieldsServiceImpl service;
@RequestMapping(value = {"/hello","/hi"},method = RequestMethod.GET)
public String hello(){
List<IdpFieldsEntity> idpFieldData = service.getFieldsInfo(1);
for(IdpFieldsEntity data:idpFieldData){
System.out.println("result data is = " + data.getCnTitle());
}
return "Hello world";
}
}
至此,我们的spring boot小demo就开发完啦,我们来运行一下试试
看到这样的效果就是运行成功了,然后我们调用接口试试
我们可以看到控制台打印出了我们数据库的字段值
接下来我贴出我的项目文件夹布局
OK,一个小的spring boot demo就完成了
手打不易,给个赞吧