В основном я создаю веб-приложение для школы и использую Telegram Bot API для отправки сообщений моим контактам.На левой стороне моей веб-страницы у меня есть контакты div и список всех контактов из таблицы в MySQL.Все работает отлично, за исключением того, что они не упорядочены по имени.
Контроллер
@Controller
public class MainController {
@Autowired
private ContactsService contactsService;
@GetMapping("/")
public String allContacts(HttpServletRequest request) {
request.setAttribute("contacts", contactsService.findAll());
request.setAttribute("mode", "MODE_CONTACTS");
return "index";
}
@RequestMapping("/input")
public String input() {
return("input");
}
}
Репозиторий
import org.springframework.data.repository.CrudRepository;
import totelegram.model.Contacts;
public interface ContactsRepository extends CrudRepository<Contacts, Integer>{
}
Сервис
@Service
@Transactional
public class ContactsService {
private final ContactsRepository contactsRepository;
public ContactsService(ContactsRepository contactsRepository) {
super();
this.contactsRepository = contactsRepository;
}
//@Query("select * from contacts order by name asc")
public List<Contacts> findAll(){
List<Contacts> contacts = new ArrayList<>();
for(Contacts contact : contactsRepository.findAll()) {
contacts.add(contact);
}
return contacts;
}
}
Модель
@Entity(name = "contacts")
public class Contacts implements Serializable{
И в принципе это простоимеет идентификатор, имя, номер телефона, getters / setters, toString.В Сервисе вы можете увидеть один комментарий, который я не могу понять.Где должен быть @Query, когда вы отображаете таблицу на веб-сайте, вы заказываете их.
Ответ от Абинаша Гоша решил проблему.Но и другие были полезны.Спасибо всем за помощь.