Привет!
Учу спринг, и пытаюсь сделать простое crud rest api приложение.
Возникла ошибка, которую я не знаю как пофиксить,
естественно сам я уже пробовал починить, но не получилось.
Подскажите что нужно добавить или переписать, что бы
запрос отработал корректно.
В БД хранится один полльзователь,
и я решил проверить работает ли метод конктроллера(showAllUsers),
но где то я видимо что то не доделал..
код:
user-api-code
ошибка:
error-code
not funny
20 уровень
Помогите пофиксить ошибку
Комментарии (10)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис Java Developer
14 мая, 14:52
Ошибки гуглить пробовал? Типа
SessionHolder are in unnamed module of loader 'app'
По коду тоже есть вопросы кстати, зачем тебе MySQL и H2?
Зачем в энтити куча аннотаций вместо одной Data?
Вот это ты уверен что правильно?
ни разу не делал, но как минимум тут не хватает select с точки зрения логики, возможно я не прав.
В целом любопытный заход, но почему не через SpringData? сильно ж удобнее будет. Хотя в обучающем смысле наверное даже полезно.
Ты совершенно не используешь application.properties + у тебя куча хардкода в конфигурации. Вычитай проперти в отдельный класс да юзай где нужно, и менять всё сильно проще.
К тому же, в спринге есть куча готовых пропертей для таких штук как линка на БД, креды, диалект, драйвер.
Хранить в гите плейн текстом креды тоже плохая идея, я понимаю, что root:root это офигеть какая сесурити, но всё же.
0
not funny unemployed
14 мая, 16:14
пробовал, рассматривал этот вариант, пытался переписать,
но все равно не заработало, и я вернул обратно...
думал подключится к mySQL чере воркбенч, почему то решил что если не получится, то через h2 подключусь, в итоге получилось через воркбенч, так что h2 удалю просто позже..
думаю правильно, так как это hql, а не sql
я еще не учил SpringData =)
я не шарю как, почитаю попробую, но уже в целях исправления, т.к первостипенное это тупа запустить что бы работало)) уж очень хочется)
не понял, что такое плейн и сесурити =)
0
Денис Java Developer
14 мая, 16:42
думал подключится к mySQL чере воркбенч, почему то решил что если не получится, то через h2 подключусь, в итоге получилось через воркбенч, так что h2 удалю просто позже..
Ты же понимаешь, что mysql и h2 это просто разные базы данных? h2 это in memory, а мускуль самая обыкновенная.
думаю правильно, так как это hql, а не sql
значит хай будет :)
не понял, что такое плейн и сесурити =)
plain text, security
В целом по приложеньке, она у тебя стартует но когда ты пытаешься квернуть эндпоинт скорее всего падает, я прав? Если так, то значит у тебя проблема с персистанс слоем, хреново настроено, что именно - не знаю, но хибернейт отказывается работать. Нужно курить документацию и разбираться. Попробуй максимально упростить приложение, без кучи функционала, начни с хелло ворлда. Чтобы например оно стартовало, и писало в консоль всё содержимое таблицы. Как только осилишь это весь твой функционал скорее всего заведётся.
Пример через Spring data я тебе в личку кидал так-то :) Но ты конечно же статью не почитал.
0
not funny unemployed
14 мая, 16:50
REST API
- виновен, займусь ей.
да
куда уж проще)) это вроде как и есть мой привет миру...
ты про эту? - 0
not funny unemployed
15 мая, 09:02
сделал!)
все работает, думаю теперь разобраться с аннотациями,
почитать подробнее про каждую которая используется в проекте..
и прочитаю следующую статью)
0
Денис Java Developer
15 мая, 09:50
Вот и славненько, если что будет не понятно - спрашивай.
+1
AlekseiExpert
19 мая, 19:25
h2 можно юзать для тестов, которых у тебя пока что нет :) хотя можно было бы добавить, если. это серьезный пет-проект
+1
not funny unemployed
19 мая, 19:44
Алексей, думаю в любом случае тесты можно добавить))
это пет проект с книги Spring in Action, я его доделаю немного позже,
как подтяну теоретические знания по спринг...
crud rest api, где я отправляю пост запрос в формате json и получаю,
уже такой сделал на днях, разобрался с БД(mysql)...
так что процесс идет =)
спасибо за совет, с тестами я постараюсь разобраться чуть позже,
уже немного с ними сталкивался, ну так чисто в ознакомительных целях)
если есть еще какие нибудь подсказки или советы в плане порядка изучения спринг,
то я бы послушал) например стоит ли аннотации(обозначения) заучивать на память, или лучше на примерах рассматривать,
просто думал сегодня - "а что если выписать топ 100 самых часто используемых аннотаций и заучить то какую функцию они выполняют", как считаешь стоит так делать или лучше по какому нибудь другому пути пойти...
0
AlekseiExpert
20 мая, 08:55
Иди по материалу Spring in Action по порядку и все будет ок, тестирование там тоже частично разбирается, насколько я помню.
Про 100 самых используемых аннотаций - ну такое, если честно) Во-первых, в Спринге их точно меньше 100 (имею ввиду тех, которые используются постоянно), а во-вторых заучивать их без понимания, как это работает внутри проекта, не имеет смысла
0
not funny unemployed
20 мая, 18:13
Алексей, понял, спасибо)) тогда буду на практике стараться их разбирать, и по книге идти)
0