java生成枚举类下拉框 - 供前端使用

生成枚举类代码

1. 创建通用model枚举类封装对象

package com.ruoyi.coordination.enums;

import java.io.Serializable;

public class SelectBean implements Serializable {
    private String seKey;
    private String seValue;
    public String getSeKey() {
        return seKey;
    }
    public void setSeKey(String seKey) {
        this.seKey = seKey;
    }
    public String getSeValue() {
        return seValue;
    }
    public void setSeValue(String seValue) {
        this.seValue = seValue;
    }
}

2. 创建对应接口返回前台的枚举对象下拉框类型

package com.ruoyi.coordination.enums;

public enum TaskTypeEnum {

    TOPIC("1","课题"),
    COMMUNICATION("2","沟通"),
    DESIGN("3","设计"),
    DEVELOP("4","开发"),
    TEST("5","测试"),
    DELIVER("6","交付");

    private String label;
    private String value;
    public String getLabel() {
        return label;
    }
    public void setLabel(String label) {
        this.label = label;
    }
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
    private TaskTypeEnum(String label, String value) {
        this.label = label;
        this.value = value;
    }

}

3. 在对应控制层,编写接口返回给前台数据


    @RequiresPermissions("coordination:teamTaskInfo:list")
    @GetMapping("/getTaskTypeEnum")
    public AjaxResult getTaskTypeEnum() {
        SelectBean bean;
        List<SelectBean> listBean = null;
        listBean = new ArrayList<SelectBean>();
        for (TaskTypeEnum taskTypeEnum : TaskTypeEnum.values()) {
            bean = new SelectBean();
            bean.setSeKey(taskTypeEnum.getLabel());
            bean.setSeValue(taskTypeEnum.getValue());
            listBean.add(bean);
        }
        return AjaxResult.success(listBean);
    }

枚举类自带一些很实用的方法:valueOf() ,values()等。
      valueOf();  它的作用是传来一个字符串,然后将它转变为对应的枚举变量。前提是你传
      的字符串和定义枚举变量的字符串一摸一样,区分大小写。如果你传了一个不存在的字符串,那么会抛出异常。
      values():  这个方法会返回包括所有枚举变量的数组

4. 使用接口测试类工具,检验是否能返回准确数据

{
	"msg": "操作成功",
	"code": 200,
	"data": [
		{
			"seKey": "1",
			"seValue": "课题"
		},
		{
			"seKey": "2",
			"seValue": "沟通"
		},
		{
			"seKey": "3",
			"seValue": "设计"
		},
		{
			"seKey": "4",
			"seValue": "开发"
		},
		{
			"seKey": "5",
			"seValue": "测试"
		},
		{
			"seKey": "6",
			"seValue": "交付"
		}
	]
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是使用Java的POI生成下拉框的Excel模板的示例代码: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.xssf.usermodel.XSSFDataValidation; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileOutputStream; public class ExcelTemplateGenerator { public static void main(String[] args) throws Exception { // 创建工作簿 XSSFWorkbook workbook = new XSSFWorkbook(); // 创建工作表 XSSFSheet sheet = workbook.createSheet("Sheet1"); // 创建下拉框选项 String[] options = {"Option1", "Option2", "Option3"}; // 创建数据有效性对象 DataValidationHelper validationHelper = sheet.getDataValidationHelper(); CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0); DataValidationConstraint constraint = validationHelper.createExplicitListConstraint(options); DataValidation dataValidation = validationHelper.createValidation(constraint, addressList); // 将数据有效性对象应用于单元格 sheet.addValidationData(dataValidation); // 创建单元格样式 CellStyle style = workbook.createCellStyle(); style.setFillForegroundColor(IndexedColors.YELLOW.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); // 创建单元格 Row row = sheet.createRow(0); Cell cell = row.createCell(0); cell.setCellValue("Select an option"); cell.setCellStyle(style); // 输出Excel文件 FileOutputStream outputStream = new FileOutputStream("template.xlsx"); workbook.write(outputStream); workbook.close(); outputStream.close(); } } ``` 在上面的示例代码中,我们首先创建了一个工作簿和一个工作表。然后,我们定义了下拉框选项,并使用`DataValidationHelper`类创建了一个数据有效性对象。接下来,我们将数据有效性对象应用于单元格,并在单元格中设置了样式。最后,我们将工作簿输出到文件系统中。 需要注意的是,上面的示例代码使用了`XSSFWorkbook`类来创建Excel文件,这意味着生成的Excel文件将是一个XLSX文件。如果你需要生成一个XLS文件,可以使用`HSSFWorkbook`类代替。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值