Java 我创建的Bean中的项目Spring启动问题

Java 我创建的Bean中的项目Spring启动问题,java,spring,spring-boot,Java,Spring,Spring Boot,嗨,我的简单Spring Boot安全项目 我的用户控制器 @RestController @RequestMapping(path= "/api") @RequiredArgcContructor public class UserController { private final UserService userService; @PostMapping public String create(@RequestBody UserD

嗨,我的简单Spring Boot安全项目

我的用户控制器

@RestController
@RequestMapping(path= "/api")
@RequiredArgcContructor
public class UserController {

    
    private final UserService userService;

    @PostMapping
    public String create(@RequestBody UserDTO userDto){
        return  userService.save(userDto);
    }

}
我的用户服务

@Service
@RequiredArgsConstructor
public class UserService {

 
    private  UserManager userManager;
    private  Mapper<UserDTO, UserEntity> userDTOUserMapper;

    public String save(UserDTO userDto) {
        return userManager.signUp(userDTOUserMapper.map(userDto));
    }

}
我的映射配置

 @Configuration
public class ApiMappingConfig {

    //userDTO mapping user

    @Bean
    public Mapper<UserDTO, UserEntity> userDTOUserMapper(){
        return Mapping.from(UserDTO.class)
                .to(UserEntity.class)
                .omitInDestination(UserEntity::getLocked)
                .omitInDestination(UserEntity::getUser_id)
                .omitInDestination(UserEntity::getEnabled)
                .mapper();
    }
}
    
我的主课

 @SpringBootApplication
public class UserlogintaskApplication {

    public static void main(String[] args) {
        SpringApplication.run(UserlogintaskApplication.class, args);
    }

}
我的错误

创建文件中定义了名为“userController”的bean时出错 [C:\Users\user\Desktop\Java\userlogintask\target\classes\com\userlogintask\userlogintask\controller\UserController.class]: 通过构造函数参数0表示的未满足依赖关系; 嵌套异常是 org.springframework.beans.factory.unsatifiedDependencyException: 创建文件中定义了名为“userService”的bean时出错 [C:\Users\user\Desktop\Java\userlogintask\target\classes\com\userlogintask\userlogintask\service\UserService.class]: 通过构造函数参数1表示的未满足依赖关系; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建在类路径中定义了名为“userDTOUserMapper”的bean 资源 [com/userlogintask/userlogintask/mapping/ApiMappingConfig.class]:Bean 工厂方法实例化失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:未能 实例化[com.remondis.remap.Mapper]:工厂方法 “userDTOUserMapper”引发异常;嵌套异常是 com.remondis.remap.MappingException:属性的get方法 com.userlogintask.userlogintask.model.UserEntity类型中的“enabled”为 不是有效的JavaBean属性。在 org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.beans.factory.support.DefaultListableBeanFactory.PreInstanceSingleton(DefaultListableBeanFactory.java:944) ~[spring-beans-5.3.5.jar:5.3.5]at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.5.jar:5.3.5]at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.5.jar:5.3.5]at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:769) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.run(SpringApplication.java:326) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1313) ~[spring-boot-2.4.4.jar:2.4.4]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1302) ~[spring-boot-2.4.4.jar:2.4.4]at userlogintask.userlogintask.UserlogintaskApplication.main(UserlogintaskApplication.java:14) ~[classes/:na]at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机 方法)~[na:na]at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) ~[na:na]at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]at java.base/java.lang.reflect.Method.invoke(Method.java:564)~[na:na] 在 org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) ~[spring-boot-devtools-2.4.4.jar:2.4.4]由以下原因引起: org.springframework.beans.factory.unsatifiedDependencyException: 创建文件中定义了名为“userService”的bean时出错 [C:\Users\user\Desktop\Java\userlogintask\target\classes\com\userlogintask\userlogintask\service\UserService.class]: 通过构造函数参数1表示的未满足依赖关系; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建在类路径中定义了名为“userDTOUserMapper”的bean 资源 [com/userlogintask/userlogintask/mapping/ApiMappingConfig.class]:Bean 工厂方法实例化失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:未能 实例化[com.remondis.remap.Mapper]:工厂方法 “userDTOUserMapper”引发异常;嵌套异常是 com.remondis.remap.MappingException:属性的get方法 com.userlogintask.userlogintask.model.UserEntity类型中的“enabled”为 不是有效的JavaBean属性。在 org.springframework.beans.factory.s
 @Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
public class UserEntity implements UserDetails {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "user_id",unique = true)
    private Long user_id;
    @Column(name = "first_name")
    private String firstName;
    @Column(name = "last_name")
    private String lastName;
    private String email;
    private String password;
    @Enumerated(EnumType.STRING)
    private UserRole userRole;

    private Boolean locked = false;
    private Boolean enabled = false;

    public UserEntity(String firstName,
                      String lastName, String email,
                      String password, UserRole userRole) {

        this.firstName = firstName;
        this.lastName = lastName;
        this.email = email;
        this.password = password;
        this.userRole = userRole;
    }

    @Override
    public Collection<? extends GrantedAuthority> getAuthorities() {
        return Collections.singleton(new SimpleGrantedAuthority(userRole.name()));
    }

    @Override
    public String getPassword() {
        return password;
    }

    @Override
    public String getUsername() {
        return email;
    }

    public String getFirstName() {
        return firstName;
    }

    public String getLastName() {
        return lastName;
    }

    @Override
    public boolean isAccountNonExpired() {
        return true;
    }

    @Override
    public boolean isAccountNonLocked() {
        return !locked;
    }

    @Override
    public boolean isCredentialsNonExpired() {
        return true;
    }

    @Override
    public boolean isEnabled() {
        return enabled;
    }

}
  @Data
@NoArgsConstructor
@AllArgsConstructor
public class UserDTO {

    private String firstName;
    private String lastName;
    private String email;
    private String password;
    private UserRole userRole;

}
 @SpringBootApplication
public class UserlogintaskApplication {

    public static void main(String[] args) {
        SpringApplication.run(UserlogintaskApplication.class, args);
    }

}
<?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.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.userlogintask</groupId>
    <artifactId>userlogintask</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>userlogintask</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>15</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-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>42.2.20</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.remondis</groupId>
            <artifactId>remap</artifactId>
            <version>4.2.5</version>
        </dependency>
        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>javax.persistence-api</artifactId>
            <version>2.2</version>
        </dependency>
        <dependency>
            <groupId>org.liquibase</groupId>
            <artifactId>liquibase-core</artifactId>
            <version>4.3.5</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.4.4</version>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>
        
.MappingException: The get-method for property 'enabled' in type com.userlogintask.userlogintask.model.UserEntity is not a valid Java Bean property. at