怎样自动生成学生学号??急急!!!!急

xdr_0911 2008-12-26 11:45:13
在管理员添加学生的时候自动产生学号,
学生有三部分组成:年级号 ,班级号+学号,
当我在选择好学生的年级,班级后,学号自动生成!!
...全文
1587 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
duanlifeng 2009-10-12
  • 打赏
  • 举报
回复
路过
sj2love0qh 2008-12-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jinhuiyu 的回复:]
得到年级和班级号,查询数据库,如果没有跟这个班级年级一样的就年级号+班级号+01,如果有的话就取出年级号班级号相同的最大的那个学号,把后两位+1。 具体实现应该花点心思。
[/Quote]
同意,就这样做啊。还有什么犹豫的,要不就+00001,随便你
1.在程序中查同年级,同班级的学号最大的,+1就是新生成的学号。
2.在sql中拼新学号,具体没有试,估计可能是个复杂sql。
dingzi 2008-12-29
  • 打赏
  • 举报
回复
好像比较简单啊!
具体实现方式是:
得到年级和班级后,传到一个自己编写的方法里自动生成学好。
核心思想是:
年级+班级+随机数(更具要求而定,甚至可以在随机数之前加上入学时间的年月日)
只要在需要学好的时候得到年级,班级,调用方法就可以轻松生成了!很好,很强大!
本人曾经使用过!如果还不懂可以留言!本人愿交流!
szzxm 2008-12-29
  • 打赏
  • 举报
回复
回帖是一种美德!传说每天回帖即可获得 10 分可用分!
lfeng287 2008-12-29
  • 打赏
  • 举报
回复
最后加时间戳new Date().getTime().
sb.append(new Date().getTime());

这样做不可取,虽然说实现起来很好,但是不适用。
现在学校的学号基本都是按照序号一路下来的,不是随机生成。
xdr_0911 2008-12-26
  • 打赏
  • 举报
回复
能教怎么样具体实现吗?
angel753 2008-12-26
  • 打赏
  • 举报
回复
同意一楼的说法!
success000 2008-12-26
  • 打赏
  • 举报
回复
up
jinhuiyu 2008-12-26
  • 打赏
  • 举报
回复
得到年级和班级号,查询数据库,如果没有跟这个班级年级一样的就年级号+班级号+01,如果有的话就取出年级号班级号相同的最大的那个学号,把后两位+1。 具体实现应该花点心思。
thomas.he 2008-12-26
  • 打赏
  • 举报
回复
唉!好像大家的方式都不是很好啊,想一想啊,年级号 ,班级号+学号那個是你要拿到的啊,那個是要變的啊,這樣你才有辦法去做的
凌霄野鹤 2008-12-26
  • 打赏
  • 举报
回复
LS说的是!
mwt_yan 2008-12-26
  • 打赏
  • 举报
回复
得到年级和班级号
StringBuffer sb=new StringBuffer();
sb.append(年级号);
sb.append(班级号);
最后加时间戳new Date().getTime().
sb.append(new Date().getTime());
不用去数据库查,保证唯一,这样影响性能 如果处理不好还会出错.
mwt_yan 2008-12-26
  • 打赏
  • 举报
回复
得到年级和班级号
最后加时间戳new Date().getTime().不用去数据库查,保证唯一,这样影响性能 如果处理不好还会出错.
凌霄野鹤 2008-12-26
  • 打赏
  • 举报
回复 1
代码如下:可以根据实际的更改,数据库链接的自己去写哈!

public class Test {

public static String getStuID() throws SQLException{
DbManager db=new DbManager();
String garde_id="",calss_id="",student_id="";
RowSet rs=db.executeQuery("select g.gid,c.cid from grade g,class c where g.gid='2008' and c.cid='002'");
while(rs.next()){
garde_id=rs.getString("gid");
calss_id=rs.getString("cid");
}

RowSet rs1=db.executeQuery("select max(id) from student");
while(rs1.next()){
int temp=Integer.parseInt(rs1.getString(1).substring(7, rs1.getString(1).length()));

student_id=garde_id+calss_id+(temp+1);
System.out.println(student_id);
}
return student_id;
}
public static void main(String[] args) {
try {
getStuID();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
凌霄野鹤 2008-12-26
  • 打赏
  • 举报
回复
汗!我给你写个算了
xdr_0911 2008-12-26
  • 打赏
  • 举报
回复
就是不会啊 帮帮我吧
凌霄野鹤 2008-12-26
  • 打赏
  • 举报
回复
这种问题还是先自己解决!不会先看书,不懂在问,我也是过来人!要学会多思考!

LZ是不是做毕业设计?

呵呵!
rhythmos 2008-12-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xdr_0911 的回复:]
能教怎么样具体实现吗?
[/Quote]
你自己试试写写呗,数据表字段设置自动递增直接增过去然后补上传进来的前几位就可以了
项目源码资料在课程附件中下载! 随着无纸化办公的普遍实现,信息的自动处理以及网络式的信息交互方式已经被人们广泛应用。让计算机来管理学生的信息是现在各个高校都在积极进行的工作之一,也是高校教学管理工作的重要内容之一。网上选课与传统的选课方式相比更加节约资源,增加了学生选课自主权。 学生选课系统作为一种现代化的教学技术,越来越受到人们的重视,是一个学校不可或缺的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化、系统化、程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确、及时、有效的查询和修改学生选课情况。 需求分析: 1、系统用户由三类组成:教师,学生和管理员。 2、系统管理员 :        1)维护学生的个人基本信息,实现对学生个人信息的增、删、改、查,学生信息包括学号、姓名、性别、年龄、入学时间、系别、专业、密码。        2)维护教师的个人基本信息,实现对教师个人信息的增、删、改、查,教师信息包括教师工号、姓名、性别、密码。        3)维护课程的个人基本信息,实现对课程个人信息的增、删、改、查,课程信息包括课程号、课程名、学分。 3、学生用户:        1)查询和修改个人信息。        2)进行选课操作。        3)学生可以查看自己所选课程信息及以前所选课程的成绩信息。 4、教师用户:        1)查询学生选课信息。        2)课程结束后,登记成绩  项目部分截图:            

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧