सप्ताह के जोड़ों में स्प्रिंग तो मैं सीखने किया गया है का उपयोग कर शोकहारा एपीआई, इस ट्यूटोरियल जब तक मैं एकीकृत करने के लिए MongoDB करने की कोशिश की'फ़ील्ड को उस प्रकार का बीन चाहिए जो पाया नहीं जा सका।' त्रुटि वसंत MongoDB
Building a RESTful Web Service
सब कुछ ठीक था निम्नलिखित किया गया। तो मैं इस ट्यूटोरियल का पालन करता हूं।
लेकिन मेरे अभ्यास आंशिक रूप से अभी भी पहले से एक का उपयोग कर रहा है। तो मेरी परियोजना निर्देशिका संरचना इस तरह है।
src/
├── main/
│ └── java/
| ├── model/
| | └── User.java
| ├── rest/
| | ├── Application.java
| | ├── IndexController.java
| | └── UsersController.java
| └── service/
| └── UserService.java
└── resources/
└── application.properties
यह मेरा मॉडल/User.java फ़ाइल
package main.java.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
@Document(collection="user")
public class User {
private int age;
private String country;
@Id
private String id;
private String name;
public User() {
super();
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
}
यह मेरा आराम/UsersController.java फ़ाइल
package main.java.rest;
import java.util.List;
import main.java.service.UserService;
import main.java.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(value = "/users")
public class UsersController {
@Autowired
UserService userService;
@RequestMapping(method = RequestMethod.GET)
public List<User> getAllUsers() {
return userService.findAll();
}
}
यह मेरा सेवा/UserService है .java फ़ाइल
package main.java.service;
import java.util.List;
import main.java.model.User;
import org.springframework.data.mongodb.repository.MongoRepository;
public interface UserService extends MongoRepository<User, String> {
public List<User> findAll();
}
मैं उन्हें संकलित कर सकता हूं (मैं संकलन के लिए ग्रेडल का उपयोग कर रहा हूं क्योंकि मैं ट्यूटोरियल का अनुसरण कर रहा हूं), लेकिन जब मैं जार फ़ाइल चलाता हूं तो यह त्रुटि फेंक रहा था।
APPLICATION FAILED TO START
Description:
Field userService in main.java.rest.UsersController required a bean of type 'main.java.service.UserService' that could not be found.
Action:
Consider defining a bean of type 'main.java.service.UserService' in your configuration.
सुनिश्चित नहीं हैं कि क्या गलत है मैं आसपास googling शुरू किया और पाया कि मैं Beans.xml
फ़ाइल को शामिल और उस में userService रजिस्टर करने के लिए की जरूरत है। मैंने ऐसा किया लेकिन यह काम नहीं कर रहा है। मैं वास्तव में इसके लिए नया हूं इसलिए मुझे वास्तव में कोई संकेत नहीं है कि क्या हो रहा है।
यहां एक ही समस्या है, हल किया गया है? – GuoJing
हल किया गया यह एक उत्तर पोस्ट करेगा :) @GuoJing –