V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
hastyfish
V2EX  ›  问与答

求助, 这个空怎么填

  •  
  •   hastyfish · 2019-06-10 22:37:53 +08:00 · 1130 次点击
    这是一个创建于 1993 天前的主题,其中的信息可能已经有所发展或是发生改变。
    @Transactional
        public void addProfessional(String professionalName , String collegeName){
        
            Professional professional = new Professional();
            
            int collegeId = collegeDao.selectIdByName(collegeName);
            
            String collegeIdToString = collegeId >= 10 ? String.valueOf(collegeId) : "0"+collegeId;
            
            String professionalId = "???";
            
            professional.setProfessionalId(professionalId);
            professional.setProfessionalName(professionalName);
            professional.setCollegeId(collegeId);
            
            professionalDao.addProfessional(professional);
        }
    

    学院(college)Id 是两位数字,专业班级(professional)Id 是学院 id+编号,
    例如:
    学院 id 是 01 专业 id 可能是 0101 0102 0103
    学院 id 是 02 专业 id 可能是 0201 0202 0203

    这个"???"该怎么填

    这是表

    create table professional
    (
        professional_id   char(4)     not null primary key comment '专业编号, 学院(2)+编号(2)',
        professional_name    varchar(20)     not null,
        college_id        tinyint     not null
    );
    
    create table college
    (
        college_id     tinyint   not null   auto_increment   primary key   comment '学院编号(2)',
        college_name    varchar(20)    not null
    );
    
    1 条回复    2019-06-10 22:50:55 +08:00
    woscaizi
        1
    woscaizi  
       2019-06-10 22:50:55 +08:00 via iPhone   ❤️ 1
    取数据库中最新一条专业的编号,后两位转 int 加一,不足 2 位补位,加上学院前缀。
    注意加表锁。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   900 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:57 · PVG 05:57 · LAX 13:57 · JFK 16:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.