add method

This commit is contained in:
Looly 2020-12-18 23:25:21 +08:00
parent 9070709dfc
commit 973c9c4227
3 changed files with 59 additions and 43 deletions

View File

@ -3,11 +3,13 @@
------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------
# 5.5.5 (2020-12-17) # 5.5.5 (2020-12-18)
### 新特性 ### 新特性
* 【core 】 URLUtil.normalize新增重载pr#233@Gitee * 【core 】 URLUtil.normalize新增重载pr#233@Gitee
* 【core 】 PathUtil增加isSub和toAbsNormal方法 * 【core 】 PathUtil增加isSub和toAbsNormal方法
* 【db 】 RedisDS实现序列化接口pr#1323@Github
* 【poi 】 StyleUtil增加getFormat方法pr#235@Gitee
### Bug修复 ### Bug修复
* 【core 】 FileUtil.isSub相对路径判断问题pr#1315@Github * 【core 】 FileUtil.isSub相对路径判断问题pr#1315@Github

View File

@ -9,6 +9,7 @@ import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.Protocol; import redis.clients.jedis.Protocol;
import java.io.Closeable; import java.io.Closeable;
import java.io.Serializable;
/** /**
* Jedis数据源 * Jedis数据源
@ -16,7 +17,7 @@ import java.io.Closeable;
* @author looly * @author looly
* @since 3.2.3 * @since 3.2.3
*/ */
public class RedisDS implements Closeable, Serializable{ public class RedisDS implements Closeable, Serializable {
private static final long serialVersionUID = -5605411972456177456L; private static final long serialVersionUID = -5605411972456177456L;
/** 默认配置文件 */ /** 默认配置文件 */
public final static String REDIS_CONFIG_PATH = "config/redis.setting"; public final static String REDIS_CONFIG_PATH = "config/redis.setting";
@ -30,7 +31,7 @@ public class RedisDS implements Closeable, Serializable{
/** /**
* 创建RedisDS使用默认配置文件默认分组 * 创建RedisDS使用默认配置文件默认分组
* *
* @return {@link RedisDS} * @return RedisDS
*/ */
public static RedisDS create() { public static RedisDS create() {
return new RedisDS(); return new RedisDS();
@ -40,7 +41,7 @@ public class RedisDS implements Closeable, Serializable{
* 创建RedisDS使用默认配置文件 * 创建RedisDS使用默认配置文件
* *
* @param group 配置文件中配置分组 * @param group 配置文件中配置分组
* @return {@link RedisDS} * @return RedisDS
*/ */
public static RedisDS create(String group) { public static RedisDS create(String group) {
return new RedisDS(group); return new RedisDS(group);
@ -51,7 +52,7 @@ public class RedisDS implements Closeable, Serializable{
* *
* @param setting 配置文件 * @param setting 配置文件
* @param group 配置文件中配置分组 * @param group 配置文件中配置分组
* @return {@link RedisDS} * @return RedisDS
*/ */
public static RedisDS create(Setting setting, String group) { public static RedisDS create(Setting setting, String group) {
return new RedisDS(setting, group); return new RedisDS(setting, group);

View File

@ -1,8 +1,10 @@
package cn.hutool.poi.excel.style; package cn.hutool.poi.excel.style;
import cn.hutool.core.util.StrUtil;
import org.apache.poi.ss.usermodel.BorderStyle; import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.DataFormat;
import org.apache.poi.ss.usermodel.FillPatternType; import org.apache.poi.ss.usermodel.FillPatternType;
import org.apache.poi.ss.usermodel.Font; import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.HorizontalAlignment; import org.apache.poi.ss.usermodel.HorizontalAlignment;
@ -10,20 +12,18 @@ import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.VerticalAlignment; import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import cn.hutool.core.util.StrUtil;
/** /**
* Excel样式工具类 * Excel样式工具类
* *
* @author looly * @author looly
* @since 4.0.0 * @since 4.0.0
*/ */
public class StyleUtil { public class StyleUtil {
/** /**
* 克隆新的{@link CellStyle} * 克隆新的{@link CellStyle}
* *
* @param cell 单元格 * @param cell 单元格
* @param cellStyle 被复制的样式 * @param cellStyle 被复制的样式
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -33,8 +33,8 @@ public class StyleUtil {
/** /**
* 克隆新的{@link CellStyle} * 克隆新的{@link CellStyle}
* *
* @param workbook 工作簿 * @param workbook 工作簿
* @param cellStyle 被复制的样式 * @param cellStyle 被复制的样式
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -43,13 +43,13 @@ public class StyleUtil {
newCellStyle.cloneStyleFrom(cellStyle); newCellStyle.cloneStyleFrom(cellStyle);
return newCellStyle; return newCellStyle;
} }
/** /**
* 设置cell文本对齐样式 * 设置cell文本对齐样式
* *
* @param cellStyle {@link CellStyle} * @param cellStyle {@link CellStyle}
* @param halign 横向位置 * @param halign 横向位置
* @param valign 纵向位置 * @param valign 纵向位置
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
public static CellStyle setAlign(CellStyle cellStyle, HorizontalAlignment halign, VerticalAlignment valign) { public static CellStyle setAlign(CellStyle cellStyle, HorizontalAlignment halign, VerticalAlignment valign) {
@ -60,8 +60,8 @@ public class StyleUtil {
/** /**
* 设置cell的四个边框粗细和颜色 * 设置cell的四个边框粗细和颜色
* *
* @param cellStyle {@link CellStyle} * @param cellStyle {@link CellStyle}
* @param borderSize 边框粗细{@link BorderStyle}枚举 * @param borderSize 边框粗细{@link BorderStyle}枚举
* @param colorIndex 颜色的short值 * @param colorIndex 颜色的short值
* @return {@link CellStyle} * @return {@link CellStyle}
@ -81,12 +81,12 @@ public class StyleUtil {
return cellStyle; return cellStyle;
} }
/** /**
* 给cell设置颜色 * 给cell设置颜色
* *
* @param cellStyle {@link CellStyle} * @param cellStyle {@link CellStyle}
* @param color 背景颜色 * @param color 背景颜色
* @param fillPattern 填充方式 {@link FillPatternType}枚举 * @param fillPattern 填充方式 {@link FillPatternType}枚举
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -96,9 +96,9 @@ public class StyleUtil {
/** /**
* 给cell设置颜色 * 给cell设置颜色
* *
* @param cellStyle {@link CellStyle} * @param cellStyle {@link CellStyle}
* @param color 背景颜色 * @param color 背景颜色
* @param fillPattern 填充方式 {@link FillPatternType}枚举 * @param fillPattern 填充方式 {@link FillPatternType}枚举
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -107,12 +107,12 @@ public class StyleUtil {
cellStyle.setFillPattern(fillPattern); cellStyle.setFillPattern(fillPattern);
return cellStyle; return cellStyle;
} }
/** /**
* 创建字体 * 创建字体
* *
* @param workbook {@link Workbook} * @param workbook {@link Workbook}
* @param color 字体颜色 * @param color 字体颜色
* @param fontSize 字体大小 * @param fontSize 字体大小
* @param fontName 字体名称可以为null使用默认字体 * @param fontName 字体名称可以为null使用默认字体
* @return {@link Font} * @return {@link Font}
@ -121,24 +121,24 @@ public class StyleUtil {
final Font font = workbook.createFont(); final Font font = workbook.createFont();
return setFontStyle(font, color, fontSize, fontName); return setFontStyle(font, color, fontSize, fontName);
} }
/** /**
* 设置字体样式 * 设置字体样式
* *
* @param font 字体{@link Font} * @param font 字体{@link Font}
* @param color 字体颜色 * @param color 字体颜色
* @param fontSize 字体大小 * @param fontSize 字体大小
* @param fontName 字体名称可以为null使用默认字体 * @param fontName 字体名称可以为null使用默认字体
* @return {@link Font} * @return {@link Font}
*/ */
public static Font setFontStyle(Font font, short color, short fontSize, String fontName) { public static Font setFontStyle(Font font, short color, short fontSize, String fontName) {
if(color > 0) { if (color > 0) {
font.setColor(color); font.setColor(color);
} }
if(fontSize > 0) { if (fontSize > 0) {
font.setFontHeightInPoints(fontSize); font.setFontHeightInPoints(fontSize);
} }
if(StrUtil.isNotBlank(fontName)) { if (StrUtil.isNotBlank(fontName)) {
font.setFontName(fontName); font.setFontName(fontName);
} }
return font; return font;
@ -153,7 +153,7 @@ public class StyleUtil {
* @since 5.4.0 * @since 5.4.0
*/ */
public static CellStyle createCellStyle(Workbook workbook) { public static CellStyle createCellStyle(Workbook workbook) {
if(null == workbook){ if (null == workbook) {
return null; return null;
} }
return workbook.createCellStyle(); return workbook.createCellStyle();
@ -161,12 +161,12 @@ public class StyleUtil {
/** /**
* 创建默认普通单元格样式 * 创建默认普通单元格样式
* *
* <pre> * <pre>
* 1. 文字上下左右居中 * 1. 文字上下左右居中
* 2. 细边框黑色 * 2. 细边框黑色
* </pre> * </pre>
* *
* @param workbook {@link Workbook} 工作簿 * @param workbook {@link Workbook} 工作簿
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -179,7 +179,7 @@ public class StyleUtil {
/** /**
* 创建默认头部样式 * 创建默认头部样式
* *
* @param workbook {@link Workbook} 工作簿 * @param workbook {@link Workbook} 工作簿
* @return {@link CellStyle} * @return {@link CellStyle}
*/ */
@ -190,15 +190,28 @@ public class StyleUtil {
setColor(cellStyle, IndexedColors.GREY_25_PERCENT, FillPatternType.SOLID_FOREGROUND); setColor(cellStyle, IndexedColors.GREY_25_PERCENT, FillPatternType.SOLID_FOREGROUND);
return cellStyle; return cellStyle;
} }
/** /**
* 给定样式是否为null无样式或默认样式默认样式为<code>workbook.getCellStyleAt(0)</code> * 给定样式是否为null无样式或默认样式默认样式为{@code workbook.getCellStyleAt(0)}
*
* @param workbook 工作簿 * @param workbook 工作簿
* @param style 被检查的样式 * @param style 被检查的样式
* @return 是否为null无样式或默认样式 * @return 是否为null无样式或默认样式
* @since 4.6.3 * @since 4.6.3
*/ */
public static boolean isNullOrDefaultStyle(Workbook workbook, CellStyle style) { public static boolean isNullOrDefaultStyle(Workbook workbook, CellStyle style) {
return (null == style) || style.equals(workbook.getCellStyleAt(0)); return (null == style) || style.equals(workbook.getCellStyleAt(0));
} }
/**
* 创建数据格式并获取格式
*
* @param format 数据格式
* @return 数据格式
* @since 5.5.5
*/
public Short getFormat(Workbook workbook, String format) {
final DataFormat dataFormat = workbook.createDataFormat();
return dataFormat.getFormat(format);
}
} }