1.学生选课系统论文
学生选课系统的设计与实现摘要:本文以一个具体的应用系统—学生选课信息系统的设计与实现来说明如何利用UML和EJB组件来设计和构建分布式软件系统平台。
UML和组件技术结合使用能提高开发效率,增加系统的易维护性。关键词:UML;EJB;实例 1引言现在信息管理系统软件的开发,采用组件技术可以提高效率,信息管理系统的分析设计也采用UML来进行。
两者的结合可以极大的提高开发效率,保证系统开发的易维护性。本文用UML这种设计方法和EJB这种组件技术来设计和实现一个系统。
2系统分析本系统设计为学生通过网页登陆学校网站,进行选课。下面用用例图来说明该系统要实现的功能。
2.1用例图 2.2系统总体结构图本系统采用三层体系结构,分为表示层,事务处理层,数据存储层。三层结构层次清晰,易维护。
图3类图学生选课系统涉及到三个实体类:学生,课程,以及学生和课程之间的一个一对多关系类。对每一个类,映射到一张表。
学生类和课程类用Container-Managed Entity Bean实现,学生和课程间的一对多关系类,用Bean-Managed Persistence的Entity Bean实现。再设计一个Session Bean对学生选课过程进行控制。
页面显示部分用JSP实现。3数据库设计学生表对应学生实体,详细内容如下:表1学生表 关联表对应学生和课程间的一对多关系,详细内容如下:研究开发 4实现4.1 Session Bean的设计4.1.1定义Home Interface4.1.2定义Remote Interfacepublic interface EnrollSession extends EJBObject{//-----//这是一个基于Session Bean的Remote接口,这个SessionBean是基于//Stateful的Session Bean,用来对特定学生选课的登记过程进行操作//-----------------------------public String getStudentName()throws RemoteException;public void enroll(ArrayList courseItems)throws RemoteExcep-tion;public void unenroll()throws RemoteException;public void deleteStudent()throws FinderException,RemoteEx-ception;public void deleteCourse(String course_id)throws RemoteExcep-tion;}4.1.3 Client获取Home Interface和Remote Interface的参考方式,我们使用JNDI机制来获取Home接口和Remote接口的对象参考。
4.1.4定义回调方法4.1.5实现远程数据库的连接使用JNDI机制,通过数据库的JNDI名称java:comp/env/jdbc/StudentCourseDB来连接后台数据库。4.1.6 Session Bean方法实现//定义变量public StudentHome sHome;public EnrollHome eHome;public String student_id;public String name;//回调方法实现public void ejbCreate(String student_id)throws CreateException{try{Student student=sHome.findByPrimaryKey(student_id);name=student.getName();}catch( e){throw new CreateException("Student:"+student_id+"notfound in StudentTBL!");}catch(Exception e){throw new EJBException(e.getMessage());}this.student_id=student_id;}//商业方法实现public void enroll(ArrayList courseItems){Enroll enroll=null;try{enroll=eHome.findByPrimaryKey(student_id);}catch(Exception e){}try{if(enroll!=null){enroll.replaceCourseItems(courseItems);}else{eHome.create(student_id,courseItems);}}catch(Exception e){throw new EJBException(e.getMessage());}}public void unenroll(){try{Enroll enroll=eHome.findByPrimaryKey(student_id);enroll.remove();}catch(Exception e){throw new EJBException(e.getMessage());}}//涉及到对两张表的删除。
public void deleteStudent()throws FinderException{try{Enroll enroll=eHome.findByPrimaryKey(student_id);Student student=sHome.findByPrimaryKey(student_id);enroll.remove();student.remove();}catch(Exception e) {throw new EJBException(e.getMessage());}}public void deleteCourse(String course_id){PreparedStatement ps=null;try{getConnection();String deleteStatement="delete from EnrollTBL"+"wherestudent_id=?and course_id=?";ps=con.prepareStatement(deleteStatement);ps.setString(1,student_id);ps.setString(2,course_id);ps.executeUpdate();}catch(Exception e){thrownew EJBException(e.getMessage());}finally{try{ps.close();con.close();}catch(Exception e){throw new EJBException(e.getMessage());}}}4.2 Entity Bean的设计我们以关联表(EnrollTBL)对应的实体Bean为例进行说明,它涉及到两个表的一对多关系。4.2.1定义Home接口4.2.2定义Remote Interfacepublic interface Enroll extends EJBObject{//---------------//这是一个基于Entity Bean的Remote接口,这个Entity Bean是基于//Bean-Managed Persistence的Entity Bean,用来对EnrollTBL表进行操作//--------------------------public ArrayList getCourseItems()throws RemoteException;public String getStudent_id()throws RemoteException;public void replaceCourseItems(ArrayList courseItems)throwsRemoteException;}4.2.3变量定义public String student_id;public ArrayList courseItems;4.2.4增加数据记录实现public String ejbCreate(String student_id,ArrayList courseItems)throws 。
2.求毕业设计及论文“基于Java的学生信息管理系统的设计与实现”
仅仅给你个参考 //Java Group Project_StudentManagement源码 //NetBeans IDE 6.5 环境 package studentmanager; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.util.*; class Student implements java.io.Serializable{ String number,name,specialty,grade,borth,sex; public Student(){}; public void setNumber(String number){ this.number=number;} public String getNumber(){ return number;} public void setName(String name){ this.name=name;} public String getName(){ return name;} public void setSex(String sex){ this.sex=sex;} public String getSex(){ return sex;} public void setSpecialty(String specialty){ this.specialty=specialty;} public String getSpecialty(){ return specialty;} public void setGrade(String grade){ this.grade=grade;} public String getGrade(){ return grade;} public void setBorth(String borth){ this.borth=borth;} public String getBorth(){ return borth;} } public class StudentManager extends JFrame{ JLabel lb=new JLabel("录入请先输入记录,查询、删除请先输入学号,修改是对查询" + "内容改后的保存!"); JTextField 学号,姓名,专业,年级,出生; JRadioButton 男,女; ButtonGroup group=null; JButton 录入,查询,删除,修改,显示; JPanel p1,p2,p3,p4,p5,p6,pv,ph; Student 学生=null; Hashtable 学生散列表=null; File file=null; FileInputStream inOne=null; ObjectInputStream inTwo=null; FileOutputStream outOne=null; ObjectOutputStream outTwo=null; public StudentManager(){ super("学生基本信息管理系统"); 学号=new JTextField(10); 姓名=new JTextField(10); 专业=new JTextField(10); 年级=new JTextField(10); 出生=new JTextField(10); group=new ButtonGroup(); 男=new JRadioButton("男",true); 女=new JRadioButton("女",false); group.add(男); group.add(女); 录入=new JButton("录入"); 查询=new JButton("查询"); 删除=new JButton("删除"); 修改=new JButton("修改"); 显示=new JButton("显示"); 录入.addActionListener(new InputAct()); 查询.addActionListener(new InquestAct()); 修改.addActionListener(new ModifyAct()); 删除.addActionListener(new DeleteAct()); 显示.addActionListener(new ShowAct()); 修改.setEnabled(false); p1=new JPanel(); p1.add(new JLabel("学号:",JLabel.CENTER)); p1.add(学号); p2=new JPanel(); p2.add(new JLabel("姓名:",JLabel.CENTER)); p2.add(姓名); p3=new JPanel(); p3.add(new JLabel("性别:",JLabel.CENTER)); p3.add(男); p3.add(女); p4=new JPanel(); p4.add(new JLabel("专业:",JLabel.CENTER)); p4.add(专业); p5=new JPanel(); p5.add(new JLabel("年级:",JLabel.CENTER)); p5.add(年级); p6=new JPanel(); p6.add(new JLabel("出生:",JLabel.CENTER)); p6.add(出生); pv=new JPanel(); pv.setLayout(new GridLayout(6,1)); pv.add(p1); pv.add(p2); pv.add(p3); pv.add(p4); pv.add(p5); pv.add(p6); ph=new JPanel(); ph.add(录入); ph.add(查询); ph.add(修改); ph.add(删除); ph.add(显示); file=new File("学生信息.txt"); 学生散列表=new Hashtable(); if(!file.exists()){ try{ FileOutputStream out=new FileOutputStream(file); ObjectOutputStream objectOut=new ObjectOutputStream(out); objectOut.writeObject(学生散列表); objectOut.close(); out.close(); } catch(IOException e){} } Container con=getContentPane(); con.setLayout(new BorderLayout()); con.add(lb, BorderLayout.NORTH); con.add(pv, BorderLayout.CENTER); con.add(ph, BorderLayout.SOUTH); (EXIT_ON_CLOSE); setBounds(100,100,600,300); setVisible(true); } public static void main(String[] args) {new StudentManager();} class InputAct implements ActionListener{ public void actionPerformed(ActionEvent e){ 修改.setEnabled(false); String number=""; number=学号.getText(); if(number.length()>0){ try{ inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); 学生散列表=(Hashtable)inTwo.readObject(); inOne.close(); inTwo.close(); } catch(Exception ee){System.out.println("创建散列表出现问题!");} if(学生散列表.containsKey(number)){ String warning="该生信息已存在,请到修改页面修改!"; JOptionPane.showMessageDialog(null,warning,"警告", JOptionPane.WARNING_MESSAGE); }//end if1 else{ String m="该生信息将被录入!"; int ok=JOptionPane.showConfirmDialog(null,m,"确认", JOptionPane.YES_NO_OPTION,JOptionPane.INFORMATION_MESSAGE); if(ok==JOptionPane.YES_OPTION){ String name=姓名.getText(); String specialty=专业.getText(); String grade=年级.getText(); String borth=出生.getText(); 。
3.关于一个JAVA开发的学员管理系统的毕业论文
本套学籍管理系统毕业论文,由JAVA开发,Access数据库,其中论文26页,1.2万字 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
学生档案管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,学生档案管理系统能够为用户提供充足的信息和快捷的查询手段。 本系统是根据现代化校园的发展而设计的基于J2SE的学生档案管理系统,本系统可以方便学校对学生的信息管理、以及家长来学校查找学生。
实现全校学生信息在线查询。对新来的学员信息进行信息录入。
由于学员年龄,政治面貌等情况在变动,可以实现信息修改,及时调整学员的基本情况,本系统实现了,添加信息,修改信息,信息查询,删除信息功能。提高了学校管理学员信息的准确性好高效性。
关键字 J2SE 在线查询 添加信息,修改信息,信息查询,删除信息功能 Student records management system As science and technology continue to improve, computer science increasingly mature, and its powerful functions for the people to deeply understand that it has entered human society in various fields and is playing an increasingly important role. Student records management system is an essential part of an education unit, its contents for schools, policy makers and managers is vital that students file management system to provide users with adequate information and efficient means enquiries. The system is based on the development of modern campus designed for J2SE students records management system, the system allow the school to students of information management, as well as parents to the school to identify students. Achieving school students information online enquiries. Information on the new information to the trainees entered. As students age, changes in the political landscape, and the information can be modified to achieve the timely adjustment of the basic trainees, the system achieved, add information, modify information, information enquiries, delete information functions. Improve the accuracy of school information management trainees good efficient. Key words : Online enquiries added information, modify information, information enquiries, delete information functions 由【 /46-1/1104.htm。
6.计算机jsp java毕业设计有哪些题目可以参考
JSP001网上拍卖平台系统
JSP002学生考试成绩分析java
JSP003网站流量统计
JSP004计算机等级考试查询系统JSP+JDBC.
JSP005网络远程作业处理系统
JSP006网上书店售书系统
JSP007房屋租赁管理信息系统JDBC
JSP008基于JSP的学生信息管理系统
JSP009教师档案管理系统
JSP010办公自动化管理系统
JSP011机房上机收费管理系统
JSP012网上选课系统
JSP013企业人事管理系统
JSP014CD销售管理系统
JSP015小区物业管理
JSP016自动排课系统
JSP017学生学籍管理系统
JSP018网上论坛
java论坛管理系统,包括论文和程序
java图书管理系统毕业设计+源码
Java游戏设计打飞机程序+论文
java作业管理系统
java五子棋的开发
JAVA论坛管理数据库开发
更多jsp java毕业设计题目:
转载请注明出处众文网 » java学生选课系统毕业论文(学生选课系统论文)