Морфия против Spring Data Mongo

Я использую язык Java. Я должен использовать структуру ORM с MongoDb в качестве базы данных. У меня есть два варианта поддержки Morphia или Spring Data Mongo. Насколько я могу получить подробную информацию, было обнаружено, что Spring Data Mongo лучше использовать, так как: 1) Он предоставляет лучшие встроенные классы DAO из коробки. 2) Он имеет большую базу сообщества.

Существуют ли какие-либо различия между ними, основанные на производительности. И если есть, какой из них лучше, в каком состоянии. Также у меня есть требование мультиарендности. После небольшого поиска я обнаружил, что в Spring Data Mongo есть очень простая пользовательская реализация, чтобы сделать то же самое. Но в Morphia это несколько сложно. Достигается ли мультиарендность в Morphia diificult (где нам нужно написать много стандартного кода)


person Mohit Gupta    schedule 02.06.2016    source источник
comment
Это рекомендательный вопрос не по теме.   -  person Raedwald    schedule 24.12.2016


Ответы (2)


Я использовал Spring-данные, и я думаю, что чувствую, что они как-то отстают в том, что касается зрелости.

Это хорошо для всех практических целей, но функции, которые монго предоставляет во всей красе, Spring-data медленно отображают это как драйвер, особенно когда дело доходит до агрегации.

Что касается производительности, Spring-данные не отстают.

Иногда у меня странное поведение. Некоторые их аннотации молча не работают в некоторых местах и ​​для моя жизнь, я не могу понять, почему?

Но как общая реализация это очень полезно, так как обеспечивает надежную структуру, на которой может расти ваше приложение. Это также легко, если вы исходите из фона SQL, поскольку вы можете провести параллель между jdbcTemplate и mongoTemplate (хотя нужно быть осторожным)

Я серьезно рассматривал возможность использования Morphia, но отказался от этой идеи, так как spring-data предоставлял более структурированные способы. Похоже, в Morphia нам пришлось бы реализовать какую-то структуру самостоятельно, у которой есть свои плюсы и минусы, но обычно этого хочется избежать. Поскольку существует риск шаблонных кодов, для новых членов существует кривая обучения «вашей» структуре.

Что касается плюсов, я уверен, что Morphia обеспечивает большую расширяемость, позволяющую вам наслаждаться возможностью максимально использовать возможности монго. Он также легкий по сравнению с данными Spring.

person Rahul Kumar    schedule 30.12.2016
comment
stackoverflow.com/q/66305029/413032 Пожалуйста, прочитайте мой вопрос, я разработал его на основе своего опыта работы с базой Mongo. драйвер * / *Spring Data Mongo / Morphia в варианте использования. - person Davut Gürbüz; 21.02.2021

Морфия - это путь. Довольно стабильная, очень хорошая интеграция с Play и предлагает доступ ко всем функциям драйвера Mongo, если вам нужно больше крутящего момента. Эталонное разрешение, встраивание сущностей работают должным образом. Вы также получаете аннотации жизненного цикла, которые очень полезны для стандартного сохраняемого кода.

Лично мне нравятся spring-data из-за проекта hades... Вам не нужно реализовывать DAO. Вы просто пишете интерфейс, и данные Spring автоматически предоставляют его вам. Однако реализация Spring Data Mongodb кажется немного ошибочной в моем первоначальном испытании. Если у вас тяжелые даты и вы работаете над качественным продуктом, вероятно, стоит выбрать Morphia.

Чтобы получить дополнительную информацию и примеры реализации: mongodb-java-comparison/

person Abdel    schedule 28.12.2016