由来 使用Spring Boot时,通过依赖注入获取bean是非常方便的,但是在工具化的应用场景下,想要动态获取bean就变得非常困难,于是Hutool封装了Spring中Bean获取的工具类——SpringUtil。 使用 注册SpringUtil 使用ComponentScan注册类 // 扫描cn.hutool.extra.spring包下所有类并注册之 @ComponentScan(bas
由来 考虑到MySQL等数据库中普通的UTF8编码并不支持Emoji(只有utf8mb4支持),因此对于数据中的Emoji字符进行处理(转换、清除)变成一项必要工作。因此Hutool基于emoji-java库提供了Emoji工具实现。 此工具在Hutoo-4.2.1之后版本可用。 使用 加入依赖 <dependency> <groupId>com.vdurmont</groupId>
由来 最早Servlet相关的工具并不在Hutool的封装考虑范围内,但是后来很多人提出需要一个Servlet Cookie工具,于是我决定建立ServletUtil,这样工具的使用范围就不仅限于Cookie,还包括参数等等。 其实最早的Servlet封装来自于作者的一个MVC框架:Hulu,这个MVC框架对Servlet做了一层封装,使请求处理更加便捷。于是Hutool将Hulu中Request
介绍 JSONUtil是针对JSONObject和JSONArray的静态快捷方法集合,在之前的章节我们已经介绍了一些工具方法,在本章节我们将做一些补充。 使用 parseXXX和toXXX 这两种方法主要是针对JSON和其它对象之间的转换。 readXXX 这类方法主要是从JSON文件中读取JSON对象的快捷方法。包括: readJSON readJSONObject readJSONArray
介绍 MapUtil是针对Map的一一列工具方法的封装,包括getXXX的快捷值转换方法。 方法 isEmpty、isNotEmpty 判断Map为空和非空方法,空的定义为null或没有值 newHashMap 快速创建多种类型的HashMap实例 createMap 创建自定义的Map类型的Map of 此方法将一个或多个键值对加入到一个新建的Map中,下面是栗子: Map<Object, Ob
来源 最早此工具类中的方法是在CollUtil中的,由于经过抽象,因此单独拿出来以适应更广的场景。 方法介绍 isEmpty 是否为null或者无元素 isNotEmpty 是否为非null或者至少一个元素 hasNull 是否有null元素 isAllNull 是否全部为null元素 countMap 根据集合返回一个元素计数的Map,所谓元素计数就是假如这个集合中某个元素出现了n次,那将这个元
什么是Bean 把一个拥有对属性进行set和get方法的类,我们就可以称之为JavaBean。实际上JavaBean就是一个Java类,在这个Java类中就默认形成了一种规则——对属性进行设置和获得。而反之将说Java类就是一个JavaBean,这种说法是错误的,因为一个java类中不一定有对属性的设置和获得的方法(也就是不一定有set和get方法)。 通常Java中对Bean的定义是包含setX
类处理工具 ClassUtil 这个工具主要是封装了一些反射的方法,使调用更加方便。而这个类中最有用的方法是scanPackage方法,这个方法会扫描classpath下所有类,这个在Spring中是特性之一,主要为Hulu框架中类扫描的一个基础。下面介绍下这个类中的方法。 getShortClassName 获取完整类名的短格式如:cn.hutool.core.util.StrUtil -> c
由来 在日常编码中,我们接触最多的除了JSON外,就是XML格式了,一般而言,我们首先想到的是引入Dom4j包,却不知JDK已经封装有XML解析和构建工具:w3c dom。但是由于这个API操作比较繁琐,因此Hutool中提供了XmlUtil简化XML的创建、读和写的过程。 使用 读取XML 读取XML分为两个方法: XmlUtil.readXML 读取XML文件 XmlUtil.parseXml
介绍 URL(Uniform Resource Locator)中文名为统一资源定位符,有时也被俗称为网页地址。表示为互联网上的资源,如网页或者FTP地址。在Java中,也可以使用URL表示Classpath中的资源(Resource)地址。 方法 获取URL对象 URLUtil.url 通过一个字符串形式的URL地址创建对象 URLUtil.getURL 主要获得ClassPath下资源的URL
介绍 转义和反转义工具类Escape / Unescape。escape采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。 此类中的方法对应Javascript中的escape()函数和unescape()函数。 方法 EscapeUtil.escape
介绍 从Hutool的5.4.x开始,Hutool加入了针对JDK8+日期API的封装,此工具类的功能包括LocalDateTime和LocalDate的解析、格式化、转换等操作。 使用 日期转换 String dateStr = "2020-01-23T12:23:56"; DateTime dt = DateUtil.parse(dateStr); // Date对象转换为LocalDate
导航菜单 导航菜单允许你访问基本功能,如概览、警报、查询分析器、复制和配置。 响铃图标 当有升级可用时,响铃图标旁边的圆点可让你知道有更新通知。点击响铃图标查看通知。 用户菜单 用户菜单允许你打开自己的个人资料页面,选择采用浅色或深色外观,更改用户界面的语言并注销当前用户的会话。如果你有足够的权限,你亦可以打开激活页面。 已选择的实例 显示左侧实例窗格中的所有已选择的实例。点击它以显示或隐藏实例窗
剖析性能 使用 Devel::NYTProf,或 Devel::DProf。 分析代码质量 使用 Perl::Critic,它基本上是针对 Perl 的 lint。 分析变量结构 使用 Data::Dumper。
逆向工程是模型的其中一个主要功能。这功能让你加载现有的数据库结构以创建新的图表。它支持导入数据库、模式、表或视图。 Navicat 提供一个向导,一步一步指导你完成任务: 选择“文件”->“从数据库导入”。 选择一个连接。 选择你要导入的数据库、模式、表或视图。 点击“开始”。 你也可以简单地在 Navicat 主窗口使用逆向工程创建一个新模型。右击一个已打开的数据库或模式、表或视图并在弹出式菜单