邮递员给出 401 Unauthorized - Spring Boot & MYSQL
Postman gives 401 Unauthorized - Spring Boot & MYSQL
首先:是的,我知道已经有很多人问过这个问题,但没有人真正帮助我。
其次:
-我已经尝试使用我的用户名+密码从 MySQL 凭证创建一个简单的 Auth 到 Postman 但没有成功
我已经尝试从 postman 中删除 cookie,但没有成功。
描述:
link 我的灵感来源:youtube link for this crud web app
我正在尝试使用 Spring Boot、Lombok、JPA 和 Hibernate MySQL 开发一个简单的 CRUD 网络应用程序。
每次我尝试向 Postman 发出 POST 请求时,它都没有给我任何信息(401 Unathorized),如下所示:
它只给我“401 Unauthorized”。
当然,当我 运行 项目时,它会给我 MYSQL
中显示的数据库
项目内容如下:(那个YML文件里面什么都没有)
这是一些代码:
application.properties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/javatechie
spring.datasource.username = root
spring.datasource.password = rooti
spring.jpa.show-sql = true
spring.jpa.hibernate.ddl-auto = update
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
server.port=9191
还有我的控制器配置:
package com.javatechie.crud.example.controller;
import com.javatechie.crud.example.entity.Product;
import com.javatechie.crud.example.service.ProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
public class ProductController {
@Autowired
private ProductService service;
@PostMapping("/addProduct")
public Product addProduct(@RequestBody Product product){
return service.saveProduct(product);
}
@PostMapping("/addProducts")
public List<Product> addProduct(@RequestBody List<Product> product){
return service.saveProducts(product);
}
@GetMapping("/products")
public List<Product> findAllProducts(){
return service.getProducts();
}
@GetMapping("/product/{id}")
public Product findProductById(@PathVariable int id){
return service.getProductById(id);
}
@GetMapping("/product/{name}")
public Product findProductByName(@PathVariable String name){
return service.getProductByName(name);
}
@PutMapping("/update")
public Product updateProduct(@RequestBody Product product){
return service.updateProduct(product);
}
@DeleteMapping("/delete/{id}")
public String deleteProduct(@PathVariable int id){
return service.deleteProduct(id);
}
}
还有我的 CRUD 网络应用程序想要执行的“服务”配置。 (例如,我想 POST 一个带有“名称”、“数量”、“价格”的请求到我的 MYSQL 数据库中)
package com.javatechie.crud.example.service;
import com.javatechie.crud.example.entity.Product;
import com.javatechie.crud.example.repository.ProductRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.lang.Integer;
import java.util.List;
@Service
public class ProductService {
@Autowired
private ProductRepository repository;
public Product saveProduct(Product product){
return repository.save(product);
}
public List<Product> saveProducts(List<Product> products){
return repository.saveAll(products);
}
public List<Product> getProducts(){
return repository.findAll();
}
public Product getProductById(int id){
return repository.findById(id).orElse(null);
}
public Product getProductByName(String name){
return repository.findByName(name);
}
public String deleteProduct(int id){
repository.deleteById(id);
return "product removed || "+id;
}
public Product updateProduct(Product product){
Product existingProduct=repository.findById(product.getId()).orElse(product);
existingProduct.setName(product.getName());
existingProduct.setQuantity(product.getQuantity());
existingProduct.setPrice(product.getPrice());
return repository.save(existingProduct);
}
}
从 Spring 引导登录:
"C:\Program Files\Java\jdk1.8.0_291\bin\java.exe" "-javaagent:D:\intelj\IntelliJ IDEA Community Edition 2021.1.1\lib\idea_rt.jar=51484:D:\intelj\IntelliJ IDEA Community Edition 2021.1.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_291\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\rt.jar;D:\spring-boot-crud-example\target\classes;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa.5.0\spring-boot-starter-data-jpa-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-aop.5.0\spring-boot-starter-aop-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\spring-aop.3.7\spring-aop-5.3.7.jar;C:\Users\User\.m2\repository\org\aspectj\aspectjweaver.9.6\aspectjweaver-1.9.6.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc.5.0\spring-boot-starter-jdbc-2.5.0.jar;C:\Users\User\.m2\repository\com\zaxxer\HikariCP.0.3\HikariCP-4.0.3.jar;C:\Users\User\.m2\repository\org\springframework\spring-jdbc.3.7\spring-jdbc-5.3.7.jar;C:\Users\User\.m2\repository\jakarta\transaction\jakarta.transaction-api.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\User\.m2\repository\jakarta\persistence\jakarta.persistence-api.2.3\jakarta.persistence-api-2.2.3.jar;C:\Users\User\.m2\repository\org\hibernate\hibernate-core.4.31.Final\hibernate-core-5.4.31.Final.jar;C:\Users\User\.m2\repository\org\jboss\logging\jboss-logging.4.1.Final\jboss-logging-3.4.1.Final.jar;C:\Users\User\.m2\repository\org\javassist\javassist.27.0-GA\javassist-3.27.0-GA.jar;C:\Users\User\.m2\repository\net\bytebuddy\byte-buddy.10.22\byte-buddy-1.10.22.jar;C:\Users\User\.m2\repository\antlr\antlr.7.7\antlr-2.7.7.jar;C:\Users\User\.m2\repository\org\jboss\jandex.2.3.Final\jandex-2.2.3.Final.jar;C:\Users\User\.m2\repository\com\fasterxml\classmate.5.1\classmate-1.5.1.jar;C:\Users\User\.m2\repository\org\dom4j\dom4j.1.3\dom4j-2.1.3.jar;C:\Users\User\.m2\repository\org\hibernate\common\hibernate-commons-annotations.1.2.Final\hibernate-commons-annotations-5.1.2.Final.jar;C:\Users\User\.m2\repository\org\glassfish\jaxb\jaxb-runtime.3.4\jaxb-runtime-2.3.4.jar;C:\Users\User\.m2\repository\org\glassfish\jaxb\txw2.3.4\txw2-2.3.4.jar;C:\Users\User\.m2\repository\com\sun\istack\istack-commons-runtime.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\User\.m2\repository\org\springframework\data\spring-data-jpa.5.1\spring-data-jpa-2.5.1.jar;C:\Users\User\.m2\repository\org\springframework\data\spring-data-commons.5.1\spring-data-commons-2.5.1.jar;C:\Users\User\.m2\repository\org\springframework\spring-orm.3.7\spring-orm-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-context.3.7\spring-context-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-tx.3.7\spring-tx-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-beans.3.7\spring-beans-5.3.7.jar;C:\Users\User\.m2\repository\org\slf4j\slf4j-api.7.30\slf4j-api-1.7.30.jar;C:\Users\User\.m2\repository\org\springframework\spring-aspects.3.7\spring-aspects-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-oauth2-client.5.0\spring-boot-starter-oauth2-client-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter.5.0\spring-boot-starter-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-logging.5.0\spring-boot-starter-logging-2.5.0.jar;C:\Users\User\.m2\repository\ch\qos\logback\logback-classic.2.3\logback-classic-1.2.3.jar;C:\Users\User\.m2\repository\ch\qos\logback\logback-core.2.3\logback-core-1.2.3.jar;C:\Users\User\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j.14.1\log4j-to-slf4j-2.14.1.jar;C:\Users\User\.m2\repository\org\apache\logging\log4j\log4j-api.14.1\log4j-api-2.14.1.jar;C:\Users\User\.m2\repository\org\slf4j\jul-to-slf4j.7.30\jul-to-slf4j-1.7.30.jar;C:\Users\User\.m2\repository\jakarta\annotation\jakarta.annotation-api.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\User\.m2\repository\org\yaml\snakeyaml.28\snakeyaml-1.28.jar;C:\Users\User\.m2\repository\com\sun\mail\jakarta.mail.6.7\jakarta.mail-1.6.7.jar;C:\Users\User\.m2\repository\com\sun\activation\jakarta.activation.2.2\jakarta.activation-1.2.2.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-config.5.0\spring-security-config-5.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-jdk8.5.0\kotlin-stdlib-jdk8-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib.5.0\kotlin-stdlib-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\annotations.0\annotations-13.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-common.5.0\kotlin-stdlib-common-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-jdk7.5.0\kotlin-stdlib-jdk7-1.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-core.5.0\spring-security-core-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\spring-expression.3.7\spring-expression-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-client.5.0\spring-security-oauth2-client-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-core.5.0\spring-security-oauth2-core-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-web.5.0\spring-security-web-5.5.0.jar;C:\Users\User\.m2\repository\com\nimbusds\oauth2-oidc-sdk.3.3\oauth2-oidc-sdk-9.3.3.jar;C:\Users\User\.m2\repository\com\github\stephenc\jcip\jcip-annotations.0-1\jcip-annotations-1.0-1.jar;C:\Users\User\.m2\repository\com\nimbusds\content-type.1\content-type-2.1.jar;C:\Users\User\.m2\repository\com\nimbusds\lang-tag.5\lang-tag-1.5.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-jose.5.0\spring-security-oauth2-jose-5.5.0.jar;C:\Users\User\.m2\repository\com\nimbusds\nimbus-jose-jwt.8.1\nimbus-jose-jwt-9.8.1.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-web.5.0\spring-boot-starter-web-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-json.5.0\spring-boot-starter-json-2.5.0.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-databind.12.3\jackson-databind-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-annotations.12.3\jackson-annotations-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-core.12.3\jackson-core-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8.12.3\jackson-datatype-jdk8-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310.12.3\jackson-datatype-jsr310-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names.12.3\jackson-module-parameter-names-2.12.3.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat.5.0\spring-boot-starter-tomcat-2.5.0.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core.0.46\tomcat-embed-core-9.0.46.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el.0.46\tomcat-embed-el-9.0.46.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket.0.46\tomcat-embed-websocket-9.0.46.jar;C:\Users\User\.m2\repository\org\springframework\spring-web.3.7\spring-web-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-webmvc.3.7\spring-webmvc-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-devtools.5.0\spring-boot-devtools-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot.5.0\spring-boot-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-autoconfigure.5.0\spring-boot-autoconfigure-2.5.0.jar;C:\Users\User\.m2\repository\mysql\mysql-connector-java.0.25\mysql-connector-java-8.0.25.jar;C:\Users\User\.m2\repository\org\projectlombok\lombok.18.20\lombok-1.18.20.jar;C:\Users\User\.m2\repository\net\minidev\json-smart.4.7\json-smart-2.4.7.jar;C:\Users\User\.m2\repository\net\minidev\accessors-smart.4.7\accessors-smart-2.4.7.jar;C:\Users\User\.m2\repository\org\ow2\asm\asm.1\asm-9.1.jar;C:\Users\User\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\User\.m2\repository\jakarta\activation\jakarta.activation-api.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\User\.m2\repository\org\springframework\spring-core.3.7\spring-core-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-jcl.3.7\spring-jcl-5.3.7.jar" com.javatechie.crud.example.SpringBootCrudExampleApplication
. ____ _ __ _ _
/\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.5.0)
2021-06-03 18:13:32.004 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : Starting SpringBootCrudExampleApplication using Java 1.8.0_291 on DESKTOP-ECK0851 with PID 2216 (D:\spring-boot-crud-example\target\classes started by User in D:\spring-boot-crud-example)
2021-06-03 18:13:32.007 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : No active profile set, falling back to default profiles: default
2021-06-03 18:13:32.056 INFO 2216 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2021-06-03 18:13:32.056 INFO 2216 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2021-06-03 18:13:32.122 WARN 2216 --- [kground-preinit] o.s.h.c.j.Jackson2ObjectMapperBuilder : For Jackson Kotlin classes support please add "com.fasterxml.jackson.module:jackson-module-kotlin" to the classpath
2021-06-03 18:13:32.697 INFO 2216 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2021-06-03 18:13:32.781 INFO 2216 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 59 ms. Found 1 JPA repository interfaces.
2021-06-03 18:13:33.766 INFO 2216 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9191 (http)
2021-06-03 18:13:33.780 INFO 2216 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2021-06-03 18:13:33.780 INFO 2216 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.46]
2021-06-03 18:13:33.891 INFO 2216 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2021-06-03 18:13:33.891 INFO 2216 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1834 ms
2021-06-03 18:13:34.188 INFO 2216 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2021-06-03 18:13:34.256 INFO 2216 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.4.31.Final
2021-06-03 18:13:34.381 INFO 2216 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
2021-06-03 18:13:34.477 INFO 2216 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2021-06-03 18:13:34.861 INFO 2216 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2021-06-03 18:13:34.877 INFO 2216 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
2021-06-03 18:13:35.454 INFO 2216 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2021-06-03 18:13:35.468 INFO 2216 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2021-06-03 18:13:35.904 WARN 2216 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2021-06-03 18:13:36.505 INFO 2216 --- [ restartedMain] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: ae5d43ed-6daf-4bd0-af28-6a3556efa3d9
2021-06-03 18:13:36.662 INFO 2216 --- [ restartedMain] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7c8e2912, org.springframework.security.web.context.SecurityContextPersistenceFilter@52505b33, org.springframework.security.web.header.HeaderWriterFilter@50e12e2, org.springframework.security.web.csrf.CsrfFilter@6154ed39, org.springframework.security.web.authentication.logout.LogoutFilter@3dc302ae, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@47e4cf9b, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@6d4c7b4a, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@3b11a857, org.springframework.security.web.authentication.www.BasicAuthenticationFilter@5de87cc1, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@26fe4b74, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@72836232, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2581c580, org.springframework.security.web.session.SessionManagementFilter@39d23724, org.springframework.security.web.access.ExceptionTranslationFilter@6b35fce7, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@60b34615]
2021-06-03 18:13:36.724 INFO 2216 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2021-06-03 18:13:36.755 INFO 2216 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9191 (http) with context path ''
2021-06-03 18:13:36.764 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : Started SpringBootCrudExampleApplication in 5.248 seconds (JVM running for 5.803)
2021-06-03 18:13:36.765 INFO 2216 --- [ restartedMain] o.s.b.a.ApplicationAvailabilityBean : Application availability state LivenessState changed to CORRECT
2021-06-03 18:13:36.767 INFO 2216 --- [ restartedMain] o.s.b.a.ApplicationAvailabilityBean : Application availability state ReadinessState changed to ACCEPTING_TRAFFIC
2021-06-03 18:14:15.319 INFO 2216 --- [nio-9191-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2021-06-03 18:14:15.319 INFO 2216 --- [nio-9191-exec-2] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2021-06-03 18:14:15.320 INFO 2216 --- [nio-9191-exec-2] o.s.web.servlet.DispatcherServlet : Completed initialization in 1 ms
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.5.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.javatechie</groupId>
<artifactId>spring-boot-crud-example</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-boot-crud-example</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-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</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>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</project>
从一开始就是我的错:它是从 IntelliJ“Spring 安全”的复选框中自动选中的。我取消选中它,一切正常。
首先:是的,我知道已经有很多人问过这个问题,但没有人真正帮助我。
其次:
-我已经尝试使用我的用户名+密码从 MySQL 凭证创建一个简单的 Auth 到 Postman 但没有成功
我已经尝试从 postman 中删除 cookie,但没有成功。
描述:
link 我的灵感来源:youtube link for this crud web app
我正在尝试使用 Spring Boot、Lombok、JPA 和 Hibernate MySQL 开发一个简单的 CRUD 网络应用程序。 每次我尝试向 Postman 发出 POST 请求时,它都没有给我任何信息(401 Unathorized),如下所示:
它只给我“401 Unauthorized”。
当然,当我 运行 项目时,它会给我 MYSQL
中显示的数据库项目内容如下:(那个YML文件里面什么都没有)
这是一些代码:
application.properties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/javatechie
spring.datasource.username = root
spring.datasource.password = rooti
spring.jpa.show-sql = true
spring.jpa.hibernate.ddl-auto = update
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
server.port=9191
还有我的控制器配置:
package com.javatechie.crud.example.controller;
import com.javatechie.crud.example.entity.Product;
import com.javatechie.crud.example.service.ProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
public class ProductController {
@Autowired
private ProductService service;
@PostMapping("/addProduct")
public Product addProduct(@RequestBody Product product){
return service.saveProduct(product);
}
@PostMapping("/addProducts")
public List<Product> addProduct(@RequestBody List<Product> product){
return service.saveProducts(product);
}
@GetMapping("/products")
public List<Product> findAllProducts(){
return service.getProducts();
}
@GetMapping("/product/{id}")
public Product findProductById(@PathVariable int id){
return service.getProductById(id);
}
@GetMapping("/product/{name}")
public Product findProductByName(@PathVariable String name){
return service.getProductByName(name);
}
@PutMapping("/update")
public Product updateProduct(@RequestBody Product product){
return service.updateProduct(product);
}
@DeleteMapping("/delete/{id}")
public String deleteProduct(@PathVariable int id){
return service.deleteProduct(id);
}
}
还有我的 CRUD 网络应用程序想要执行的“服务”配置。 (例如,我想 POST 一个带有“名称”、“数量”、“价格”的请求到我的 MYSQL 数据库中)
package com.javatechie.crud.example.service;
import com.javatechie.crud.example.entity.Product;
import com.javatechie.crud.example.repository.ProductRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.lang.Integer;
import java.util.List;
@Service
public class ProductService {
@Autowired
private ProductRepository repository;
public Product saveProduct(Product product){
return repository.save(product);
}
public List<Product> saveProducts(List<Product> products){
return repository.saveAll(products);
}
public List<Product> getProducts(){
return repository.findAll();
}
public Product getProductById(int id){
return repository.findById(id).orElse(null);
}
public Product getProductByName(String name){
return repository.findByName(name);
}
public String deleteProduct(int id){
repository.deleteById(id);
return "product removed || "+id;
}
public Product updateProduct(Product product){
Product existingProduct=repository.findById(product.getId()).orElse(product);
existingProduct.setName(product.getName());
existingProduct.setQuantity(product.getQuantity());
existingProduct.setPrice(product.getPrice());
return repository.save(existingProduct);
}
}
从 Spring 引导登录:
"C:\Program Files\Java\jdk1.8.0_291\bin\java.exe" "-javaagent:D:\intelj\IntelliJ IDEA Community Edition 2021.1.1\lib\idea_rt.jar=51484:D:\intelj\IntelliJ IDEA Community Edition 2021.1.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_291\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_291\jre\lib\rt.jar;D:\spring-boot-crud-example\target\classes;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa.5.0\spring-boot-starter-data-jpa-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-aop.5.0\spring-boot-starter-aop-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\spring-aop.3.7\spring-aop-5.3.7.jar;C:\Users\User\.m2\repository\org\aspectj\aspectjweaver.9.6\aspectjweaver-1.9.6.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc.5.0\spring-boot-starter-jdbc-2.5.0.jar;C:\Users\User\.m2\repository\com\zaxxer\HikariCP.0.3\HikariCP-4.0.3.jar;C:\Users\User\.m2\repository\org\springframework\spring-jdbc.3.7\spring-jdbc-5.3.7.jar;C:\Users\User\.m2\repository\jakarta\transaction\jakarta.transaction-api.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\User\.m2\repository\jakarta\persistence\jakarta.persistence-api.2.3\jakarta.persistence-api-2.2.3.jar;C:\Users\User\.m2\repository\org\hibernate\hibernate-core.4.31.Final\hibernate-core-5.4.31.Final.jar;C:\Users\User\.m2\repository\org\jboss\logging\jboss-logging.4.1.Final\jboss-logging-3.4.1.Final.jar;C:\Users\User\.m2\repository\org\javassist\javassist.27.0-GA\javassist-3.27.0-GA.jar;C:\Users\User\.m2\repository\net\bytebuddy\byte-buddy.10.22\byte-buddy-1.10.22.jar;C:\Users\User\.m2\repository\antlr\antlr.7.7\antlr-2.7.7.jar;C:\Users\User\.m2\repository\org\jboss\jandex.2.3.Final\jandex-2.2.3.Final.jar;C:\Users\User\.m2\repository\com\fasterxml\classmate.5.1\classmate-1.5.1.jar;C:\Users\User\.m2\repository\org\dom4j\dom4j.1.3\dom4j-2.1.3.jar;C:\Users\User\.m2\repository\org\hibernate\common\hibernate-commons-annotations.1.2.Final\hibernate-commons-annotations-5.1.2.Final.jar;C:\Users\User\.m2\repository\org\glassfish\jaxb\jaxb-runtime.3.4\jaxb-runtime-2.3.4.jar;C:\Users\User\.m2\repository\org\glassfish\jaxb\txw2.3.4\txw2-2.3.4.jar;C:\Users\User\.m2\repository\com\sun\istack\istack-commons-runtime.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\User\.m2\repository\org\springframework\data\spring-data-jpa.5.1\spring-data-jpa-2.5.1.jar;C:\Users\User\.m2\repository\org\springframework\data\spring-data-commons.5.1\spring-data-commons-2.5.1.jar;C:\Users\User\.m2\repository\org\springframework\spring-orm.3.7\spring-orm-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-context.3.7\spring-context-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-tx.3.7\spring-tx-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-beans.3.7\spring-beans-5.3.7.jar;C:\Users\User\.m2\repository\org\slf4j\slf4j-api.7.30\slf4j-api-1.7.30.jar;C:\Users\User\.m2\repository\org\springframework\spring-aspects.3.7\spring-aspects-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-oauth2-client.5.0\spring-boot-starter-oauth2-client-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter.5.0\spring-boot-starter-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-logging.5.0\spring-boot-starter-logging-2.5.0.jar;C:\Users\User\.m2\repository\ch\qos\logback\logback-classic.2.3\logback-classic-1.2.3.jar;C:\Users\User\.m2\repository\ch\qos\logback\logback-core.2.3\logback-core-1.2.3.jar;C:\Users\User\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j.14.1\log4j-to-slf4j-2.14.1.jar;C:\Users\User\.m2\repository\org\apache\logging\log4j\log4j-api.14.1\log4j-api-2.14.1.jar;C:\Users\User\.m2\repository\org\slf4j\jul-to-slf4j.7.30\jul-to-slf4j-1.7.30.jar;C:\Users\User\.m2\repository\jakarta\annotation\jakarta.annotation-api.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\User\.m2\repository\org\yaml\snakeyaml.28\snakeyaml-1.28.jar;C:\Users\User\.m2\repository\com\sun\mail\jakarta.mail.6.7\jakarta.mail-1.6.7.jar;C:\Users\User\.m2\repository\com\sun\activation\jakarta.activation.2.2\jakarta.activation-1.2.2.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-config.5.0\spring-security-config-5.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-jdk8.5.0\kotlin-stdlib-jdk8-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib.5.0\kotlin-stdlib-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\annotations.0\annotations-13.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-common.5.0\kotlin-stdlib-common-1.5.0.jar;C:\Users\User\.m2\repository\org\jetbrains\kotlin\kotlin-stdlib-jdk7.5.0\kotlin-stdlib-jdk7-1.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-core.5.0\spring-security-core-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\spring-expression.3.7\spring-expression-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-client.5.0\spring-security-oauth2-client-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-core.5.0\spring-security-oauth2-core-5.5.0.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-web.5.0\spring-security-web-5.5.0.jar;C:\Users\User\.m2\repository\com\nimbusds\oauth2-oidc-sdk.3.3\oauth2-oidc-sdk-9.3.3.jar;C:\Users\User\.m2\repository\com\github\stephenc\jcip\jcip-annotations.0-1\jcip-annotations-1.0-1.jar;C:\Users\User\.m2\repository\com\nimbusds\content-type.1\content-type-2.1.jar;C:\Users\User\.m2\repository\com\nimbusds\lang-tag.5\lang-tag-1.5.jar;C:\Users\User\.m2\repository\org\springframework\security\spring-security-oauth2-jose.5.0\spring-security-oauth2-jose-5.5.0.jar;C:\Users\User\.m2\repository\com\nimbusds\nimbus-jose-jwt.8.1\nimbus-jose-jwt-9.8.1.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-web.5.0\spring-boot-starter-web-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-json.5.0\spring-boot-starter-json-2.5.0.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-databind.12.3\jackson-databind-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-annotations.12.3\jackson-annotations-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\core\jackson-core.12.3\jackson-core-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8.12.3\jackson-datatype-jdk8-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310.12.3\jackson-datatype-jsr310-2.12.3.jar;C:\Users\User\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names.12.3\jackson-module-parameter-names-2.12.3.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat.5.0\spring-boot-starter-tomcat-2.5.0.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core.0.46\tomcat-embed-core-9.0.46.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el.0.46\tomcat-embed-el-9.0.46.jar;C:\Users\User\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket.0.46\tomcat-embed-websocket-9.0.46.jar;C:\Users\User\.m2\repository\org\springframework\spring-web.3.7\spring-web-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-webmvc.3.7\spring-webmvc-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-devtools.5.0\spring-boot-devtools-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot.5.0\spring-boot-2.5.0.jar;C:\Users\User\.m2\repository\org\springframework\boot\spring-boot-autoconfigure.5.0\spring-boot-autoconfigure-2.5.0.jar;C:\Users\User\.m2\repository\mysql\mysql-connector-java.0.25\mysql-connector-java-8.0.25.jar;C:\Users\User\.m2\repository\org\projectlombok\lombok.18.20\lombok-1.18.20.jar;C:\Users\User\.m2\repository\net\minidev\json-smart.4.7\json-smart-2.4.7.jar;C:\Users\User\.m2\repository\net\minidev\accessors-smart.4.7\accessors-smart-2.4.7.jar;C:\Users\User\.m2\repository\org\ow2\asm\asm.1\asm-9.1.jar;C:\Users\User\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\User\.m2\repository\jakarta\activation\jakarta.activation-api.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\User\.m2\repository\org\springframework\spring-core.3.7\spring-core-5.3.7.jar;C:\Users\User\.m2\repository\org\springframework\spring-jcl.3.7\spring-jcl-5.3.7.jar" com.javatechie.crud.example.SpringBootCrudExampleApplication
. ____ _ __ _ _
/\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.5.0)
2021-06-03 18:13:32.004 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : Starting SpringBootCrudExampleApplication using Java 1.8.0_291 on DESKTOP-ECK0851 with PID 2216 (D:\spring-boot-crud-example\target\classes started by User in D:\spring-boot-crud-example)
2021-06-03 18:13:32.007 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : No active profile set, falling back to default profiles: default
2021-06-03 18:13:32.056 INFO 2216 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2021-06-03 18:13:32.056 INFO 2216 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2021-06-03 18:13:32.122 WARN 2216 --- [kground-preinit] o.s.h.c.j.Jackson2ObjectMapperBuilder : For Jackson Kotlin classes support please add "com.fasterxml.jackson.module:jackson-module-kotlin" to the classpath
2021-06-03 18:13:32.697 INFO 2216 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2021-06-03 18:13:32.781 INFO 2216 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 59 ms. Found 1 JPA repository interfaces.
2021-06-03 18:13:33.766 INFO 2216 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9191 (http)
2021-06-03 18:13:33.780 INFO 2216 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2021-06-03 18:13:33.780 INFO 2216 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.46]
2021-06-03 18:13:33.891 INFO 2216 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2021-06-03 18:13:33.891 INFO 2216 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1834 ms
2021-06-03 18:13:34.188 INFO 2216 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2021-06-03 18:13:34.256 INFO 2216 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.4.31.Final
2021-06-03 18:13:34.381 INFO 2216 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
2021-06-03 18:13:34.477 INFO 2216 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2021-06-03 18:13:34.861 INFO 2216 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2021-06-03 18:13:34.877 INFO 2216 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
2021-06-03 18:13:35.454 INFO 2216 --- [ restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2021-06-03 18:13:35.468 INFO 2216 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2021-06-03 18:13:35.904 WARN 2216 --- [ restartedMain] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
2021-06-03 18:13:36.505 INFO 2216 --- [ restartedMain] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: ae5d43ed-6daf-4bd0-af28-6a3556efa3d9
2021-06-03 18:13:36.662 INFO 2216 --- [ restartedMain] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@7c8e2912, org.springframework.security.web.context.SecurityContextPersistenceFilter@52505b33, org.springframework.security.web.header.HeaderWriterFilter@50e12e2, org.springframework.security.web.csrf.CsrfFilter@6154ed39, org.springframework.security.web.authentication.logout.LogoutFilter@3dc302ae, org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter@47e4cf9b, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@6d4c7b4a, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@3b11a857, org.springframework.security.web.authentication.www.BasicAuthenticationFilter@5de87cc1, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@26fe4b74, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@72836232, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@2581c580, org.springframework.security.web.session.SessionManagementFilter@39d23724, org.springframework.security.web.access.ExceptionTranslationFilter@6b35fce7, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@60b34615]
2021-06-03 18:13:36.724 INFO 2216 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2021-06-03 18:13:36.755 INFO 2216 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9191 (http) with context path ''
2021-06-03 18:13:36.764 INFO 2216 --- [ restartedMain] c.j.c.e.SpringBootCrudExampleApplication : Started SpringBootCrudExampleApplication in 5.248 seconds (JVM running for 5.803)
2021-06-03 18:13:36.765 INFO 2216 --- [ restartedMain] o.s.b.a.ApplicationAvailabilityBean : Application availability state LivenessState changed to CORRECT
2021-06-03 18:13:36.767 INFO 2216 --- [ restartedMain] o.s.b.a.ApplicationAvailabilityBean : Application availability state ReadinessState changed to ACCEPTING_TRAFFIC
2021-06-03 18:14:15.319 INFO 2216 --- [nio-9191-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
2021-06-03 18:14:15.319 INFO 2216 --- [nio-9191-exec-2] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
2021-06-03 18:14:15.320 INFO 2216 --- [nio-9191-exec-2] o.s.web.servlet.DispatcherServlet : Completed initialization in 1 ms
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.5.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.javatechie</groupId>
<artifactId>spring-boot-crud-example</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-boot-crud-example</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-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</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>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</project>
从一开始就是我的错:它是从 IntelliJ“Spring 安全”的复选框中自动选中的。我取消选中它,一切正常。