Недавно я наткнулся на класс с именем javax.activation.DataHandler. Но пока я читал javadoc JDK6, я не смог понять цель и обоснование фреймворка. Если вы использовали фреймворк в реальном проекте, поделитесь своим опытом и объясните, что разработчик может с его помощью "зарабатывать".





Я использовал его в веб-сервисе JAX-WS, используя CXF для потоковой передачи вложений с помощью MTOM:
@XmlMimeType("application/octet-stream")
private DataHandler data;
Клиент, сгенерированный JAX-WS, также будет использовать этот класс. Из этого класса вы можете получить доступ к базовым потокам ввода / вывода по мере необходимости. При вызове метода веб-службы, который включает DataHandler, клиенты могут писать в OutputStream, а на стороне сервера вы можете читать из InputStream. Таким образом, данные никогда не буферизуются в памяти на клиенте или сервере.
Я уверен, что у этого класса есть и другие варианты использования, но это только одно, с которым я столкнулся.
Так стоит ли учиться? Ну это было для меня.
JavaMail также использует его (я думаю, также для вложений).