Может ли кто-нибудь объяснить мне, что такое Pojo в Java?

Я начал изучать Spring Framework, термин pojo встречается так много раз, и я не понимаю, в чем разница между обычным объектом (Animal a1=new Animal()) и объектом pojo...


person Chanky Mallick    schedule 09.06.2015    source источник
comment
Из первого результата в Google: POJO, или Plain Old Java Object, является обычным классом объектов Java (то есть не JavaBean, EntityBean и т. д.) и не выполняет никакой другой специальной роли и не реализует никаких специальных интерфейсов. любой из платформ Java.. По сути, это просто простой/обычный объект в java.   -  person TheLostMind    schedule 09.06.2015
comment
Википедия может это сделать: en.wikipedia.org/wiki/Plain_Old_Java_Object   -  person Jens    schedule 09.06.2015
comment
Посмотрев на разные ответы на этот вопрос и проведя небольшое исследование в Google, я убедился, что существует несколько определений POJO, и что некоторые из определений кажутся противоречивыми. Боюсь, вам придется выяснять, что имеет в виду автор, исходя из контекста. Но, по крайней мере, теперь у вас есть несколько разных возможностей на выбор.   -  person ajb    schedule 09.06.2015


Ответы (4)


Поджо

Plain Old Java Object

является объектом Java, на который не распространяются какие-либо ограничения, кроме тех, которые навязаны спецификацией языка Java. То есть POJO не должен был

Расширить заранее заданные классы

Реализовать заранее заданный интерфейс

Содержит заранее заданные аннотации

В основном класс с атрибутами и геттерами и сеттерами.

person Ankur Singhal    schedule 09.06.2015

Проще говоря, нет никакой разницы между обычным объектом (Animal a1=new Animal()) и объектом pojo, за исключением того, что класс Animal может иметь другие методы и может расширять или реализовывать другой класс или интерфейс соответственно, но класс POJO имеет только геттер, сеттер метод и не расширяет и не реализует заранее определенные классы или интерфейсы.

POJO (обычный старый объект Java) - это не что иное, как простой класс java, который имеет атрибуты (переменные) и их методы установки getter для управления объектами pojo.

person Shailesh Yadav    schedule 09.06.2015

  • POJO или Plain Old Java Object — это обычный класс объектов Java (то есть не JavaBean, EntityBean и т. д.)
  • Он не выполняет никакой другой специальной роли и не реализует никаких специальных интерфейсов какой-либо из платформ Java.
  • Этот термин был придуман Мартином Фаулером, Реббеккой Парсонс и Джошем Маккензи, которые считали, что при создании аббревиатуры POJO такие объекты будут иметь «причудливое имя», тем самым убеждая людей в том, что они достойны использования.
person Sonu Gupta    schedule 09.06.2015
comment
Интересно... вы говорите, что POJO - это обычный объектный класс, то есть не JavaBean, но в статье Википедии говорится, что JavaBean - это особый тип POJO, что противоречит. На самом деле, в статье в Википедии говорится, что POJO не имеют никаких ограничений, кроме тех, которые накладывает на них язык Java, но тогда у JavaBean есть некоторые ограничения — он должен иметь конструктор без аргументов, он должен иметь геттеры и сеттеры с конкретными именами и т. д. .... Итак, теперь мне интересно, действительно ли кто-нибудь знает, что такое POJO. Но в любом случае это крутое имя. - person ajb; 09.06.2015
comment
Ты прав @ajb. Википедия тоже об этом говорит. Мы задались вопросом, почему люди так против использования обычных объектов в своих системах, и пришли к выводу, что это потому, что у простых объектов не было причудливых названий. Так что мы дали им одну, и она очень хорошо прижилась. пожалуйста, прокомментируйте, если вы можете дать еще несколько предложений. Спасибо. - person Sonu Gupta; 09.06.2015

да, это обычный класс Java, в котором вы можете создавать переменные, реализовывать методы получения и установки и использовать их.

person venkata krishna    schedule 09.06.2015