No qualified bean of type 'com.jpa.test.UserRepository' found exception occurred in the main thread
P粉170438285
2023-08-29 14:35:44
<p>I am a beginner in Spring-boot and I faced this issue when I tried to run a Spring-boot application. </p>
<pre class="brush:php;toolbar:false;">Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type com. JPA. test. User Repository available
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:340)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:331)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1148)
at com. JPA. test. Test Application. main(TestApplication.java:17)</pre>
<p>I want the data to be saved correctly in the database.</p>
<p>Directory and folder arrangement: Directory and folder arrangement</p>
<p>Error page: Error page 1 Error page 2</p>
<p>Attribute interface: Attribute application page</p>
<p>Main class code:</p>
<pre class="brush:php;toolbar:false;">package com.jpa.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.context.ApplicationContext;
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
public class TestApplication {
public static void main(String[] args) {
ApplicationContext context = SpringApplication.run(TestApplication.class, args);
UserRepository ur = context.getBean(UserRepository.class);
User user = new User();
user.setName("XYZ");
user.setStatus("Active");
user.setCity("OOPS");
User save = ur.save(user);
System.out.println(save);
}
}</pre>
<p>Entity class (user):</p>
<pre class="brush:php;toolbar:false;">package com.jpa.test;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
private String name;
private String city;
private String status;
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(int id, String name, String city, String status) {
super();
this.id = id;
this.name = name;
this.city = city;
this.status = status;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
@Override
public String toString() {
return "User [id=" id ", name=" name ", city=" city ", status=" status "]";
}
}</pre>
<p>Dao(用户存储库)</p>
<pre class="brush:php;toolbar:false;">package com.jpa.test;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface UserRepository extends CrudRepository<User, Integer> {
}</pre></p>
Try adding these comments to your program: