求助, 这个空怎么填

2019-06-10 22:37:53 +08:00
 hastyfish
@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
);
1131 次点击
所在节点    问与答
1 条回复
woscaizi
2019-06-10 22:50:55 +08:00
取数据库中最新一条专业的编号,后两位转 int 加一,不足 2 位补位,加上学院前缀。
注意加表锁。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/572631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX