swarnapriyanayak
swarnapriyanayak

Reputation: 21

Error creating bean with name 'userRepository' defined in com.user.Repository.UserRepository defined in @EnableJpaRepositories declared on JpaRe

Repository *As I am trying to enter details of user but i am getting bean Exception i don't what i have missed from repository interface i have implements JPA and i triad with crud as well . I dint mention any controller class yet

public interface UserRepository extends JpaRepository<User,Long> {

    public User findByName(String username);
}

UserModel

@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    private String username;
    private String email;
    private Date DOB;
    private String Address;

    public User() {
    }

    public User(Long id, String username, String email, Date DOB, String address) {
        this.id = id;
        this.username = username;
        this.email = email;
        this.DOB = DOB;
        Address = address;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Date getDOB() {
        return DOB;
    }

    public void setDOB(Date DOB) {
        this.DOB = DOB;
    }

    public String getAddress() {
        return Address;
    }

    public void setAddress(String address) {
        Address = address;
    }
}

UserService Userservice i have given

public interface UserService {

    //Creating User
    public User CreateUser(User user) throws Exception;
}

ServiceImp

public class UserServiceImp implements UserService {

    @Autowired
    private UserRepository userData;

    //Creating user
    @Override
    public User CreateUser(User user) throws Exception {
        User local=this.userData.findByName(user.getUsername());
        if(local!=null)
        {
            System.out.println("User is already present!!");
            throw new Exception("User is already there");
        }
        else {
            local=this.userData.save(user);
        }
        return local;
    }
}

Main Class This is the main class

@SpringBootApplication
public class UserInformationApplication implements CommandLineRunner {

    public static void main(String[] args) {

        SpringApplication.run(UserInformationApplication.class, args);
    }

    @Override
    public void run(String... args) throws Exception {
        System.out.println("starting Application");
    }
}

Upvotes: 2

Views: 2754

Answers (2)

Mounir bkr
Mounir bkr

Reputation: 1635

check your imports in "your repository",

  • you should import "User" class from your package.
  • sometimes is imported from catalina

import org.apache.catalina.User;

change it to :

import org..User

Upvotes: 0

Sujay U N
Sujay U N

Reputation: 5340

Changing this

Use for Spring Version 2.x :

import javax.persistence.*;

to

Use for Spring Version 3.x :

import jakarta.persistence.*;

Worked for me

Upvotes: 2

Related Questions