精华内容
下载资源
问答
  • PAGE 8 Java学生管理系统 实训报告 学 号 姓 名 班 级 指导老师 项目计划 项目名称学生信息管理系统 实训地点 3小组成员 系统总体设计 1需求分析 学生信息管理系统是对学生的个人信息课程信息成绩信息以信息化的方式...
  • JAVA数据库学生管理系统实训报告》由会员分享,可在线阅读,更多相关《JAVA数据库学生管理系统实训报告(43页珍藏版)》请在人人文库网上搜索。1、实训报告实训名称:学生成绩管理系统实训系(部):软件与艺术学院专业...

    《JAVA数据库学生管理系统实训报告》由会员分享,可在线阅读,更多相关《JAVA数据库学生管理系统实训报告(43页珍藏版)》请在人人文库网上搜索。

    1、实训报告实训名称:学生成绩管理系统实训系(部):软件与艺术学院专业班级:网络L1301学生姓名:学 号:13173120102Word专业资料指导教师:戎小群完成日期:2015/1/20南京铁道职业技术学院目录31实训概述3装2 Java访问并处理数据库的课题描述 32.1课题简介32.2模块简介42.3数据库结构设计42.4系统功能层次图 7订3系统模块的详细设计 73.1登录模块设计73.2管理员模块设计83.3学生模块设计 104程序运行与测试 .1.1线5实训总结39Java访问并处理数据库的设计与实现1实训概述南京铁道职业技术学院浦口校区 2013级网络L1301班于大二上学期组织 。

    2、了为期一周的Java实训,本次实训的课题是“学生成绩管理系统”。通过综合 实训,掌握运用Java语言基本知识和技能、 JAVA的基本语法与JDBC数据库 技术的应用;进一步熟悉 Oracle数据库的数据库管理(数据库的创建、应用)。 表的创建、修改、删除,约束及关系等、数据的查询处理(insert、update、delete、select语句等技术。2 Java访问并处理数据库的课题描述2.1 课题简介经过分析,我们使用Java开发工具,利用其提供的各种面向对象的开发工具, Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移。

    3、动电话和互联网,同时拥有 全球最大的开发者专业社群。 使用的数据库是Oracle,Oracle数据库功能强大, 学习起来也不难,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。通过实训,我们掌握运用Java语言知识和技能,运用JAVA的基本语法与 JDBC数据库技术的应用,完成对甲骨文数据库的数据库管理、例如表的设计(表 的创建、修改、删除,字段的默认值、约束及关系等)、数据的查询处理(insert、 update、delete、select语句的应用)等技术;并能结合数据库应用技术和jdbc 进行小型数据库管理系统的开发。2.2 模块简介管理员模块功能需求:管理。

    4、员身份登陆系统后,可以对学生信息进行添加、修改和查询等操作,对学生进行添加、修改和查询功能操作,还可以修改管理员的登录密码。学生模块功能需求:学生信息管理系统中需要在学生登录或验证身份后,可以自行完成学生个人信息的查询,也可以进行修改和删除个人信息、修改学生密码等操作。2.3 数据库结构设计数据表设计定义每个表的数据类型以及字段限制,使数据库达到一定的完整性.每个表的 物理设计如下:1. 表admin保存用户的个人信息用户信息表主要是用来保存管理员用户的基本信息,包括管理员的ID和管理 员的登录密码,只有符合这两个字段的格式要求,才能登录成功,结构表如下:表4-2管理员信息表字段名类型空值约束。

    5、条件管理员IDnumber(10)not null主键登录密码varchar2(10)not null2. 表student保存学生基本信息,结构表如下:表4-5学生信息表字段名类型空值约束条件学号number(10)not null主键姓名varchar2(20)not null性别varchar2 (3)年龄nu mber(2)登录密码varchar2(10)not null逻辑结构是独立于任何一种数据模型的信息结构。 逻辑结构的任务是把概念 结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相 符合的逻辑结构,并对其进行优化。流程图层次设计图的格式如下所示:开始选择要。

    6、实现的按钮1添加2查询3删除结束图1管理员对学生信息管理系统局部E-R图数据流图是结构化系统分析的主要工具,它表示了系统内部信息的流向,并表现系统的逻辑处理功能。2.4系统功能层次图学生信息管理系统是一个典型的数据库开发应用程序,系统是和数据库相结 合.,进入系统,有两个用户,分别是普通学生、和管理员。学生信息管理系统登陆管理图2学生信息管理系统功能层次图3系统模块的详细设计本学生信息管理系统主要模块,即用户登录模块、用户操作模块。用户操作 模块又分为学生操作模块、管理员操作模块。下面将显示系统的主要功能模块。3.1登录模块设计学生信息管理系统前台登陆模块可以勾选管理员身份信息,代表以管理员身。

    7、 份进入。不勾选即为普通学生身份登录。3.2管理员模块设计学生信息管理系统前台登陆模块只有一个登陆窗口分为学生、管理员两个级别登陆,系统在后台程序有自动限制设置,可以自动识别登陆者的限制。其系统登 陆模块算法如下:1判断是否勾选管理员身份;2输入用户名和密码;3判断用户名和密码是否匹配;(1)若提示输入信息错误,则重新输入;(2 )否则以管理员身份进入系统。添加学生信息功能学生信息管理系统对学生信息的管理非常重要,其中对信息的录入是系统最 为关键的地方,以往我们管理学生信息的时候都是手工操作,而随社会不断发展的 今天计算机的应用已全部取带了手工操作的方法,利用计算机可以方便的录入各 类信息,进。

    8、行高效的管理学生信息的录入就是利用计算机通过程序读入数据库 , 录入学生信息模块算法描述如下:1. 管理员登陆后,录入学生信息管理界面;2. 单击增加学生按钮,键入学生ID ;3. 当录入学号已经存在,提示该学生信息已存在,请重新输入;4. 否则学生信息添加成功。查找学生信息功能学生信息管理系统对查询学生信息管理也很重要,方法和增添学生信息类 似,也同样是利用计算机通过程序读入数据库,查询学生信息模块算法描述如下:1. 管理员登陆后,点击查询学生;2. 当录入学生信息不存在时,提示没有该学生信息,重新输入;3. 当录入学生ID已经存在,提示该学生信息存在,显示学生信息;删除学生信息功能学生选课。

    9、模块主要是给删除学生信息的功能,本功能主要由管理员进入数据 库,然后学生管理系统,其删除学生信息模块算法描述如下:1 管理员成功登陆;2 点击删除学生;3 输入学生相关信息,如学生ID ;4. 如该学生不存在,则提示信息不存在,否则删除该学生。修改学生信息功能此信息修改模块主要是给学生和管理员建立信息库,方便管理员查询操作,信 息修改模块算法描述如下:1 管理员成功登陆;2 点击修改学生信息;3 输入学生的编号;4 编号为空,重新输入;5 .输入不为数字,重新输入;6 .输入正确,进入修改页面进行相关修改。3.3学生模块设计查看学生个人信息功能学生信息管理系统方便了学生查看自己的学籍信息 ,如。

    10、果学校由于疏忽输入 了错误信息,自己可以查看并且及时通知学校管理员,及时修改,减少不必要的麻 烦此信息查询模块主要是方便学生查询操作,信息查询模块算法描述如下:1学生成功登陆;2 点击查询学生信息;3 输入学生的编号;4 编号为空,重新输入;5 .输入不为数字,重新输入;6 .输入正确,进入信息查询页面进行相关修改。修改学生登录密码功能学生可以进入学生管理系统进行登录密码的修改1.学生成功登陆;2 .单击修改密码;3 .输入旧密码、新密码确认后,若旧密码正确则修改成功,则提示重新输入旧密码;4 .提交修改完成修改。4程序运行与测试package com.briup.view;import ja。

    11、va.awt.*;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import javax.swi ng.*;import com.briup.bea n. Adm in;import com.briup.bea n. Stude nt;import com.briup.dao.Admi nDao;/登录窗口import com.briup.dao.Stude ntDao;public class Log inF rame exte nds JFrameprivate JCheckBox c;priv。

    12、ate JButton loginBtn,resetBtn;private JTextField n ame In put;private JPasswordField pwd In put;private Adm in Dao adm in Dao=new Adm in Dao();private Stude ntDao stude ntDao=new Stude ntDao();public Logi nF rame()/初始化窗口本身Dimension d=T oolkit.getDefaultToolkit().getScreenSize();int width=d.width;int。

    13、 height=d.height;/设置坐标为400-400 宽为300高为200setBou nds(width/2-200, height/2-100, 400, 200); setTitle(登录界面);/设置窗口为不可缩放setResizable(false);setDefaultCloseOperatio n( JFrame.EXIT_ON_CLOSE);in it();eve nt();private void eve nt() /为按钮添加事件处理resetBtn.addMouseListener(new MouseAdapter() /监听鼠标单击事件Overridepubli。

    14、c void mouseClicked(MouseEve nt e) System.exit(0); );log inBtn .addMouseListe ner(new MouseAdapter() Overridepublic void mouseClicked(MouseEve nt e) /获取用户输入的值Stri ng username=n ameI nput.getText().trim();Stri ng password=pwd In put.getText().trim();/判断是否勾选了管理员多选框if(c.isSelected()/从管理员表中检测数据Admin a=a。

    15、dmi nDao.fi ndAdmi nByName(username);/如果a不为null说明用户输入的管理员是存在的if(a=nu ll)/说明此管理员不存在JOptio nPan e.showMessageDialog( nu II,用户名或密码不正确,提示信息,JOptionPane.WARNING_MESSAGE);else/管理员存在 /密码正确/密码不正确if(a.getPassword().equals(password)/后台保存的密码和用户从客户端输入的密码是一 样的 JOptionPane.showMessageDialog(null,登录成功,提示信息,JOptio 。

    16、nPan e.WARNING_MESSAGE);/关闭当前的登录窗口Log inF rame.this.dispose();/开启管理员界面new Adm inF rame(a.getUser name().go();elseJOptio nPa ne.showMessageDialog( null,用户名或密码不正确,提示信息,JOptionPane.WARNING_MESSAGE);else/从普通用户表中检测数据Stude nts=stude ntDao.fi ndStude ntByStude ntld(user name);if(s=null)JOptio nPan e.showMe。

    17、ssageDialog( nu II, 密码不正确,提示信息,JOptionPane.WARNING_MESSAGE);else if(s.getPassword().equals(password)JOptio nPan e.showMessageDialog( null, 功,提示信息,JOptionPane.WARNING_MESSAGE);Log inF rame.this.dispose();new Stude ntFrame(s, null).go();elseJOptio nPan e.showMessageDialog( null, 或密码不正确,提示信息,JOptionPan。

    18、e.WARNING_MESSAGE); );public void in it()/初始化窗口内部的组件Container contain er=getC onten tPa ne();用户名或登录成用户名/组件放到哪个位置由用户自己来制定contain er.setLayout (n ull);JLabel title=new JLabel( 用户登 录);title.setFo nt(new Fon t(楷体,0,32);title.setBou nds(110,5,200,33);contain er.add(title);JLabel nameLabel=new JLabel( 用户名。

    19、:);nameLabel.setBounds(70, 55, 60, 30);contain er.add( nameLabel);n ame In put=new JTextField();name In put.setBou nds(130,60,150,20);/设置提示内容nameInput.setToolTipText(”此处写登录用户名);contain er.add( name In put);JLabel pwdLabel=new JLabel( 密 码:);pwdLabel.setBounds(70, 80, 60, 30);contain er.add(pwdLabel);。

    20、pwd In put=new JPasswordField();pwdI nput.setBou nds(130,85,150,20);pwdInput.setToolTipT ext(此处写密码);contain er.add(pwd In put);c=new JCheckBox( 管理员);c.setBounds(68, 115, 70, 30);contain er.add(c);log in Bt n=new JButto n(”登录);logi nBt n. setBou nds(140, 115, 60, 30);contain er.add(logi nBtn);resetBt。

    21、 n=n ew JButto n(取消);resetBt n. setBou nds(215, 115, 60, 30);con tai ner.add(resetBt n);public void go()setVisible(true); public static void main( Stri ng args) new Logi nF rame().go();package com.briup.dao;import java.sql.C onn ecti on;import java.sql.PreparedStateme nt;import java.sql.ResultSet;im。

    22、port com.briup.bea n. Adm in;import com.briup.util.C onn ectio nF actory;/和管理员相关的数据库操作public class Adm in Dao /根据用户名查找指定管理员public Adm in fin dAdm in ByName(Stri ng user name)Adm in adm in=n ull;Conn ecti on conn=n ull;PreparedStateme nt pstat=n ull;ResultSet rs=null;try conn=Conn ectio nF actory.get。

    23、C onn ectio n();Stri ng sql=select username,password from admin whereuser name=?;pstat=c onn .prepareStateme nt(sql);pstat.setStri ng(1, user name);rs=pstat.executeQuery();/如果查不到任何数据下方while内部的代码不会执行while(rs. next()/如果能执行到这个地方说明指定管理员是存在的adm in=new Admi n();admi n.setUsername(username);admi n.setPassw。

    24、ord(rs.getStri ng(password); catch (Excepti on e) / TODO: han dle exceptione.pri ntStackTrace();fin allyConnectionF actory.close(rs, pstat, conn); return admi n;public static void main( Stri ng args) Admin Dao().fi ndAdmi nByName(admi).getPassword();package com.briup.view;import java.awt.C ontainer;。

    25、import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import javax.swi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import java。

    26、x.swi ng.JPa nel;import javax.sw in g.JT extField;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;/添加学生public class AddStude ntFrame exte nds JFrameprivate Adm inF rame admi n;private JPa nel p1,p2,p3,p4,p5;private JLabel idLbl, nameLbl,ageLbl,ge nderLbl;private JTextField idln put。

    27、, name In put,age In put,ge nderl nput;private JButton submitBtn,cancelBtn;private Stude ntDao stude ntDao=new Stude ntDao();public AddStude ntFrame(Adm inF rame admi n)this.admi n=admi n;setTitle(添加学生);setResizable(false);setBou nds(400, 100, 300, 400);in it();eve nt();private void in it()Container。

    28、 contain er=getC onten tPa ne();contain er.setLayout (new GridLayout(5, 1);p1= new JPa nel();p1.setLayout (n ull);idLbl=new JLabel(学籍号:);idLbl.setBou nds(50, 30, 50, 20);idln put=new JTextField();idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idI nput);contain er.add(p1);p2=new JPa nel();p。

    29、2.setLayout (n ull);nameLbl=new JLabel( 姓名:);nameLbl.setBounds(50, 10, 50, 20);n ame In put=new JTextField();nameInput.setBounds(100, 10, 120, 20);p2.add( nameLbl);p2.add( name In put);contain er.add(p2);p3=new JPa nel();p3.setLayout (n ull);ageLbl=new JLabel(年龄:);ageLbl.setBounds(50, 10, 50, 20);ag。

    30、e In put=new JTextField();age In put.setBou nds(100, 10, 120, 20);p3.add(ageLbl);p3.add(age In put);contain er.add(p3);p4=new JPa nel();p4.setLayout (n ull);genderLbl=new JLabel(性别:);genderLbl.setBounds(50, 10, 50, 20);gen derI nput=new JTextField();gen derI nput.setBou nds(100, 10, 120, 20);p4.add(。

    31、ge nderLbl);p4.add(ge nderl nput);contain er.add(p4);p5=new JPa nel();p5.setLayout (n ull);submitBt n=new JButto n(”确定);submitBtn.setBounds(130, 10, 60, 20); can celBt n=new JButto n(”取消);can celBt n. setBou nds(195, 10, 60, 20);p5.add(submitBt n);p5.add(ca ncelBt n);contain er.add(p5);private void 。

    32、eve nt()/设置当前窗口的关闭操作/此处可自定义窗口关闭时所作操作this.addWi ndowListe ner(new Win dowAdapter() public void win dowClos in g(Wi ndowEve nt e) /将之前传递过来的那个管理窗口设置为可用if(admi n!=n ull)admi n.setE nabled(true); /释放当前窗口AddStude ntFrame.this.dispose(); );/取消按钮的操作 can celBt n.addMouseListe ner(new MouseAdapter() Overridep。

    33、ublic void mouseClicked(MouseEve nt e) if(admi n!=n ull)admi n.setE nabled(true);AddStude ntFrame.this.dispose(); );/确定按钮的操作 submitBt n. addMouseListe ner(new MouseAdapter() public void mouseClicked(MouseEve nt e) /接受用户在客户端输入的值/正则表达式String studentld=idInput.getText().trim();Stri ng stude ntName=n am。

    34、eI nput.getText().trim();Stri ng age=agel nput.getText().trim();String gen der=ge nderl nput.getText().trim();Stude nt s=new Stude nt();/注意别输入了已存在的学籍号s.setStude ntid(Lon g.parseL on g(stude ntld);s.setStude ntName(stude ntName);s.setPassword(stude ntld);s.setAge(l nteger.parse In t(age);s.setGe nder。

    35、(ge nder);/将获得值封装成Student对象调用指定方法存储到数据库boolea n result=stude ntDao.addStude nt(s);if(result)JOptio nPa ne.showMessageDialog( null,添加成功!);if(admi n!=n ull)admi n.setE nabled(true);AddStude ntFrame.this.dispose();elseJOptionPane.showMessageDialog(null,添加失败请检查学籍号是否已存在!););public void go()setVisible(tru。

    36、e);public static void main( Stri ng args) new AddStude ntFrame( null).go();广圈 双迎,I 1=3 I回I_邑_添加学生I f消息确走package com.briup.view;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import jav。

    37、a.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.swi ng.JButt on;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JPa nel;import javax.sw in g.JT extField;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;public class Fin dStude ntFrame exte nds。

    38、 JFrameprivate Stude ntDao stude ntDao=new Stude ntDao();private JLabel idLbl, nameLbl;private JTextField idln put ,n ame In put;private JButt on fin dBt n,ca ncelBt n;public Fin dStude ntFrame()setTitle(查找学生);setBounds(405, 100, 200, 390);setResizable(false);in it();eve nt();private void in it()Con。

    39、tainer contain er=getC onten tPa ne();container.setLayout(new GridLayout(3, 1);JPanel p1= new JPanel();pl.setLayout (n ull);idLbl=new JLabel(学籍号:); idLbl.setBou nds(20, 55, 50, 20); idln put=new JTextField();idlnput.setBounds(73, 55, 100, 20);p1.add(idLbl);p1.add(idl nput);contain er.add(p1);JPa nel。

    40、 p2=new JPan el();p2.setLayout (n ull);nameLbl=new JLabel(姓名:);nameLbl.setBounds(20, 55, 50, 20);n ame In put=new JTextField();nameInput.setBounds(73, 55, 100, 20);p2.add( nameLbl);p2.add( name In put);contain er.add(p2);JPanel p3=new JPan el();p3.setLayout (n ull);fin dBt n=n ew JButto n(”搜索);fin d。

    41、Bt n.setBou nds(60,30,60,20);can celBt n=new JButto n(”取消);can celBt n. setBou nds(123,30,60,20);p3.add(fi ndBt n);p3.add(ca ncelBt n);contain er.add(p3); private void eve nt()this.addWi ndowListe ner(new Win dowAdapter() public void win dowClos in g(Wi ndowEve nt e) Fin dStude ntFrame.this.dispose(。

    42、););fin dBt n. addMouseListe ner(new MouseAdapter() public void mouseClicked(MouseEve nt e) Stri ng idStr=idl nput.getText().trim();Stri ng n ameStr=n ameI nput.getText().trim();Long stude ntld=null;Stri ng stude ntName=nu II;if(idStr.length()!=0)/ 如果 id 有值stude ntld=L on g.parseL on g(idStr);if(n a。

    43、meStr.le ngth()!=0)stude ntName=n ameStr;Liststude nts=stude ntDao.fi ndStude ntByCo nditi on s(stude ntId, stude ntName);/将查询的结果传递给显示界面); new ShowResultFrame(stude nts).go()public void go()setVisible(true); public static void main( Stri ng args) new Fin dStude ntFrame().go();/System.out.println( .t。

    44、rim().length();正则表达式s/System.out.pri ntln( );/System.out.pri ntl n(1 2 .replaceAII(s, ).le ngth();盒肉结弄package com.briup.view;import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi nd。

    45、owAdapter;import java.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.sw in g.BorderFactory;import javax.swi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;public class S。

    46、howResultFrame exte nds JFrame private List stude nts;private Stude ntDao stude ntDao=new Stude ntDao();public ShowResultFrame(List stude nts) setTitle(查询结果);if (stude nts.size() 0) setBounds(100, 100, 300, 60 * students.size(); else setBou nds(100, 100, 300, 150);this.stude nts = stude nts;in it();。

    47、private void in it() Container container = getCo nten tPa ne();container.setLayout(new GridLayout(students.size(), 2);/遍历集合将集合中的每一条数据显示到当前容器里面if (stude nts.size() = 0) con ta in er.add( new JLabel(暂无记录!); else for (Stude nt stu : stude nts) JLabel l = new JLabel(stu.getStude ntName();final Stude nt 。

    48、s = stu;l.addMouseListe ner(new MouseAdapter() public void mouseClicked(MouseEve nt e) if(e.getClickCou nt()=2);new Stude ntFrame(s, n ull).go();LsetBorder(BorderFactory.createL in eBorder( new Color(253, 253,187);JButton b = new JButto n(”删除);final Long studentld = stu.getStudentid();b.addMouseList。

    49、e ner(new MouseAdapter() public void mouseClicked(MouseEve nt e) 确定int choose=JOptionPane.showConfirmDialog(null, 删除?);/判断用户点击的是否是确定按钮if(choose=JOptio nPa ne.OK_OPTION)ShowResultFrame.this.dispose();stude nts.remove(s);new ShowResultFrame(stude nts).go();stude ntDao.deleteStude ntByld(stude ntId); )。

    50、;contain er.add(l);contain er.add(b); private void eve nt() this.addWi ndowListe ner(new Win dowAdapter() public void win dowClos in g(Wi ndowEve nt e) ShowResultFrame.this.dispose(); ); public void go() setVisible(true); public static void main( Stri ng args) #裁号:|20422:3。1們仃 I蛀舟;I芦志适package com.br。

    51、iup.view;import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import javax.swi ng.JButt on;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import javax.swi ng.JPa nel。

    52、;import javax.swi ng.JPasswordField;import javax.sw in g.JT extField;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;public class Stude ntFrame exte nds JFrameprivate JPa nel p1,p2,p3,p4,p5,p6;private JLabel idLbl,pwdLbl, nameLbl,ageLbl,ge nderLbl;private JTextField idln put, name 。

    53、In put,age In put,ge nderl nput;private JPasswordField pwd In put;private Stude nt stude nt;private JButt on modifyPwdBt n,submitBt n,exitBt n;private String n Password;private Stude ntDao dao=new Stude ntDao();/student 记录当前登录的用户 nPassword记录修改以后的密码public Stude ntFrame(Stude nt s,Stri ng n Password)t。

    54、his.stude nt=s;this .n Password=nPassword;/初始化的时候获取当前用户的密码setTitle(学生信息);setResizable(false);setBounds(400, 100, 300, 400);/默认关闭行为setDefaultCloseOperatio n( JFrame.EXIT_ON_CLOSE);in it();eve nt();public void go()setVisible(true);private void in it()Container contain er=getC onten tPa ne();contain er。

    55、.setLayout (new GridLayout(6, 1);p1= new JPa nel();p1.setLayout (n ull);idLbl=new JLabel(学籍号:);idLbl.setBou nds(50, 30, 50, 20);idI nput=new JTextField();/需要将数字类型转换为字符串类型+/字符串类型-数字类型parseInt parseLongidl nput.setText(stude nt.getStude ntid()+);/设置学籍号不可修改/idl nput.setE nabled(false);idl nput.setEdita。

    56、ble(false);/idl nput.setDisabledT extColor( new Color(255, 255, 255);idl nput.setDisabledT extColor(Color.black);idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idl nput);contain er.add(p1);p2=new JPa nel();p2.setLayout (n ull);pwdLbl=new JLabel(密 码:);pwdLbl.setBou nds(50, 30, 50, 20);pwd I。

    57、n put=new JPasswordField();if(n Password=n ull)/代表从登录界面过来的pwd In put.setText(stude nt.getPassword();else/如果有新密码说明是从修改密码那个窗口跳回来的pwdl nput.setText( nPassword);pwd In put.setEditable(false);pwdl nput.setDisabledTextColor(Color.black);pwdlnput.setBounds(100, 30, 120, 20); modifyPwdBt n=new JButto n(”修改)。

    58、;modifyPwdBt n.setBou nds(225, 30, 60, 20); p2.add(pwdLbl);p2.add(pwd In put);p2.add(modifyPwdBt n);contain er.add(p2);p3=new JPa nel();p3.setLayout (n ull);nameLbl=new JLabel(姓 名:);nameLbl.setBounds(50, 30, 50, 20);n ame In put=new JTextField();n ameI nput.setText(stude nt.getStude ntName();name In。

    59、 put.setBou nds(100, 30, 120, 20);p3.add( nameLbl);p3.add( name In put);contain er.add(p3);p4=new JPa nel();p4.setLayout (n ull);ageLbl=new JLabel(年龄:);ageLbl.setBou nds(50, 30, 50, 20);age In put=new JTextField();age In put.setText(stude nt.getAge()+);agelnput.setBounds(100, 30, 120, 20);p4.add(ageLbl);p4.add(age In put);contain er.add(p4);p5=new JPa nel();p5.setLayout (n ull);gen derLbl=new JLabel(性别:);genderLbl.setBounds(50, 30, 50, 20);gen derI nput=new JTextField();gen derI nput.setText(stude nt.getGe nder();g。

    展开全文
  • 实训报告 实训名称 学生成绩管理系统实训 系 部 软件与艺术学院 专业班级 XXXXXXXXX 学生姓名 XX 学 号 XXXXXXXXX 指导教师 XXXXXXXXX 完成日期 XXXXXXXXXXXX XXXX 职业技术学院 目 录 目 录 3 1 实训概述 3 2 Java ...
  • Word Word专业资料 实训报告 实训名称 学生成绩管理系统实训 系部: 软件与艺术学院 专业班级 网络L1301 学生姓名 学 号 13173120102 指导教师 戎小群 完成日期 2015/1/20 南京铁道职业技术学院 TOC \o "1-5" \h \z ...
  • java超市管理系统实训报告,通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。
  • 1.1课程设计的目的通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。1.2课程设计...

    1.1

    课程设计的目的

    通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据

    库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实

    用的数据库系统。

    1.2

    课程设计的背景和意义

    1.2.1

    课程设计的背景

    20

    世纪

    90

    年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧

    的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。

    超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超

    市的管理与计算机结合起来,从而超市管理系统应运而生。依靠现代化的计算机信息处理技

    术来管理超市,节省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、

    销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超

    市经营管理效率。

    1.2.2

    课程设计的意义

    数据库课程设计

    的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。

    为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让

    学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学

    生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持

    有了深刻的理解,实践性教学取得了良好效果。

    1.3

    课程设计环境

    展开全文
  • 1.1课程设计的目的 通过本次课程设计使学生能够全面深刻地掌握数据库系统的设计流程根据在数据 库原理课程中所学到的数据库理论知识结合某个具体的实际需求最终开发出一个较为 用的数据库系统 1.2课程设计的背景和...
  • 1,知道了Java数据库应用怎样连接,还有关于mysql数据库,在写代码之前,我们要先在lib里面添加连接MySQL数据库的jar包,作为库添加到项目里(Add as Library…)。然后在创建实体类的时候,名称要和mysql数据库里面...

    1,知道了Java数据库应用怎样连接,还有关于mysql数据库,在写代码之前,我们要先在lib里面添加连接MySQL数据库的jar包,作为库添加到项目里(Add as Library…)。然后在创建实体类的时候,名称要和mysql数据库里面的名称一样。在写这四个实体类代码时,除了声明部分要手写以外,其他的可以按alt+insert再选择set和get生成,相比刚开始学java的时候一个一个敲要来的快啊。

    2,在测试类里面其实很多代码都是差不多的,只要把测试名换成相应的修改名,再适当的修改测试代码就可以了。比如测试插入类代码,我们可以命名为testinser,在这里要注意的是每个单词的首字母要大写TestInsert。

    3,在抄写代码的同时,我们要知道肯定会抄错,就比如我的错误是一个类里面的字母写错了:
    College写成CollegeDao
    在这里插入图片描述
    它在后面的类里面就会报错,你就只能回到userdao里面找错误在这里插入图片描述
    4,在CollegeDaoImpl里面的错误是正常的在Surround With里找try/catch/finally,就可以了。还有就是在抄写代码的时候抄顺手了,就会不小心犯错,自己还找半天
    在这里插入图片描述
    最后才发现错误是自己的定义思维觉得第三个也是setString。其实是setTimestamp。还有就是忘记继承父类了。
    5,在写数据库语言的时候也会错误,就是最后多了个逗号,它就会报错,自己还找半天。
    6,,还有就是在更新学生信息的时候,因为我的数据库里面没有这个人,他的结果就是会为null。
    在这里插入图片描述
    这个不会是温馨提示:查无此人,因为我还没有写道那里。所以不会出现。

    7,在网上查找了test子包:
    这个是关于测试类的
    GUI子包:
    这个是关于图形用户界面
    dao子包
    这个是关于数据访问对象的
    说明了关于建包名称也是有要求的,规范的名称,能使我们更好的查找需要的数据。

    8,在抄写代码的过程中,会有报错,但有些报错是没有错的。因为在写另一类的时候,我们需要把上一个类里面的代码修改一下。

    展开全文
  • java小球碰撞学生信息管理系统实训报告 北京联合大学实 训 报 告课程(项目)名称: Java 程序设计实训(双语) 学 院: 师范学院 专 业: 计 算 机 班 级: 学 号: 2010 姓 名: 成 绩: 2013 年 6 月 17实训一 小球的...

    41528d3028836879cd698677c3999917.gifjava小球碰撞学生信息管理系统实训报告

    北京联合大学实 训 报 告课程(项目)名称: Java 程序设计实训(双语) 学 院: 师范学院 专 业: 计 算 机 班 级: 学 号: 2010 姓 名: 成 绩: 2013 年 6 月 17实训一 小球的碰撞试验一、实训任务与目的实训任务:使用多线程编程和图形界面的画图,编写一个或多个在长方形盒子中反弹的小球。要求:界面设计、颜色选取等可能美观。有能力的同学可以设计图形界面的操作按钮,用于改变球的颜色、反弹速度,开始和结束按钮等。本任务要求 4 节课完成。实训目的:1、掌握 Swing 图形用户界面编程以及事件处理等,掌握 java 绘图技术。2、掌握多线程编程的基本原理,能使用 Runnable、cutorService 等接口进行线程的创建、启动等工作。3、培养独立查找资料,并解决问题的能力。二、原理通过 Ball 类来进行对球的设计,有对于增加球的速度,返回球的当前速度,球球移动到边界事的处理球颜色的随机处理,球速度的随机处理等,使得运行时的界面和球的各种运动状态都能良好。每一个球都是通过一个线程来进行控制,其中还对球的碰撞进行了分析和处理,通过对线程中小球的之间距离和半径和的比较对碰撞情况做了比较好的处理,Balliards 还设定了各个全局常量,设置了小球的最小最大速度,最小最大尺寸,球的数目,窗体的宽度和长度等。三、实训内容与步骤代码如下:package shixun1;import java.awt.Color;import java.awt.Graphics;import java.util.Random;import java.util.concurrent.cutorService;import java.util.concurrent.cutors;import javax.swing.JFrame;import javax.swing.JPanel;public class Ball extends JPanel implements Runnable {int y = 200,x=70,a;Color l0=Color.YELLOW;Color l1=Color.BLACK;Color l2=Color.RED;Color l3=Color.BLUE;Color l4=Color.GREEN;public void paint(Graphics g) {super.paintComponent(g);g.setColor(l0);g.drawRect(20, 20, 360, 360);g.setColor(l1);g.fillOval(y, x, 20, 20);g.setColor(l2);g.fillOval(40, y, 20, 20);g.setColor(l3);g.fillOval(x, y, 20, 20);g.setColor(l4);g.fillOval(x, 90, 20, 20);}public void run() {while (true) {try {{if( a==0){ l0=Color.GREEN;l1=Color.CYAN;l2=Color.YELLOW;l3=Color.ORANGE;l4=Color.GRAY;Random ll= new Random();int ld=ll.nextInt(15)+1;x-=1;y += 1;Thread.sleep(ld);if(x==20)a=1;}else if(a==1){ l0=Color.RED;l1=Color.BLUE;l2=Color.RED;l3=Color.BLACK;l4=Color.PINK;Random ll= new Random();int lmb=ll.nextInt(4)+1;x+=1;y += 1;Thread.sleep(lmb);if(y==360)a=2;}else if(a==2){ l0=Color.BLUE;l1=Color.darkGray;l2=Color.WHITE;l3=Color.GREEN;l4=Color.MAGENTA;Random ll= new Random();int ld=ll.nextInt(10)+1;x+=1;y -= 1;Thread.sleep(ld);if(x==360)a=3;}else if(a==3){ l0=Color.YELLOW;l1=Color.GREEN;l2=Color.BLUE;l3=Color.RED;l4=Color.ORANGE;Random ll= new Random();int lmb=ll.nextInt(6)+1;x-=1;y -= 1;Thread.sleep(ld);if(y==20)a=0;}}} catch (InterruptedException e) {e.printStackTrace();}repaint();}}public static void main(String args[]) {Ball panel = new Ball();cutorService threadcutor = cutors.newCachedThreadPool();threadcutor.cute(panel);// create a new frame to hold the panelJFrame application = new JFrame();// set the frame to exit when it is closedapplication.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);application.add(panel); // add the panel to the frameapplication.setSize(400, 420); // set the size of the frameapplication.setVisible(true);} // end main}下面为运行时的图形界面:按钮设计代码:package shixun1;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;public class BallButton extends JFrame {JButton start, stop;Thread threadcutor;BallButton() {super(“碰撞的小球--liudan29“);final Ball ld = new Ball();this.add(ld, BorderLayout.CENTER);

    展开全文
  • Java 实训设计报告 学生管理系统 一项目需求 通过与科信学院教务人员的详细交流目标系统具备以下功能 教师客户端功能 可以更改密码 可以添加学生并要求填写学生基本信息 可以根据学号查询学生基本信息及其成绩 有...
  • Java 实训设计报告 学生管理系统 一项目需求 通过与科信学院教务人员的详细交流目标系统具备以下功能 1. 教师客户端功能 * 可以更改密码 * 可以添加学生并要求填写学生基本信息 * 可以根据学号查询学生基本信息及其...
  • 学生信息管理系统实训总结报告

    千次阅读 2019-06-25 16:21:30
    **实训目的:**让学生综合运用J2SE有关知识开发【学生信息管理系统】。主要涉及程序控制结构、面向对象编程、图形用户界面、Java数据库应用、MySQL数据库这几个方面的内容。通过本项目的开发,让学生了解系统开发的...
  • 这是这个星期Java实训的最后一天了。下个星期还剩下两天。但是我还有很多没有完成。自己应该抓紧一些了。感觉时间还长,但是却因为培训的原因导致后面的课我不能去上,只能在培训至于自己去写。所以我决定今天把所有...
  • JAVA+SQL实训报告-- 图书馆管理系统

    千次阅读 2019-12-26 09:29:23
    JAVA+SQL实训报告 题 目: 图书馆管理系统 院 (系): 专 业: 学生姓名: 学 号: 指导教师: 时 间: 摘 要 图书馆管理系统是学校管...
  • java数据库实训总结java数据库实训总结篇一:JAVA数据库学生管理系统实训报告实训报告实训名称: 学生成绩管理系统实训系 (部):专业班级:网络L1301学生姓名:刘鑫 学 号指导教师:戎小群完成日期:2015/1/20南京...
  • Java第八次实训报告

    2020-07-16 17:06:13
    Java第八次实训报告 项目(GUI学生信息管理系统) 一.创建窗口界面类 创建主界面窗口MainFrame 创建户登录窗口LoginFrame 创建户注册窗口RegisterFrame 程序改进建议 创建设置学校信息窗口SetCollegeInfoFrame 创建...
  • Java第二次实训报告

    2020-07-13 23:00:41
    Java第二次实训报告 项目(GUI学生信息管理系统) 一.创建Java项目 - 学生信息管理系统(MySQL版)V1.0 二.在项目根目录创建help、images、lib三个文件夹 三.在lib里添加MySQL数据库驱动程序包 (1)下载数据库...
  • Java第七次实训报告

    2020-07-16 17:03:26
    Java第七次实训报告 项目(GUI学生信息管理系统) 一.在net.zy.student包里创建app子包 二.在net.zy.student.app包里创建Application类 此时,三个窗口界面类还未创建,因此程序会报错:无法解析符号。 三.创建...
  • Java第四次实训报告

    2020-07-16 16:32:12
    Java第三次实训报告 项目(GUI学生信息管理系统) 一.创建数据访问接口实现类 1.在net.zy.student.dao包里创建impl子包 2.创建学校数据访问接口实现类CollegeDaoImpl package net.zy.student.dao.impl; import ...
  • Java第五次实训报告

    2020-07-16 16:41:06
    Java第五次实训报告 项目(GUI学生信息管理系统) 一.创建服务接口 1.在net.zy.student包里创建service子包,并创建四个接口 2.创建学校服务接口CollegeService package net.zy.student.service; import ...
  • Java第六次实训报告

    2020-07-16 16:55:44
    Java第六次实训报告 项目(GUI学生信息管理系统) 一.创建服务接口实现类 在net.zy.student.service包里创建impl子包,然后在里面创建四个服务接口的实现类 二.创建学校服务接口实现类CollegeServiceImpl package...
  • Java第三次实训报告

    2020-07-16 16:11:11
    Java第三次实训报告 项目(GUI学生信息管理系统) 一.创建数据访问接口 1.在net.zy.student包里创建子包dao 2.创建学校数据访问接口CollegeDao package net.zy.student.dao; /* 功能:学校数据访问接口 作者:曾源...
  • Java第一次实训报告

    2020-07-08 22:34:06
    Java第一次实训报告 项目(GUI学生信息管理系统) 一.创建数据库和表 1.利用NaviCat创建数据库student,设置字符集为utf8 1.1数据库和表的目录 2.创建学校表 2.1创建t_college表 2.2输入表记录 3.创建状态表 ...
  • 基于Java的图书馆管理系统的设计实习报告 实习报告 班级: 计算机 学号: 姓名: 一、实习单位简介 建昌营初级中学占地面积30000平方米,建筑面积5700平方米,服务范围有22个行政村,人口2.6万人。现有学生688人,16...
  • JAVA+SQL实训报告--工资管理系统(详细)

    千次阅读 热门讨论 2019-12-28 10:55:20
    实训设计报告 题 目: 工资管理系统 系 别: 信息工程系 专 业: 软件工程 学生姓名: 俞汉东 学 号: 1751300320 指导教师: 王小琼 ...
  • 编号xxxx Xx学院 综合课程设计报告 简单人事管理系统的设计与实现 学生姓名xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 指导教师 x x 所 在 系 电 子 信 息 系 所学专业 计算机科学与技术 年 级 xxxxxxxxxxxx 2014年12月 目 录 ...
  • java实训报告

    2019-07-04 16:31:26
    Java实训项目:GUI学生信息管理系统 一、功能需求 1、可设置学校信息 2、可设置状态栏信息 3、登录与注册功能 4、登录用户修改密码功能 5、对学生记录增加和修改 6、查询:按学号、姓名、班级和系部进行查询 7、删除...
  • java实训报告总结

    万次阅读 2019-06-25 17:56:26
    实训报告 在实训的八天中,第一天我们了解了学生信息管理系统,了解实训目的及实训里面一层一层的思路,跟着思路用百度脑图写出了实训的结构图。让后创建数据库,并在建好了的数据库student中建四个表分别为student,...
  • Java实训报告

    2019-07-04 13:40:54
    实训主题:学生信息管理系统 第一步:我们主要做了一个思维脑图,把学生信息管理系统的步骤用思维脑图更好的呈现出来,看起来就很清晰明了。 第二步:就是创建一个名叫student的一个数据库,然后在里面一次建立四个...
  • Java实训报告.docx

    2019-12-10 16:03:55
    湖南科技大学潇湘学院计算机科学与工程系计算机科学与工程专业2019年JAVA实训实验报告报告中一共写有9个实训内容,每个内容都在本人博客中有详细介绍以及代码。其中目录为 一、矩阵的运算 二、求不同图形的周长...

空空如也

空空如也

1 2 3
收藏数 53
精华内容 21
关键字:

java学生管理系统实训报告

java 订阅