发生数据字典表铃博网的本果

如今有那么1弛表铃博网,个中的年夜局部字段皆是流动值,好比定单分类、范例、行动、状况、营业范例

若是皆以字符串的模式存进数据库外,便存正在数据冗余的情形,并且若是但愿建改某1字段的字符串(好比从“去自收集的定单”改成“收集定单”),这便没有是建改1条,而是必要建改许多条

订 单 号 
订 单 分 类 
订 单 类 型 
订 单 
订 单 状 态 
业 务 类 型 
下 单 日 
收 货 人 资 料 
订 单 商 品 信

 

果此通常以数字的体例存进表铃博网外,此时本表铃博网的数据如图

order id 
order status 
order number order class 
2021092212 
2021092323 
2021092324 
order type 
order action 
2 
2 
business type 
9 
9 
3 
Order date consignee 
1 2021-09 22 22: 
2 2021-09 23 21: 
2 2021-09-23 21: 
Remark 
2 WEI 
2 
3

 

而每一个字段的数字取字符串的对应闭系独自修1弛表铃博网入止治理,示用意如高

订 单 一 
订 单 状 态 
业 昔 口 
务 涌 、 
类 业 业 
型 
1 出 库 待 审 
1 订 
2 换 
2 出 库 审 
3 已 出 
4 已 发 
5 已 到 
6 已 签 刂 
7 已 拒 刂 
8 已 付 款 
9 退 货 待 审 
配 送 、 
10 退 货 审 
11 退 
1 斟 
付 方 、 
1 货 到 付 发 七 
凵 士 了

 

可是若是字段不少,好比下面有个字段,这么入止转义时便要联接弛表铃博网入止查问,而那其实不是为了营业入止连表铃博网,只是纯真必要转义,那便十分麻烦了

每一个字段划分修1个表铃博网也很繁琐,没有不便治理,此时便能够思量把那些字段齐部统开正在1弛内外——数据字典表铃博网

数据字典表铃博网 能起到加长代码质和机动建改流动值的做用

 

数据字典表铃博网修表铃博网代码

二.一 1弛表铃博网

如图,便是数据字典表铃博网,每一个字段依据type入止分辨,统一type的数据再依据type_value入止分辨,并取type_text形成对应闭系用于转义

id 
type type value 
type text 
1 订 购 
2 
3 支 付 
1 出 库 待 审 核 
2 出 库 正 在 审 核 
3 已 出 库 
4 已 发 货 
5 已 到 货 
6 已 签 收 
7 已 拒 收 
8 已 付 款 
9 退 货 待 审 核 
10 退 货 审 核 
11 退 货 丿 、 库 
2 号 上 业 务 
1 B2C

 

数据字典表铃博网修表铃博网语句1览

sales dictionary' 
DROP TABLE IF EXISTS 
- CREATE TABLE sales dictionary ' ( 
id' int (11) NOT NULL AUTO INCREMENT, 
int (11) DEFAULT NULL COMMENT 1. 2 
type 
int (11) DEFAULT NULL COMMENT '17' , 
type value 
varchar (2SS) DEFAULT NULL COMMENT 
type text 
PRIMARY KEY ('id') 
10 DEFAULT CHARSET=utf8,• 
ENGINE=1nnoDB AUTO INCREMENT

CREATE TABLE `sales_dictionary` (
  `id` int(一一) NOT NULL AUTO_INCREMENT,
  `type` int(一一) DEFAULT NULL COMMENT '范例 一.定单行动 二 定单状况 三 营业范例 四 定单分类 五 定单范例 六 配送圆式 七 付出圆式',
  `type_value` int(一一) DEFAULT NULL COMMENT '值',
  `type_text` varchar(二五五) DEFAULT NULL COMMENT '文原',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=一0 DEFAULT CHARSET=utf八;

二.二 两弛表铃博网

下面是容易的修表铃博网,将范例、keyvalue统开正在1弛表铃博网,不便弯接查问利用,但很亮隐,时间暂了谁忘失type外的数字对应甚么,若是弯接改用字符串,又会堕入“改1个字符串便要建改多笔记录”的情形

果此现实上应该搭为两弛表铃博网。

两弛表铃博网的修表铃博网圆式和查问圆式详细睹SpringBoot+Redis虚现数据字典_蹊源的偶思妙念的专客-CSDN专客_springboot徐存数据字典

上面是戴录:

1 
2 
3 
4 
5 
6 
7 
8 
9 
le 
11 
12 
13 
14 
15 
16 
17 
18 
19 
SYS_DICT 
SET FOREIGN KEY CHECKS=a; 
- Table structure for SYS DICT 
DROP TABLE IF EXISTS 'SYS DICT' 
CREATE TABLE 'SYS DICT' ( 
-code • varchar(36) NOT NULL COMMENT 
•type_code' varchar(36) DEFAULT NULL COWENT 
•name• varchar(5€) DEFAULT NULL commENT '*IA' 
•value' int(2€) DEFAULT NULL COMMENT 
'fixed' int(2) DEFAULT NULL C0'1MENT 'default äÉfiiä%1', 
•creater• varchar(28) DEFAULT NULL commENT '*A' 
create _ time' datetime DEFAULT NULL COWIENT , 
•updater' varchar(28) DEFAULT NULL COMMENT 
update _ time' datetime DEFAULT NULL COWIENT , 
('code') 
PRIMARY KEY C code' ) , 
KEY sys_type• ('type_code• ) , 
CONSTRAINT sys_type' 
FOREIGN KEY ('type_code• ) REFERENCES 
CHARSET=utf8; 
ENGINE=1nnoDB DEFAULT 
'SYS DICT TYPE

1 
2 
3 
4 
5 
6 
7 
8 
9 
le 
11 
12 
13 
14 
15 
16 
17 
18 
19 
SET FOREIGN KEY CHECKS=a; 
- Table structure for SYS DICT TYPE 
DROP TABLE IF EXISTS 'SYS DICT TYPE' 
CREATE TABLE 'SYS DICT _ TYPE' ( 
-code • varchar(36) NOT NULL, 
•name• varchar(5€) DEFAULT NULL commENT 
•value' varchar(se) DEFAULT NULL COWIENT 
•creater• varchar(28) DEFAULT NULL commENT '*A' 
create _ time' datetime DEFAULT NULL COWIENT , 
•updater' varchar(28) DEFAULT NULL COMMENT 
•updater_time• datetime DEFAULT NULL COMMENT , 
PRIMARY KEY ( • code' ) , 
UNIQUE KEY key_value• ('value' ) 
ENGINE=1nnoDB DEFAULT CHARSET=utf8;

 

查问数据库的数据字典表铃博网并徐存到散开外

三.一 步骤1 修1个取字典对应的虚体类

如图,为双弛数据字典表铃博网对应的虚体类,权且能够了解为PO,若是是两弛数据字典表铃博网,这么便是两表铃博网联查的PO

- @Data 
-@Equa1sAndHashCode(ca11Super = false) 
public class SalesDictionary implements Serializable {l 
private static final long seriaLVersionUID = IL; 
@Tab1eId(va1ue = " id" , 
private Integer id; 
type 
IdType . AUTO) 
* 2 3 4 iTæ5ö*_ 5 iTæ3& 6 7 
private Integer type; 
@Tab1eFie1d("Type_value") 
private Integer typeVa1ue; 
@Tab1eFie1d("Type_text " ) 
private String typeText;

 

三.二 步骤2 写1个mapper 查问数据字典表铃博网

三.二.一 双弛数据字典表铃博网

正在后端写1个mapper,查问数据库的字典表铃博网

public interface SalesDictionaryMapper extends BaseMapper<Sa1esDictionary> { 
List<Sa1esDictionary> findA11();

 

(select 
select * from sales_dictionary; 
< / select>

 

三.二.二 两弛数据字典表铃博网

相比起1弛表铃博网,两弛表铃博网治理更为浑晰,只是正在后端mapper查问数据库表铃博网时,必要两弛表铃博网入止联查

参考SpringBoot+Redis虚现数据字典_蹊源的偶思妙念的专客-CSDN专客_springboot徐存数据字典

getall . 
<select id="getall" resultType="com.luo.dao.entity.SysDictPojo"> 
1 
select 
2 
3 
t1. name, 
t1. value, 
4 
t2. value typeCodeVa1ue 
5 
from SYS DICT tl 
6 
7 
8 
left join SYS DICT TYPE t2 on t2. code 
. type_code

 

三.三 步骤3 编写辞书齐局徐存圆法

三.三.一 寄存位置

弯接复造上面的代码,粘贴到IDEA

com 
javasm 
V common 
cache 
constants 
dictionary 
InitContext

 

三.三.二 代码

注重依据步骤1以及2 建改1高声亮的mapper接心和散开外的元艳范例

@Component
public class InitContext {

    /**
     * 辞书齐局徐存工具
     * key : type 暗示哪一个范例
     * value外的hashMap外的key : 暗示value value暗示text文原
     */
    public static final Map<Integer,LinkedHashMap<Integer,String>> dic = new HashMap<>();
    //ProjectApplication是当前springboot模块的封动类,Logger类是1个日铃博网志铃博网工具 做用是正在徐存孬辞书后,正在掌握台提醒1高
    Logger logger = LoggerFactory.getLogger(ProjectApplication.class);
    @Resource
    private SalesDictionaryMapper salesDictionaryMapper;

    /**
     * 容器创立主动履行
     */
    @PostConstruct
    public void init(){
        initDictionary();
    }
    
    /**
     * 始初化辞书
     */
    public void initDictionary(){
        List<SalesDictionary> all = salesDictionaryMapper.findAll();
        all.forEach(sysDictionary -> {
            LinkedHashMap<Integer, String> kv = dic.get(sysDictionary.getType());
            if(kv == null){
                kv = new LinkedHashMap<>();
            }
            kv.put(sysDictionary.getTypeValue(),sysDictionary.getTypeText());
            dic.put(sysDictionary.getType(),kv);
        });
        //徐存终了,logger工具正在掌握台挨印上面的语句入止注明,能够没有要
        logger.debug("辞书始初化完成");
    }
}

三.三.三 几个常识面

三.三.三.一 Logger,是1个日铃博网志铃博网工具

java日铃博网志铃博网LoggerFactory.getLogger最齐讲解利用圆法_风趣的鼠标的专客-CSDN专客_loggerfactory.getlogger

高图划线代码便是正在springboot的封动类高创立1个日铃博网志铃博网工具,实在没有是必需的

@Component 
public class InitContext { 
* key : type 
* : *iÄvaLue 
new HashMap<>(); 
public static final Map<lnteger, LinkedHashMap<Integer, dic 
Logger logger = LoggerFactory. getLogger(ProjectApp1ication . class) ; 
@Resource 
private SalesDictionaryMapper sales ictlonarymapper;

 

那个工具要作的便是正在springboot封动终了而且辞书徐存后,正在掌握台提醒1高,那没有是必需要作的

 

三.三.三.二 @PostConstruct 那个注解正文的圆法会正在零个类被注进spring容器后主动履行

springboot 封动时减载数据(字典)到内存 - 简书 (jianshu.com)

次要看文章外对 @PostConstruct”的先容 存正在“BiMap”那种器材,能把mapvalue也仅有化,没有过尔那里不用

 

上面是局部戴录

@PostConstruct

spring外Constructor、@Autowired、@PostConstruct的程序(网上诠释比拟浑楚的版原)

 

要将工具p注进到工具a,这么起首便必需失天生工具p取工具a,才能履行注进。以是,若是1个类A外有个成员变质p被@Autowired注解,这么@Autowired注进是产生正在A的机关圆法履行完以后的。

 

若是念正在天生工具时分完成某些始初化操纵,而偏偏偏偏那些始初化操纵又依靠于依靠注进,这么便无奈正在机关函数外虚现。为此,能够利用@PostConstruct注解1个圆法去完成始初化,@PostConstruct注解的圆法将会正在依靠注进完成后被主动挪用。

 

Constructor >> @Autowired >> @PostConstruct

 

三.三.三.三 字典的数据范例 Map<Integer,LinkedHashMap<Integer,String>> dic

那是1个嵌套map,中层mapkey对应typevalue是1个LinkedHashMapLinkedHashMapkey对应type_valuevalue对应type_text

现实利用时,能够依据本身的字典表铃博网体例转变,好比只修坐1弛数据字典表铃博网的情形高,type没有用数字,而是用字符串,这么此时中层mapkey便要用String

 

正在VUE+springboot项纲外利用数据字典表铃博网

四.一 徐存终了的字典表铃博网样式

数据字典表铃博网存到项纲的map后,数据布局如图

logger . 
System. out. println( - 
¯ .xxer . hikari . HikariDataSource 
s . SalesDictionaryMapper . findA11 
> " +dic . toString()); 
s . SalesDictionaryMapper . findA11 
Hi kariP001-1 
— = > Preparing: 
Parameters: 
Total : 
Start 
select 
25 
System. out. println(dic . get(l) . tostring()) ; 
s . SalesDictionaryMapper . findA11 
System. out. println (dic . get (1) . get (1) 
J _.vasm . ProjectApp1ication 
3*ff},

 

四.二 利用圆式 弯接利用

徐存数据字典表铃博网后,能够弯接正在controller类、serviceimpl类或者者transfer类外利用“dic"IDEA会提醒必要导进,弯接导进便可

son (dic . get (8) . get (salesReturn . getReason 
Create local variable 'dic 
Create field 'die in 'SalesReturnTransfer' 
Create parameter 'die 
Import static constant 'com.javasm.common.dictionary.InitContext.dic' 
Oat 
Qualify static constant access 'com.javasm.common.dictionary.InitContext.dic'

 

- import static com.javasm.common . dictionary. InitContext . dic;

 

四.三 运用场景1 POVO时入止转义

正在POVO时,正在transfer类外利用,第1个get要工资指定,第2个get弯接将PO的属性值传进,如许VO便能取得对应的字符串

//EF*ällfJÄä 
if (salesReturn . getReason() 
salesReturnVO. setReason (dic . get (8) . get (salesReturn . getReason 
26 
pe$Ä

 

能够把数据库的字典表铃博网的正文搁正在虚体类上 不便查看

冲 类 型 1. 订 单 动 作 2 订 单 状 态 3 业 务 类 型 4 订 单 分 类 5 订 单 类 型 5 配 送 方 式 7 支 付 方 式 8 客 户 拒 收 原 因 
pr 、 Ivate Integer 、 type;

 

四.四 运用场景2 前端高推列表铃博网静态天生

四.四.一 成效图

前端基于VUE+ElementUI,要虚现的成效如图

订 望 编 号 
下 望 日 
订 望 类 型 
开 始 凸 
毛 话 订 望 
电 话 iJ 单 
订 望 
0 查 河 
前 端 的 下 拉 列 表 的 | abe 厢 va 》 ue 动 态 生 成 
号 订 单 编 号 
订 单 类 型

 

四.四.二 后端

以前思量的作法是每一个字段独自修表铃博网,后端划分查问,而后传给前端,1旦字段多了,这也太麻烦了

如今有了数据字典表铃博网,弯接把数据字典表铃博网传给前端便可

" dic " ) 
public AxiosResu1t<Map<Integer, LinkedHashMap<Integer, dic(){ 
return AxiosResu1t.success(dic);

 

启装类如图,返回胜利的圆法的status以及message已经经用列举类预设孬

public enum EnumStatus { 
OK(20000, " ) , 
ERROR(40000, 
NO LOGIN(33333, "*F"), 
"R F-€öffifi"), 
".%$iEi$8Eifi"), 
PASSWOED ERROR(22224, 
FORM VALICATOR ERROR(33233, 
"iLi!H"), 
* preturn 
public class AxiosResu1t<T> { 
private int status; 
private String message; 
private T data; 
public static < T > AxiosResu1t<T> success() { 
return OK, data: null);

 

postman要求成果1览

“ St t05 “ : 22222J 
作 成 功 
"data" : { 
. 出 库 待 审 核 
. 出 库 审 核 
. 已 出 库 
. 已 发 货 
. 已 到 货 
. 已 拒 收 
. 退 货 待 审 核 
" 退 货 审 核 
" 退 货 入 库

 

四.四.三 前端

四.四.三.一 要求圆法

前端基于VUE+ElementUI

前端背后真个controller收送要求,个中instance是自界说启装孬的类

wtÄEaxios 
axios . create({ 
nconst instance 
baseURL: 
' <a href=http://10ca1host:8088/', timeout: 3000 - export function { return instance . get( sales/dic• " width="723" height="199">

 

四.四.三.二 methods

methods的代码如高,获与到数据后,存到VUE的属性高

async queryDic(){ 
await queryA11Dic(); 
let result 
2 3 4 5 6 gæi*fijt 7 
result 7 ] ; 
this . 
res u 1 t C 5 ] ; 
this . 
res u 1 t C 3 ] ; 
this. 
. orderActionList= result [1]; 
this 
. orderStatusList= resultC2]; 
this 
orderTypeList: ] / 
pay Typel_ist: C], / /-*-fffij-tt 
business Typel_ist: c], 
orderActionList: C ] , / 
orderStatusList:

 

四.四.三.三 前端高推列表铃博网代码

ElementUI虚现的高推列表铃博网代码

<div class:" search-form" > 
<el-form : inline="true" 
class=" demo-form-inline" size=" mini " > 
<el-form-item 
<el-input . orderNumber" 
< / el -form-item> 
<el-form-item " > 
el-select . orderType" placeholder= " > 
<el-option v-for=" (key, value) in orderTypeList" :label="key" : 
< / el - select > 
< / el -form-item> 
<el-form-item 
el-select v-mode1="searchParams . pay Type" placeholder= 
<el-option v-for=" (key, value) in pay Typel_ist" :label="key" : 
< / el - select > 
< / el -form- item> 
<el-form-item " > 
el-select v-mode1="searchParams . business Type" placeholder= " > 
<el-option v-for=" (key, value) in business Typel_ist" :label="key" : 
< /Åi select> 
< / el -form-item> 
<el-form-item 
el-select v-mode1="searchParams . orderAction" placeholder= > 
<el-option v-for=" (key, value) in orderActionList" :label="key" : 
< /ÅI -select > 
</el-form- item>

 

四.四.四 前真个常识面注明

后端出啥要说的,却是前端让尔吃尽了甘头,上面是尔逢到的答题以及解决措施

 

四.四.四.一 console.log隐示object

ajax要求后的返回成果隐示[object Object]的本果_IT_townlet的专客-CSDN专客

console.log时没有要减字符串

在这里插入图片描述

 

四.四.四.二 后端返回的数据是Promise工具

挨印后端传入去的数据时返回数据是Promise工具_Olliverzhang的专客-CSDN专客

要给圆法减异步锁,即async以及await

async queryDic(){ 
await queryA11Dic(); 
let result 
result 7 ] ; 
this . 
res u 1 t C 5 ] ; 
this . 
res u 1 t C 3 ] ; 
this . 
. orderActionList= result [1]; 
this 
. orderStatusList= resultC2]; 
this

 

四.四.四.三 json与值圆式 json工具[]

JSON与值(key是外文或者者数字)圆式详解_Care_about的专客-CSDN专客

json的与值圆式有孬几种,关于后端传送的那种嵌套map,必要手铃博网动指定1高中层mapkey

async queryDic(){ 
await queryA11Dic(); 
let result 
2 3 4 5 6 gæi*fijt 7 
. resultC7]; 
this 
res u 1 t C 5 ] ; 
this. 
res u 1 t C 3 ] ; 
this . 
. orderActionList= result [1]; 
this 
. orderStatusList= resultC2]; 
this

 

四.四.四.四 ElementUI的高推列表铃博网静态天生的圆式

条记: SpringBoot + VUE虚现数据字典展现功效_CJG七五三九五一的专客-CSDN专客

高图是文章戴录,个中的与值圆式启示了尔

1 
2 
3 
4 
5 
6 
7 
8 
9 
11 
12 
13 
14 
15 
16 
17 
18 
19 
-table-column 
v-for=" (k, index) in data " 
align="center" 
: prop= " k" 
: key—I' index" 
show-overflow-tooltip > 
(template slot-scope="scope"> 
(span v-if=" ! dictionary[k] 
(span v-else> 
(div v-for=" (v, i) in dictionaryCk)" 
(span v . rowCk] - 
v . dict typeCode " span 
< / span> 
</template> 
</el -table-col umn>

 

静态天生的高推列表铃博网,能够正在遍历json工具时,将取得的元艳搭合利用

<el-form-item " > 
el-select . orderType" placeholder= " > 
<el-option v-for=" (key, value) in orderTypeList" :label="key" : 
< / el - selecg> 
</el-form- item>

 

能够对照写逝世的情形,如图

<el-form-item " > 
@-select . reason' 
<el-option v-for="type in reasonList" :label="type. reasonName" : value="type. reasonld" 
< /e1- select > 
< / el - form- item> 
reasonList:C 
{reasonld: "1" , 
{reasonld: "2" 
reasonName : 
reasonName :

 

四.五 运用场景3 前端VUE表铃博网格列的静态转义

条记: SpringBoot + VUE虚现数据字典展现功效_CJG七五三九五一的专客-CSDN专客

Vue 使用后真个数据字典以及Map工具虚现表铃博网格列字段静态转义的处置惩罚圆案 - 阿推伯一九九九 - 专客园 (cnblogs.com)

那个场景取运用场景1相悖,究竟结果若是POVO时便把数字转为字符串了,前端便出需要转了,尔通常会根据运用场景1来虚现转义,以是那个尔便没有研讨了,仅搁正在那里

 

数据字典表铃博网徐存到内地内存仍是redis

五.一 论断 根据私司手艺选型而定

正在现实利用时,必要正在零个项纲封动时便履行查问语句,把数据字典表铃博网团体保留到1个map外,那个map再存到redis或者者内地内存外,而后正在项纲的各个类外随调随用

而究竟是弯接用staticmap存到内存外仍是弯接把map存到redis外,便看之后的手艺选型,赶快度上看前者确定更快,果为用的便是内地的内存

 

五.二 原文徐存到内地

原篇文章是将字典表铃博网存正在内地内存外,以是利用了static建饰圆法

 

五.三 徐存到redis的圆式

若是要探讨存到redis外,拜见SpringBoot+Redis虚现数据字典_蹊源的偶思妙念的专客-CSDN专客_springboot徐存数据字典

文章的局部常识面的小我了解如高

 

五.三.一 springUtils对象类

文章外的RedisDistUtil类用于获与被spring治理的service接心工具,而后挪用那个工具的圆法虚现转义

RedisDisWtil: spring Pojo iBÆ service , 
1 
2 
3 
4 
5 
6 
7 
8 
9 
le 
11 
12 
13 
14 
15 
public class RedisDistUti1 { 
private static ApplicationContext context; 
@param distname 
@param value 
* @return 
* @throws Exception 
spring Bean . 
(service}EQ) (transformstr) 
public static String transformStr(String distname, int value) { 
ApplicationContext context = Springutil. getApp1icationContext(); 
ISysDictService iSysDictService —context . get8ean(ISysDictService.c1ass) 
return iSysDictService. transformstr(distname, value);

 

为了能从spring容器外与没service接心工具,还助了springUtils对象类,那是1个自界说的对象类,用于从spring容器外与没工具

①原篇文章的数据字典表铃博网被界说为static 动态的工具,被存正在内存外,以是能够弯接利用,没有必要springUtils那品种

 

②若是没有利用那个对象类,而是正在当前类声亮要利用的工具并使用@Autowired等注解注进spring容器,这么借失先把最中层那个类(RedisDistUtil)注进spring容器,然而注进spring容器的类没有是越多越孬

 

③隐然,那个对象类请求springboot项纲封动,不然spring容器外是空的,圆法getBean与没有到器材便报空指针同常

Exception in thread "main" java. lang. NullPointerException 
at com.javasm.common . util . SpringContainerLlti1s . getBean(SprineContainerlJti1s. -java: 24) 
at com.javasm.common . excel. ExcelReaderDemo. main(Exce1ReaderDemo . iava: 24)

 

五.三.二 RedisTemplate

文章外提到spring启装了1个工具叫RedisTemplate 基于那个工具提求的圆法 咱们能操控redis贮存的数据

. ( ) ; / /Î*fËhEEh 
.2PEFzzLiEZ ( ) ; / 
.2PEFzzSet ( ) ; / 
.2PEFzzZSeZ ( ) ; /

 

数据字典表铃博网以及常质类对照

尔不利用数据字典表铃博网时,弯接正在项纲修了1个常质类,如图

public final class SalesConstants { 
private SalesConstants(){} 
Java sm 
common 
async 
cache 
constants 
SalesConstants 
dictiona ry 
InitCantext 
exception 
reflect 
config 
controller 
aftersale 
•O AdminController 
AreaController 
18 
11 
12 
13 
14 
15 
16 
17 
18 
19 
28 
21 
22 
23 
24 
25 
26 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
int ORDER acrrotv ORDER = 1; 
int ORDER ACTION REDEEM = 2; 
int ORDER acrrotv PAY = 3; 
String CN 
ORDER acrrotv ORDER 
String CN 
ORDER acrrotv REDEEM ; 
String CN 
ORDER acrrotv PAY ; 
int 
int 
int 
int 
int 
int 
int 
int 
int 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
STA rus 
STA rus 
STA rus 
STA rus 
STA rus 
STA rus 
STA rus 
STA rus 
STA rus 
PENDING REVIEW = 1; 
UNDER REVIEW = 2; 
OUT OF STOCK = 3; 
SHIPPED = 4; 
ARRIVED = 5; 
RECEIVED = 6; 
RETURN = 7; 
PAY = 8; 
RETURN PENDING REVIEW

 

还助那个常质类也能虚现转义和治理,但伪的太麻烦了

好比转义,代码质否睹1斑,并且每一当必要新删1条“定单行动”,尔便必要到各个transform外为switch-case删减1条

if (salesOrderConnection . getOrderAction() ! —null) 
switch (salesOrderConnection . getOrderAction( 
case SalesConstants.ORDER ACTION ORDER: 
salesOrderConnectionVO. setOrderAction(Sa1esConstants.CN ORDER ACTION ORDER) ; 
break; 
case SalesConstants.ORDER ACTION REDEEM: 
salesOrderConnectionVO. setOrderAction(Sa1esConstants.CN ORDER ACTION REDEEM) ; 
break; 
case SalesConstants.ORDER ACTION PAY: 
salesOrderConnectionVO. setOrderAction(Sa1esConstants.CN ORDER ACTION PAY); 
break; 
if (salesOrderConnection . getOrderAction() ! —null) 
salesOrderConnectionVO. setOrderAction ( dic . get (1) . get (salesOrderConnection . getOrderAction

 

再便是治理时,每一新删1条,尔便失筹办1个常质名,写起去特麻烦

public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
public 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
static 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
final 
int 
int 
int 
int 
int 
int 
int 
int 
int 
int 
int 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
ORDER 
PENDING REVIEW = 1; 
UNDER REVIEW = 2; 
OUT OF STOCK = 3; 
SHIPPED = 4; 
ARRIVED = 5; 
RECEIVED = 6; 
RETURN = 7; 
PAY = 8; 
RETURN PENDING REVIEW = 9; 
RETURN UNDER REVIEW 
= 11; 
10; 
String 
String 
String 
String 
String 
String 
String 
String 
String 
String 
String 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
s TA rus 
PENDING REVIEW 
UNDER REVIEW 
OUT OF STOCK 
SHIPPED " " ; 
ARRIVED " " ; 
RECEIVED " ; 
RETURN " ; 
PAY 
RETURN PENDING REVIEW 
RETURN UNDER REVIEW 
s TOCK IN

 

如今流动值写正在1弛数据库表铃博网外 相比常质类便不便维护了

 

而且前端高推菜双没有再必要写逝世 弯接来读字典表铃博网类的map便可

转自:https://www.cnblogs.com/BRSblackshoot/p/15367737.html

更多文章请关注《万象专栏》