Jetons un coup d'œil à l'explication de l'auteur du site officiel :
Hutool est une boîte à outils Java, juste une boîte à outils. Elle nous aide à simplifier chaque ligne de code, à réduire chaque méthode et à rendre le langage Java "doux". Hutool était à l'origine une compilation du package "util" de mon projet. Plus tard, il a progressivement accumulé et ajouté des fonctions plus non liées à l'entreprise, et a finalement étudié en profondeur l'essence d'autres projets open source. formé un riche ensemble d'outils open source.
Concept de conception Hutool
L'idée de conception de Hutool est de minimiser les définitions répétées et de garder le package util dans le projet aussi petit que possible. De manière générale, les idées suivantes sont les suivantes :
Les méthodes ont priorité sur l'objet. L'identification automatique est meilleure que la définition de l'utilisateur
Principe d'absence d'intrusion
Pourquoi choisir Hutool ?
Il existe actuellement de nombreuses bibliothèques d'outils Java open source sur le marché, dont certaines sont excellentes comme Google Guava, le package commons d'Apache, et de nombreuses personnes aiment même utiliser certaines classes d'outils fournies dans le framework (telles que BeanUtils de Spring) . Ils encapsulent de nombreuses classes d'outils dont les programmeurs Java ont besoin quotidiennement, telles que FileUtils, StringUtils, ArrayUtils, etc. Hutool, en tant que super ensemble d'outils Java, comprend presque toutes les bibliothèques d'outils dont nous avons besoin pour le développement quotidien. ils :
Module
Introduction
hutool-aop
Encapsulation de proxy dynamique JDK, fournissant une prise en charge des aspects sous filtrage non-IOC
hutool-bloomFilter
Bloom, fournissant une disposition de l'algorithme de hachage Filtre long
hutool-cache
Implémentation simple du cache
hutool-core
core, y compris les opérations Bean, les dates, divers utilitaires, etc.
hutool-cron
module de tâches planifiées, fournit des classes Crontab expression tâches planifiées
hutool-crypto
Module de cryptage et de décryptage, fournissant une encapsulation d'algorithme symétrique, asymétrique et digest
hutool-db
Opération de données encapsulées JDBC, basée sur l'idée ActiveRecord
hutool-dfa
basée sur DFA Recherche multi-mots-clés de modèles
hutool-extra
Module d'extension pour packaging tiers (moteur de template, email, Servlet, QR code, Emoji, FTP, segmentation de mots, etc.)
hutool-http
Encapsulation du client HTTP basée sur HttpUrlConnection
hutool-log
Identifier automatiquement la façade du journal d'implémentation du journal
hutool-script
Encapsulation d'exécution de script, telle que Javascript
HUTOOL-Setting
Plus puissant Fichier de configuration et propriétés Paramètres Encapsulation
Chutool-System
System Paramètre Call Encapsulation (Informations JVM, etc.)
Installer via Gradle : reee Après avoir présenté le projet, ouvrez la documentation officielle et recherchez selon vos besoins Recherchez la classe d'outils correspondante et suivez les instructions pour CV.
Par exemple, si je souhaite utiliser des outils liés aux opérations Excel, je vais d'abord rechercher :
Trouver ExcelUtil et cliquer dessus :
Voir, la démo simple à utiliser Le document dit que c'est très clair, il suffit de copier-coller pour commencer rapidement. Si cet exemple simple ne répond pas à vos besoins, vous pouvez alors ouvrir le document Api pour voir des opérations plus détaillées.
Documentation API : https://apidoc.gitee.com/loolly/hutool/
Après l'avoir ouvert, il vous semble toujours familier, utilisez-le simplement par vous-même :
Quelle est la raison de la recommandation de fissures dans les murs ?
Permettez-moi de prendre la classe d'outils d'opération de chaîne StrUtilPar exemple :
compile 'cn.hutool:hutool-all:5.3.6'
Copier après la connexion
Résultat d'exécution :
Ouvrez le diagramme de méthode de classe de StrUtil et jetez un œil à StrUtil nous fournit un outil très complet pour. Opérations sur les chaînes. La méthode fonctionne immédiatement et est très cool.
Téléchargez ensuite le code source et cliquez dessus pour y jeter un œil. Les commentaires sont tous en chinois et très détaillés. Après avoir vu les commentaires, nous pouvons savoir à peu près ce que fait cette méthode et quelles précautions sont nécessaires. Cela peut être considéré comme très consciencieux pour les débutants. Et
? Les outils domestiques sont-ils assez doux ? Pourquoi ne vous dépêchez-vous pas et essayez ce cadeau spécial du 1er juin ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Lors de la gestion des sites Web WordPress, vous rencontrez souvent des opérations complexes telles que l'installation, la mise à jour et la conversion multi-sites. Ces opérations ne prennent pas seulement du temps, mais aussi sujettes aux erreurs, ce qui a entraîné la paralysée du site Web. La combinaison de la commande WP-CLI Core avec Composer peut simplifier considérablement ces tâches, améliorer l'efficacité et la fiabilité. Cet article présentera comment utiliser le compositeur pour résoudre ces problèmes et améliorer la commodité de la gestion WordPress.
Lors du développement d'un projet qui nécessite l'analyse des instructions SQL, j'ai rencontré un problème délicat: comment analyser efficacement les instructions SQL de MySQL et extraire les informations clés. Après avoir essayé de nombreuses méthodes, j'ai constaté que la bibliothèque GreenLion / PHP-SQL-Parser peut parfaitement résoudre mes besoins.
Dans le développement de Laravel, le traitement des relations de modèle complexes a toujours été un défi, en particulier en ce qui concerne les relations d'appartenance à plusieurs niveaux. Récemment, j'ai rencontré ce problème dans un projet traitant d'une relation de modèle à plusieurs niveaux, où les relations traditionnelles ont de la part des relations avec les besoins, ce qui fait que les requêtes de données deviennent complexes et inefficaces. Après une certaine exploration, j'ai trouvé la bibliothèque StaudenMeir / appartient à l'encontre, qui a facilement installé et résolu mes problèmes via le compositeur.
J'ai un problème délicat lors du développement d'un projet frontal: j'ai besoin d'ajouter manuellement un préfixe de navigateur aux propriétés CSS pour assurer la compatibilité. Cela prend non seulement du temps, mais aussi des erreurs. Après une certaine exploration, j'ai découvert la bibliothèque Padaliyajay / Php-Autoprefixer, qui a facilement résolu mes problèmes avec compositeur.
Au cours du processus de développement, nous devons souvent effectuer des vérifications de syntaxe sur le code PHP pour assurer l'exactitude et la maintenabilité du code. Cependant, lorsque le projet est grand, le processus de vérification de la syntaxe à thread unique peut devenir très lent. Récemment, j'ai rencontré ce problème dans mon projet. Après avoir essayé plusieurs méthodes, j'ai finalement trouvé la bibliothèque Overrue / Phplint, qui améliore considérablement la vitesse de l'inspection du code par le traitement parallèle.
En train de développer un site Web, l'amélioration du chargement des pages a toujours été l'une de mes principales priorités. Une fois, j'ai essayé d'utiliser la bibliothèque Miniify pour compresser et fusionner les fichiers CSS et JavaScript afin d'améliorer les performances du site Web. Cependant, j'ai rencontré de nombreux problèmes et défis pendant l'utilisation, ce qui m'a finalement fait réaliser que Miniify pourrait ne plus être le meilleur choix. Ci-dessous, je partagerai mon expérience et comment installer et utiliser MINIFY via Composer.
J'ai rencontré un problème délicat lors du développement d'une petite application: la nécessité d'intégrer rapidement une bibliothèque d'opération de base de données légère. Après avoir essayé plusieurs bibliothèques, j'ai constaté qu'ils avaient trop de fonctionnalités ou ne sont pas très compatibles. Finalement, j'ai trouvé Minii / DB, une version simplifiée basée sur YII2 qui a parfaitement résolu mon problème.
Lorsque vous développez des sites Web à l'aide de CRAFTCMS, vous rencontrez souvent des problèmes de mise en cache de fichiers de ressources, en particulier lorsque vous mettez fréquemment à mettre à jour les fichiers CSS et JavaScript, les anciennes versions des fichiers peuvent toujours être mises en cache par le navigateur, ce qui fait que les utilisateurs ne voient pas les derniers changements de temps. Ce problème affecte non seulement l'expérience utilisateur, mais augmente également la difficulté du développement et du débogage. Récemment, j'ai rencontré des problèmes similaires dans mon projet, et après une exploration, j'ai trouvé le plugin wiejeben / artist-laravel-mix, qui a parfaitement résolu mon problème de mise en cache.