分类的问题

问题描述

项目里有时会有类型这个概念比如说资讯类型、商家类型等等。类型表一般是create table stype (id int not null primary key auto_increment, parentid int ,typename varchar(50),typecode varchar(10));insert into stype(parentid,typename,typecode) values(null,'typename1','typecode1');然后我在Constants.java里面 定义了一个public Static final String xxcode = 'typecode1'; //这个typecode1 和数据库里的值是一样的在代码里使用就是selectBytype(xxcode );这样写有一个问题就是我的Constants里面的变量要人工的和数据库里面的数据相对应,而且万一数据库中分类一多,比如说一百多几百就很容易出错。想问下 关于分类的这种问题大家怎么处理的问题补充:一楼二楼都是说不要硬编码,这里我主要迷惑的是:typecode的值是已经有了的 stype 表里的typecode字段, 这个值是不会变的。在代码里我想得到一个可以阅读的 让人知道这个什么意思的常量来代替typcode中的值。那么如果我不在constant里面写public Static final String FOOD_CODE = 'food';假设当我想取得餐饮美食这个类型的数据 我该怎么在代码里面写呢?selectBytype(//这里写什么参数);

解决方案

这个看你个人编码习惯了。你这种做法也可以,但必须保证注释清楚,否则以后维护有隐患。另外你在同一个变量中有成百上千的分类调用时找就得找半天。还有我说的写到数据库中,数据分类字典维护程序可以做成通用程序,不必一个分类写一个模块。
解决方案二:
这要具体看你的情况了。引用selectBytype(//这里写什么参数); 我觉得问题分两种情况:1,这里的参数也是从数据库中来的,可能是另外一个表,比如(餐饮美食)数据表,这里的数据属于food类型,因此你可以从表中取得food这个值,然后selectBytype(//变量,其值为food)。2,你直接在程序中硬编码来写selectBytype("food"),得到餐饮美食的数据。这取决于你的需求了。
解决方案三:
最好在数据库中再建立一个分类字CategoryDic{ ID 主标识; Name 分类名称; Code 分类编号;(对应你的typecode) }这样做后台维护的时候写一个通用的分类字典维护界面就可以了用的时候到数据库去查一下分类字典的ID,然后查出typeCode,调用selectBytype(xxcode )就可以了。这样总比你写在变量中灵活通用一些。
解决方案四:
Constants里面的常量应该是从数据库中取出来的数据,可以考虑把这些类型常量放到一个Map中去,就可以方便的取了。而不是根据数据库中的数据,自己在Constants类里面对应来硬编码的。

时间: 2024-11-13 08:07:54

分类的问题的相关文章

【玩转数据系列十】利用阿里云机器学习在深度学习框架下实现智能图片分类

伴随着今日阿里云机器学习PAI在云栖大会的重磅发布,快来感受下人工智能的魅力. 一.背景 随着互联网的发展,产生了大量的图片以及语音数据,如何对这部分非结构化数据行之有效的利用起来,一直是困扰数据挖掘工程师的一到难题.首先,解决非结构化数据常常要使用深度学习算法,上手门槛高.其次,对于这部分数据的处理,往往需要依赖GPU计算引擎,计算资源代价大.本文将介绍一种利用深度学习实现的图片识别案例,这种功能可以服用到图片的检黄.人脸识别.物体检测等各个领域. 下面尝试通过阿里云机器学习平台产品,利用深度

【机器学习PAI实践十二】机器学习实现男女声音识别分类(含语音特征提取数据和代码)

背景 随着人工智能的算法发展,对于非结构化数据的处理能力越来越受到重视,这里面的关键一环就是语音数据的处理.目前,许多关于语音识别的应用案例已经影响着我们的生活,例如一些智能音箱中利用语音发送指令,一些搜索工具利用语音输出文本代替键盘录入. 本文我们将针对语音识别中最简单的案例"男女声音"识别,结合本地的R工具以及机器学习PAI,为大家进行介绍.通过本案例,可以将任何用户的语音数据标记出性别,并且保持高准确率.我们把整个实验流程切分为两部分,第一部分是声音信号的特征提取,通过R的信号处

互联网里的分类和标签

标签:网络2.0的象征 内容需要"做标记",如同杨是树,长江第一大桥在武汉一样.互联网时代,面对充斥满屏幕等待挑选的信息,如果能按属性和内容特征筛选信息,无疑是磨刀不误砍柴工. 标记内容目前有两种方式,一个是分类,另外一个是打标签. 为什么给内容做标记 因为我们要找东西,一切我们认为有用的东西. 方便识别 当一则"内容"出现在我们面前,我们首先需要识别它.不管是否需要深入关注,只要是我们主动或被动地接触到内容后,我们就不得不去了解它的概要.最简单的,一说"

标签分类理论

免费开通大数据服务:https://www.aliyun.com/product/odps 转载自mohang 最近在做DMP,负责设计一套标签管理系统.在对现有标签进行整理的过程中,整理出了这套东西. 0. 标签的定义:标签分类学(Taxonomy) 对于标签(tag),很难列出一个公认的定义,指明这个概念的种差与属概念.所以为了把握这个概念,就需要采取定义另一种办法:分类与枚举. 我们要解决的第一个问题是,有哪些类型的标签,如何对标签进行分类.首先不妨对"如何分类"本身进行分类,我

缓冲区-关于操作系统中缓冲池里面队列的分类问题。。

问题描述 关于操作系统中缓冲池里面队列的分类问题.. 缓冲池(Buffer Pool)中的缓冲区可供多个进程共享,缓冲池中的缓冲区根据类型划分,相同类型的缓冲区链成一个队列,于是形成了三个队列: 空缓冲队列 输入队列(装满输入数据的缓冲区链成的队列) 输出队列(装满输出数据的缓冲区链成的队列) 然而,在UNIX的缓冲区管理中,设置了三种队列,分别为: 自由buf队列 设备buf队列 NODEV设备队列 那么缓冲区到底是怎么划分的..?UNIX中的三种队列和缓冲池中划分的三种队列有什么关系? 解决

用神经网络进行文本分类

本文讲的是用神经网络进行文本分类, 理解聊天机器人如何工作是很重要的.聊天机器人内部一个基础的组成部分是文本分类器.让我们一起来探究一个用于文本分类的人工神经网络的内部结构. 多层人工神经网络 我们将会使用两层神经元(包括一个隐层)和词袋模型来组织(organizing 似乎有更好的选择,求建议)我们的训练数据.有三种聊天机器人文本分类的方法:模式匹配,算法,神经网络.尽管基于算法的方法使用的多项式朴素贝叶斯方法效率惊人,但它有三个根本性的缺陷: 该算法的输出是一个评分而非概率.我们想要的是一个

分类算法:决策树(C4.5)

C4.5是机器学习算法中的另一个分类决策树算法,它是基于ID3算法进行改进后的一种重要算法,相比于ID3算法,改进有如下几个要点: 用信息增益率来选择属性.ID3选择属性用的是子树的信息增益,这里可以用很多方法来定义信息,ID3使用的是熵(entropy, 熵是一种不纯度度量准则),也就是熵的变化值,而C4.5用的是信息增益率. 在决策树构造过程中进行剪枝,因为某些具有很少元素的结点可能会使构造的决策树过适应(Overfitting),如果不考虑这些结点可能会更好. 对非离散数据也能处理. 能够

php通过分类列表产生分类树数组的方法

  这篇文章主要介绍了php通过分类列表产生分类树数组的方法,涉及php操作数组与分类节点的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了php通过分类列表产生分类树数组的方法.分享给大家供大家参考.具体分析如下: 这里$list 为分类列表数组,键为分类 ID,值为分类节点对象,pid 为父分类 ID php代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 $tree = array(); foreach ($list as $id => $row) { $

POJ题目分类

初期: 一.基本算法:      (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法.      (4)递推.      (5)构造法.(poj3295)      (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996) 二.图算法:      (1)图的深度优先遍历和广度优先遍历.      (2)最短路径算法(dijkstra,bellman-ford

假期文件多 Win7“库快速分类 ”

假期将至,相信很多朋友早已在计划长假如何度过了,或者抓住机会外出游玩,或者在家享受难得的悠闲时光.假期精彩,可别让电脑里各种各样的文件成为你的烦恼,拍摄的大量照片.搜集的N多电影等等,文件不好好整理,不仅找起来费力,而且很容易影响心情.Win7的"库"功能能够帮我们轻松管理文件,清晰分类查找. 在Win7默认的"库"中,有图片.文档.音乐.视频这四个分类,基本涵盖了我们生活中常用的文件,当然也足够你假期的娱乐生活了.鼠标右键点击一个分类,选择"属性&quo