web-dev-qa-db-fra.com

Interface/enum listant les constantes standard de type mime

Je cherche parmi les bibliothèques standard (comme Apache commons, jax, jboss, javax) une interface ou une énumération qui répertorie les valeurs de tous les types mime standard (ou content-type).

Cette interface ne doit pas être encombrée de ressources trop profondes avec d’autres classes, ce qui rendrait difficile l’inclusion de tout le groupe en tant que code source gwt.

par exemple

interface ContentType{
  String JSON = "Application/JSON";
  blah ... blah ...
}

ou,

enum ContentType{
  JSON("Application/JSON"),
  blah ... blah ...
}
96
Blessed Geek

Nous avons une classe Guava pour cela: com.google.common.net.MediaType .

Il a été publié avec Guava 12 comme indiqué dans le code source et dans Issue 823 . Les sources sont également disponibles.

58
Fabian Barney

De https://docs.Oracle.com/javaee/7/api/javax/ws/rs/core/MediaType.html :

staticjava.lang.String APPLICATION_ATOM_XML             "application/atom+xml"
staticMediaType        APPLICATION_ATOM_XML_TYPE        "application/atom+xml"
staticjava.lang.String APPLICATION_FORM_URLENCODED      "application/x-www-form-urlencoded"
staticMediaType        APPLICATION_FORM_URLENCODED_TYPE "application/x-www-form-urlencoded"
staticjava.lang.String APPLICATION_JSON                 "application/json"
staticMediaType        APPLICATION_JSON_TYPE            "application/json"
staticjava.lang.String APPLICATION_OCTET_STREAM         "application/octet-stream"
staticMediaType        APPLICATION_OCTET_STREAM_TYPE    "application/octet-stream"
staticjava.lang.String APPLICATION_SVG_XML              "application/svg+xml"
staticMediaType        APPLICATION_SVG_XML_TYPE         "application/svg+xml"
staticjava.lang.String APPLICATION_XHTML_XML            "application/xhtml+xml"
staticMediaType        APPLICATION_XHTML_XML_TYPE       "application/xhtml+xml"
staticjava.lang.String APPLICATION_XML                  "application/xml"
staticMediaType        APPLICATION_XML_TYPE             "application/xml"
staticjava.lang.String MEDIA_TYPE_WILDCARD              The value of a type or subtype wildcard: "*"
staticjava.lang.String MULTIPART_FORM_DATA              "multipart/form-data"
staticMediaType        MULTIPART_FORM_DATA_TYPE         "multipart/form-data"
staticjava.lang.String TEXT_HTML                        "text/html"
staticMediaType        TEXT_HTML_TYPE                   "text/html"
staticjava.lang.String TEXT_PLAIN                       "text/plain"
staticMediaType        TEXT_PLAIN_TYPE                  "text/plain"
staticjava.lang.String TEXT_XML                         "text/xml"
staticMediaType        TEXT_XML_TYPE                    "text/xml"
staticjava.lang.String WILDCARD                         "*/*"
staticMediaType        WILDCARD_TYPE                    "*/*"
68
Ray Tayek

Si vous utilisez Spring Framework , il existe un MediaType class pour les types de contenu courants:

    MediaType.TEXT_HTML 
    MediaType.TEXT_PLAIN 
    MediaType.TEXT_XML 
    MediaType.APPLICATION_JSON 
    MediaType.IMAGE_JPEG 
    ...
54
Andrejs

Il existe maintenant aussi la classe org.Apache.http.entity.ContentType du paquet org.Apache.httpcomponents.httpcore, à partir de 4,2.

13
Overflow

javax.ws.rs.core.MediaType de JAX-RS

11
François Wauquier

Java 7 à la rescousse!

Vous pouvez soit transmettre le fichier ou le nom du fichier et le type MIME sera renvoyé.

String mimeType = MimetypesFileTypeMap
    .getDefaultFileTypeMap()
    .getContentType(attachment.getFileName());

http://docs.Oracle.com/javase/7/docs/api/javax/activation/MimetypesFileTypeMap.html

6
Max

Il existe également une classe MediaType dans androidannotations au cas où vous souhaiteriez utiliser Android! Voir ici .

4

Comme indiqué dans la réponse ci-dessus, vous pouvez utiliser javax.ws.rs.core.MediaType qui contient les constantes requises. 

Je souhaitais également partager un lien vraiment cool et pratique, qui donnait une référence à toutes les constantes Javax au même endroit - https://docs.Oracle.com/javaee/7/api/constant-values.html .

0
Anurag