Вконтакте Facebook Twitter Лента RSS

Что такое мета инфа. Метаданные – это что? Различия Между HTML и XHTML

Что такое метаинформация?

Метаинформация - это информация о свойствах документа (страницы сайта), предназначенная для поисковых систем и используемая ими при индексации данной страницы. Использование метаинформации позволяет поисковым системам правильно и более качественно проиндексировать ваш сайт.

Заголовок (title) - выводится в строке заголовка окна открываемой страницы взамен автоматически формируемого сайтом. Данное поле должно содержать не более 300 символов;
Ключевые слова (keywords) - слова, по которым пользователи будут находить эту страницу через поисковые системы. Ключевые слова следует писать через запятую, маленькими буквами. Длина текста не должна превышать 1000 символов;
Описание (description) - как правило, то, что указывается в этом поле, будет отображаться поисковиками при выводе результатов поиска. Данное поле не должно содержать более 300 символов.

META-теги - инструмент хорошего сайта?

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

Поисковые системы на сегодняшний день активно используют META-теги, что позволит поисковому роботу правильно и качественно проиндексировать сайт.

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

META-теги - это конструкции, которые размещаются в заголовке страницы, и выглядят они примерно следующим образом:


Поле name (имя) определяет, за что именно данный тег отвечает. Длина каждого поля content (содержимое) по стандарту ограничена килобайтом (1024 знака, включая пробелы и знаки препинания), однако, обычно у каждой поисковой системы свои взгляды на это. Следует помнить, что META-теги включены в код страницы, так что увеличение их длины ведет к увеличению объема страницы, а следовательно, увеличивает время загрузки.
Поле http-equiv означает, что данный META-тег предназначен не для поисковой системы, а для управления броузером. Как выглядят META-теги для текущей страницы, Вы можете посмотреть щелкнув правой клавишей по листу и выбрав «Просмотр в виде HTML»

Рассмотрим основные META-теги и опишем, за что каждый из них отвечает.

Зачастую именно то, что Вы здесь укажете, будет отображаться поисковиками в выдаче результатов поисковых запросов (Яndex точно это умеет делать). Делайте описание ярким и зазывающим, однако не стоит писать его большими буквами - умные поисковые машины считают это спамом и "выпендрёжем" и такие страницы могут опускать. Тем не менее, вполне можно обойтись и без него - правильного хорошего заголовка страницы вполне достаточно.

"Rambler: О правильной индексации документов"

На первый взгляд - самый эффективный и важный тег из набора МЕТА-тегов. Именно по тем словам, которые Вы пропишете здесь, и должны находить Вашу страницу через поисковые системы. Однако на деле это далеко не так. Подавляющее большинство российских пользователей, на которых и ориентируются российские же разработчики сайтов, используют всего 4 поисковые машины - Яndex, Rambler, Google и Aport . Все эти машины ориентированы на содержимое страницы и многие другие факторы, а вовсе не на ключевые слова, что Вы пропишете в поле keywords.
Роботы Рамблера при сканировании игнорируют поля и все другие META-теги, кроме . Это связано с тем, что наша система старается индексировать документ таким, какой он есть (то есть таким, каким его видит пользователь). Не секрет, что зачастую создатели интернет-страниц злоупотребляют этими полями, пытаясь заставить поисковые машины находить документ по запросам, не имеющим к нему прямого отношения.

Как видно из вышеприведенной цитаты, для Рамблера то, что было предположено выше, однозначно верно - неважно, что Вы напишете в ключевых словах, робот этого даже не заметит.
Означает ли это, что данное поле можно забросить? Это каждый выбирает сам, мы по-прежнему по старинке его используем, добавляя туда наиболее важные слова из текста страницы. Однако реального результата на данный момент не заметно - и без ключевых слов все отлично работает. Наверняка, какие-то старые зарубежные поисковые машины и продолжают использовать данное поле именно так, как оно определено, однако вряд ли вы получите с них большой приток посетителей.


Эти теги, исходя из их описания, должны давать команду поисковой системе посещать Ваш сайт так часто, как это прописано в поле content. На деле - каждый поисковый робот заходит на сайт так часто, как сам посчитает нужным и возможным. Теоретически, чем чаще Вы будете обновлять Ваш сайт - тем чаще начнут поисковые роботы его посещать.


Это ещё один тег, отвечающий за управление поисковыми роботами. Вот какие могут быть значения у поля содержимого: index - индексировать эту страницу, follow - индексировать страницы, на которые есть ссылки с этой страницы, all - эквивалентно двум предыдущим через запятую, noindex - не индексировать страницу, но идти по ссылкам, nofollow - индексировать, но не идти по ссылкам, none - эквивалентно двум предыдущим через запятую. Нужно ли использовать этот тег? Можно создать файл robots.txt, в котором прописать все эти вещи, и не перегружать ненужными данными код страницы. Единственный сложный случай, когда этот тег оказывается действительно полезным и в котором его следует использовать - при установке на страницы сайта открытого счетчика статистики с возможностью ее просмотра любым пользователем, в том числе и поисковым роботом.

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

Поисковый робот, просканировав страницу статистики, на которой стоит подобная ссылка - перейдет по ней, просканирует Вашу ошибочную страницу и занесет ее в свою базу. Потом уже какой-то другой пользователь в результатах поиска по своему запросу может получить эту страницу. Вряд ли у него возникнут приятные эмоции при виде ссылки на страницу, озаглавленную «Компания такая-то / Ошибочная страница». Он это запомнит и не выберет эту компанию, когда ему понадобятся услуги по профилю, в котором она работает.

Чтобы этого не произошло - на ошибочную страницу надо ставить запрет на ее индексацию поисковыми роботами в заголовке при помощи рассматриваемого META-тега. Запретить индексацию данной страницы с помощью файла robots.txt нельзя, адрес, по которому ее найдет поисковый робот, может быть любой - никто не знает, что может набрать пользователь в адресной строке или по какой ссылке попасть на ошибочную страницу сайта. Другие случаи, когда этот META-тег действительно может оказаться полезным, на практике пока не встречались.


Совершенно необязательные тэги, в которые Вы можете вписать своё имя, название Вашей студии, Ваш e-mail, описание авторских прав на документ, любимый сорт пива или имя Вашей собаки. Формат записи произвольный.


Эта конструкция через 5 секунд после прочтения броузером страницы, на которую Вы попали, перегрузит окно броузера и выдаст Вам страницу index.html из корневого каталога сервера. Чаще всего данный тег используется на страницах, которые вставляются вместо титульных при переезде сайта на другой адрес - таким образом осуществляется автоматическая пересылка. Один из немногих действительно полезных META-тегов, однако поисковые системы относятся к нему очень настроженно.


Этот тег контролирует занесение страниц в кэш-память компьютера. Страницы с этим тегом не будут кэшироваться броузерами. Однако современные версии броузеров сами умеют или должны уметь распознавать - обновилась страница или нет, и если надо - обновлять ее без всяких дополнительных ухищрений.

Рассматриваемые:
description
keywords
revisit
revisit-after
robots
author
copyright
refresh
pragma
content-type


Эта конструкция позволяет определять, в какой кодировке выдавать пользователю запрошенную страницу. В данном случае в стандартной кодировке Windows. По хорошему - определять правильную кодировку, в которой выдавать пользователю страницу, должен либо сервер, либо броузер. Однако первые иногда бывают не настроены на это администраторами (как площадки для виртуальных серверов хостинг-провайдера Zenon NSP), вторые также бывают не настроены ленивыми или плохо в этом разбирающимися пользователями.
Когда оба этих элемента, сервер и броузер, не настроены должным образом - пользователь получит в результате захода на страницу не текст на русском языке, а набор непонятных символьных «крокозябр». Совсем ленивый посетитель сразу же закроет эту страницу, не залезая в настройки кодировки в броузере. А значит - ушел посетитель и возможный клиент. Потому данный тег часто оказывается полезным и его иногда приходится использовать.

Небольшие итоги. Как видим - многие, исключительно полезные на первый взгляд META-теги, оказываются условно ненужными. Многие же, как казалось, не слишком полезные, на деле вполне действенны. Главное их использовать вовремя и по назначению.

прошивка services (11)

Если вы используете JPA1, вам может потребоваться удалить файл persistence.xml в котором указывается имя единицы сохранения, которое вы, возможно, захотите использовать. Модуль persistence обеспечивает удобный способ указания набора файлов метаданных, классов и банок, содержащих все классы, которые должны сохраняться в группе.

Import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; // ... EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnitName);

В Java вы часто видите папку META-INF, содержащую некоторые метафайлы. Какова цель этой папки и что я могу там поместить?

Вы также можете разместить там статические ресурсы.

В примере:

META-INF/resources/button.jpg

и получить их в web3.0-container через

Http://localhost/myapp/button.jpg

Значение /META-INF/MANIFEST.MF имеет особое значение:

  1. Если вы запускаете банку с помощью java -jar myjar.jar org.myserver.MyMainClass вы можете переместить определение основного класса в банку, чтобы вы могли сжать вызов в java -jar myjar.jar .
  2. Вы можете определить Metainformations для пакетов, если вы используете java.lang.Package.getPackage("org.myserver").getImplementationTitle() .
  3. Вы можете ссылаться на цифровые сертификаты, которые вы хотите использовать в режиме Applet / Webstart.

Я недавно думал об этой проблеме. По-видимому, нет никаких ограничений на использование META-INF. Конечно, есть определенные стриктуры о необходимости помещать там манифест, но, похоже, нет никаких запретов по размещению там других вещей.

Почему это так?

Случай cxf может быть законным. Вот еще одно место, где этот нестандартный рекомендуется обойти неприятную ошибку в JBoss-ws, которая предотвращает проверку на стороне сервера против схемы wsdl.

Но на самом деле не существует никаких стандартов, каких-либо других. Обычно эти вещи очень строго определены, но по какой-то причине, похоже, здесь нет стандартов. Странный. Похоже, что META-INF стала популярным местом для любой необходимой конфигурации, которая не может быть легко обработана каким-либо другим способом.

Вообще говоря, вы не должны вводить ничего в META-INF самостоятельно. Вместо этого вы должны полагаться на все, что вы используете для упаковки вашего JAR. Это одна из областей, где, по моему мнению, Ant действительно превосходит: указание атрибутов манифеста JAR-файла. Очень легко сказать что-то вроде:

По крайней мере, я думаю, что это легко... :-)

Дело в том, что META-INF следует рассматривать как внутренний метакаталог Java. Не связывайтесь с этим! Любые файлы, которые вы хотите включить в JAR, должны быть помещены в какой-либо другой подкаталог или в корень самого JAR.

Папка META-INF является домом для файла MANIFEST.MF . Этот файл содержит метаданные о содержимом JAR. Например, есть запись под названием Main-Class, которая указывает имя класса Java со статическим main () для исполняемых JAR-файлов.

META-INF в Maven

В Maven папка META-INF понятна из-за стандартной компоновки каталогов, которая по стандарту имен согласует ваши ресурсы проекта в JAR: любые каталоги или файлы, помещенные в каталог $ {basedir} / src / main / resources , упаковываются в ваш JAR с помощью точно такая же структура, начиная с базы JAR. Папка $ {basedir} / src / main / resources / META-INF обычно содержит файлы .properties, в то время как в банке содержатся созданные MANIFEST.MF , pom.properties , pom.xml , среди других файлов. Также используются такие среды, как Spring use classpath:/META-INF/resources/ для обслуживания веб-ресурсов. Дополнительные сведения см. В разделе

Добавляя к информации здесь, META-INF является специальной папкой, которую ClassLoader рассматривает иначе, чем другие папки в банке. Элементы, вложенные в папку META-INF, не смешиваются с элементами вне его.

Подумайте об этом, как о другом корне. Из метода Enumerator ClassLoader#getSystemResources(String path) метод Enumerator ClassLoader#getSystemResources(String path) и других перспектив:

Когда заданный путь начинается с «META-INF», метод ищет ресурсы, вложенные внутри папок META-INF всех банок в пути класса.

Когда данный путь не начинается с «META-INF», метод ищет ресурсы во всех других папках (вне META-INF) всех банок и каталогов в пути к классу.

Если вы знаете о другом имени папки, которое getSystemResources метод getSystemResources , прокомментируйте его.

Все ответы верны. Meta-inf имеет множество целей. Кроме того, здесь приведен пример использования контейнера tomcat.

Перейдите в Tomcat Doc и установите атрибут « Стандартная реализация> copyXML ».

Описание приведено ниже.

Установите значение true, если вы хотите, чтобы XML-дескриптор контекста, встроенный внутри приложения (расположенный в /META-INF/context.xml), был скопирован в xmlBase владельца хоста при развертывании приложения. При последующих запусках дескриптор XML скопированного контекста будет использоваться в предпочтении любого XML-дескриптора контекста, встроенного в приложение, даже если дескриптор, встроенный в приложение, является более поздним. Значение флага по умолчанию равно false. Обратите внимание, если атрибут deployXML владельца Host является ложным или если атрибут copyXML владельца Host является истинным, этот атрибут не будет иметь никакого эффекта.

Из официальной спецификации файла JAR (ссылка идет на версию Java 7, но текст не изменился с по крайней мере v1.3):

Каталог META-INF

Следующие файлы / каталоги в каталоге META-INF распознаются и интерпретируются платформой Java 2 для настройки приложений, расширений, загрузчиков классов и служб:

  • MANIFEST.MF

Файл манифеста, который используется для определения данных, связанных с расширением и пакетом.

  • INDEX.LIST

Этот файл генерируется новой опцией -i для инструмента jar, которая содержит информацию о местоположении для пакетов, определенных в приложении или расширении. Он является частью реализации JarIndex и используется загрузчиками классов для ускорения процесса загрузки классов.

Файл подписи для файла JAR. «x» означает имя базового файла.

  • x.DSA

Файл блока подписи, связанный с файлом подписи с тем же именем базового файла. Этот файл хранит цифровую подпись соответствующего файла подписи.

  • services/

В этом каталоге хранятся все файлы конфигурации поставщика услуг.

У вас есть файл MANIFEST.MF внутри вашей папки META-INF. Вы можете определить дополнительные или внешние зависимости, к которым у вас должен быть доступ.

Пример:

Подумайте, что вы развернули приложение и ваш контейнер (во время выполнения) обнаружили, что вашему приложению требуется более новая версия библиотеки, которая не находится внутри папки lib, в этом случае, если вы определили дополнительную новую версию в MANIFEST.MF тогда ваш приложение будет ссылаться на зависимость оттуда (и не будет сбой).

Source: Head First Jsp & Servlet

Вот список декомпиляторов по состоянию на февраль 2015 года.

Существует множество баз данных. Чтобы понять, что они собой представляют, необходимо рассматривать их содержимое. Но есть одна маленькая полезная деталь - метаданные. Это то, что обобщает всю имеющуюся информацию. Для чего они были разработаны и зачем используются?

Что такое метаданные?

Следует отметить, что единой формулировки данного понятия не существует. Итак, метаданные - это общее название информации о

В основном используется четыре обозначения данного термина:

  1. Могут подразумевать субканальную информацию про используемые данные.
  2. Так называют характеристики, описывающие сущность. Они необходимы, чтобы искать, идентифицировать, оценивать и управлять значениями в БД. Ещё таким образом называют важный набор определённого количества структурированных описаний, предоставленных в допустимой форме и доступных в явном виде, благодаря чему можно найти необходимый объект. Подобная формулировка применяется в случаях, когда необходимо искать сущности, ресурсы и объекты.
  3. Данные из общей формальной системы, которые описывают свойства конкретного хранилища информации.
  4. Информация про характеристики веб-страницы (когда была создана, кто её автор).

Различие между данными и метаданными

Как их отличают? Дело в том, что провести однозначное разделение обычно невозможно. Почему? Давайте рассмотрим более детально на примере:

  1. Что-то может выступать в обеих ролях. Например, заголовок статьи может рассматриваться и как элемент метаданных, и в качестве информации, что передаётся читателю.
  2. Возможность меняться местами. Допустим, кто-то написал стихотворное произведение. Оно представляет собой данные. Композитор, опираясь на слова, создал музыкальную композицию и прикрепил данный текст. В таком случае он превращается в метаданные. Всё зависит от использования. Вообще, подобные случаи возможны из-за восприятия определённой точки зрения на основании своих суждений (тут играет роль пространство имён и система отсчёта).
  3. Возможность создания мета-…-метаданных ориентируясь на аксиому выбора. Это вытекает из того, что почти на любую информацию может быть создана своя система характеристик.

Метаданные файлов в компьютерах

Своё применение они нашли и в автоматизированных рабочих потоках. Если какая-то программа умеет работать с содержимым и то они могут быть преобразованы в другой тип информации, что позволяет освобождать пользователей от множества неудобных и рутинных действий.

Примером могут служить разработки, которые позволяют просматривать графические изображения с разными расширениями. Также можно вспомнить и о различных записях звука, фильмов и многих других вещах.

Метаданные в мировой сети

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

Классификация метаданных

Как их различают? В основном классификация проводится по одному из двух принципов:

  1. Содержание. Метаданные используются, чтобы описывать файл, ресурс или его содержимое (к примеру, заголовок - «как готовить картошку»).
  2. По принадлежности. Метаданные могу использовать, чтобы информировать о чем-то целом или его составляющей. Так, название фильма относится ко всему нему, а описание эпизода информирует только об определенной части.

Если метаданные - это совокупность зависимостей от возможностей логического вывода, то в таком случае они делятся на 3 вида:

  1. «Сырые» данные. Основа информационного обеспечения.
  2. Метаданные, описывающие содержимое. Они, в свою очередь, тоже используются.
  3. Метаданные, с помощью которых можно сделать логический вывод.

Такие типы метаданных существуют.

Три наиболее востребованных класса

Предлагаем ознакомиться с тремя классами, которые сейчас широко применяются:

  1. Внутренние метаданные. Это информация, которая описывает составные части вещей, их структуру и что она собой представляет. В качестве примера можно привести размер и формат файла.
  2. Административные метаданные. Требуются для процессов обработки информации, а также для назначения вещи. Например, кто автор, редактор, когда был создан файл.
  3. Описательные метаданные. Используются, чтобы охарактеризовать природу файла и его признаки (к какой категории относится, с чем ещё связан).

Формат метаданных

Так называют стандарт, который используется, чтобы проводить формальное описание какой-то категории ресурсов (сущностей, объектов и тому подобного).

Обычно в нём есть определённый набор, который характеризует рассматриваемый объект. Для этого используются атрибуты, свойства, элементы метаданных.
Классифицируются по охвату и подробностям описываемых ресурсов.

Возможные проблемы

Когда может возникать ошибка метаданных? Отсутствие необходимой информации или ограничение доступа - вот основные причины возникающих проблем.

Также ошибка загрузки метаданных появляется в тех случаях, когда файл есть, но он повреждён. Основных причин такого состояния насчитывают три: износ техники, вредоносное влияние отдельных программ (как правило, компьютерных вирусов) и неправильное завершение работы с документом, по причине чего данные сохранились некорректно.

Соответственно, значение метаданных в классификации и систематизировании сетевой информации трудно переоценить. Поэтому желающим оптимизировать собственный сайт просто необходимы знания о них.

HTML Тег - Метаданные


Попробуйте сами »

Определение и Использование

Метаданные - это информация о самих данных.

Тег обеспечивает метаданные об HTML документе. Метаданные не будут отображаться га странице, но будут обрабатываться машинами.

Мета элементы как правило используются для добавления описания страницы, ключевых слов, автора документа, даты последней модификации и других метаданных.

Тег всегда должен вкладываться в элемент head.

Метаданные могут использоваться браузерами (как отображать контент или перезагружать страницу), поисковыми системами (ключевые слова) или другими веб службами.

Поддержка Браузерами

The поддерживается всеми основными браузерами.

Различия Между HTML и XHTML

В HTML тег не имеет конечного тега.

В XHTML тег должен быть соответствующим образом закрыт.

Замечание: Метаданные всегда идут парами имя/значение.

Обязательные Атрибуты

DTD указывает, в каком типе документа HTML 4.01/XHTML 1.0 DTD атрибут разрешен. S=Strict, T=Transitional и F=Frameset.

Атрибут Значение Описание DTD
content текст Указывает содержимое метаинформации STF

Необязательные Атрибуты

Стандартные Атрибуты

Тег поддерживает следующие стандартные атрибуты:

Дополнительная информация о Стандартных Атрибутах .

Атрибуты Событий

The tag does not support any event attributes.

12 ответов

Вообще говоря, вы не должны вкладывать ничего в META-INF самостоятельно. Вместо этого вы должны полагаться на все, что вы используете для упаковки вашего JAR. Это одна из областей, где, по моему мнению, Ant действительно превосходит: указание атрибутов манифеста JAR файла. Очень легко сказать что-то вроде:

По крайней мере, я думаю, что легко...: -)

Дело в том, что META-INF следует рассматривать как внутренний метакаталог Java. Не связывайтесь с этим! Любые файлы, которые вы хотите включить в JAR, должны быть помещены в какой-либо другой подкаталог или в корень самого JAR.

Я заметил, что некоторые библиотеки Java начали использовать META-INF в качестве каталога, в который будут включены файлы конфигурации, которые должны быть упакованы и включены в CLASSPATH вместе с JAR. Например, Spring позволяет импортировать файлы XML, которые находятся в пути к классам, используя:

В этом примере я цитирую прямо из Apache CXF User Guide . В проекте, над которым я работал, в котором нам нужно было разрешить несколько уровней конфигурации через Spring, мы выполнили это соглашение и поместили наши файлы конфигурации в META-INF.

Когда я размышляю над этим решением, я не знаю, что именно было бы неправильно, просто включив файлы конфигурации в конкретный пакет Java, а не в META-INF. Но это, по-видимому, новый стандарт де-факто; либо это, либо новый анти-шаблон: -)

Вы также можете разместить там статические ресурсы.

В примере:

META-INF/resources/button.jpg

и получить их в web3.0-контейнере через

Http://localhost/myapp/button.jpg

Значение/META-INF/MANIFEST.MF имеет особое значение:

Чтобы добавить к информации здесь, в случае файла WAR файл META-INF/MANIFEST.MF предоставляет разработчику возможность инициировать проверку времени развертывания контейнером, который гарантирует, что контейнер может найти все от вашего приложения зависит ваше приложение. Это гарантирует, что в случае, если вы пропустили JAR, вам не нужно ждать, пока ваше приложение не ударит во время выполнения, чтобы понять, что он отсутствует.

В Maven папка META-INF понятна из-за Стандартный макет каталога , который по соглашению об условном пакете ваши ресурсы проекта в JAR: любые каталоги или файлы, помещенные в каталог ${basedir}/src/main/resources, упаковываются в ваш JAR с той же структурой, начиная с базы JAR. Папка ${basedir}/src/main/resources/META-INF обычно содержит файлы.properties, в то время как в банке содержится сгенерированная MANIFEST.MF , pom.properties pom.xml , среди других файлов. Кроме того, фреймворки, такие как Spring , используют classpath:/META-INF/resources/ для обслуживания веб-ресурсов. Для получения дополнительной информации см.

Если вы используете JPA1, вам может потребоваться отбросить файл persistence.xml , в котором указывается имя единицы сохранения, который вы, возможно, захотите использовать. Модуль persistence обеспечивает удобный способ указания набора файлов метаданных, классов и банок, содержащих все классы, которые должны сохраняться в группе.

Import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; // ... EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnitName);

Я недавно думал об этой проблеме. По-видимому, нет никаких ограничений на использование META-INF. Конечно, есть определенные стриктуры о необходимости помещать там манифест, но, похоже, нет никаких запретов по размещению там других вещей.

Почему это так?

Случай cxf может быть законным. Здесь другое место, где этот нестандартный рекомендуется обойти неприятную ошибку в JBoss-ws, которая предотвращает проверку на стороне сервера против схемы wsdl.

Но действительно нет никаких стандартов, ничто не должно быть. Обычно эти вещи очень строго определены, но по какой-то причине, похоже, здесь нет стандартов. Странно. Похоже, что META-INF стал популярным местом для любой необходимой конфигурации, которая не может быть легко обработана каким-либо другим способом.

Чтобы добавить сюда информацию, META-INF - это специальная папка, в которой ClassLoader рассматривает ее иначе, чем другие папки в банке. Элементы, вложенные внутри META-INF, не смешиваются с элементами вне него. Это как другой корень. По крайней мере, по методу Enumerator ClassLoader#getSystemResources(String path) и др.: Когда заданный путь начинается с "META-INF", метод ищет ресурсы, вложенные внутри папок META-INF всех банок в пути класса. И когда данный путь не начинается с "META-INF", метод ищет ресурсы во всех других папках (вне META-INF) всех банок и каталогов в пути к классу.

© 2024 Windows. Инструкции. Программы. Железо. Ошибки