一、前言

本学期学习了JAVA语言,在学期的结束,写一个有操作界面,与数据库关联的管理系统,用来巩固自己本学习所学的知识。

用到的知识:JAVA基础,JAVA界面设计(GUI),Oracle数据库(需要掌握数据库的基本操作语句),链接数据库。

使用的开发工具:MyEclipse Professional 2014

二、设计

我们管理的属性有:项目编号,项目名称,参与人员,负责人,项目开始时间,结束时间。科研项目系统主要有四个功能,对科研项目的增加、删除、修改、查询。以及为增加系统安全性所设计的登陆模式。

2.1 增加:向数据库的表中增加科研项目的所有信息

添加后在控制台使用SQL语句查找,验证是否已添加至数据库中。

2.2 查询:通过具有唯一性的项目编号查找该项目的所有信息

2.3 修改:根据项目编号选中要修改的项目,并重新输入项目信息进行修改

2.4 删除:通过具有唯一性的项目编号删除对应项目的所有信息

三、窗体源码

3.1 登录界面

package 科研信息管理系统;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class LoginWindows extends Frame implements WindowListener,ActionListener

{

public Label lgLabel; //用户名标签

public Label pwdLabel; //密码标签

public TextField lgText; //用户名文本框

public TextField pwdText; //密码文本框

public Button lgBt; //登录按钮

public Button quitBt; //退出按钮

public LoginWindows()

{

super();

this.setSize(400, 300);

this.setTitle("科研信息管理系统");

this.setLayout(null);

lgLabel=new Label();

lgLabel.setText("登录账号:");

lgLabel.setSize(60, 30);

lgLabel.setLocation(70,70);

pwdLabel=new Label();

pwdLabel.setText("密 码:");

pwdLabel.setSize(60,30);

pwdLabel.setLocation(70, 150);

lgText=new TextField();

lgText.setSize(180, 30);

lgText.setLocation(140, 70);

pwdText=new TextField();

pwdText.setSize(180,30);

pwdText.setLocation(140, 150);

lgBt=new Button();

lgBt.setLabel("登录");

lgBt.setSize(60,30);

lgBt.setLocation(120, 220);

quitBt=new Button();

quitBt.setLabel("退出");

quitBt.setSize(60,30);

quitBt.setLocation(220,220);

quitBt.addActionListener(this);

lgBt.addActionListener(this);

this.addWindowListener(this);

this.add(lgLabel);

this.add(pwdLabel);

this.add(lgText);

this.add(pwdText);

this.add(lgBt);

this.add(quitBt);

this.setVisible(true);

}

public static void main(String args[])

{

LoginWindows main=new LoginWindows();

}

@Override

public void actionPerformed(ActionEvent e) {

Button bt=(Button) e.getSource();

if(bt.getLabel().equals("退出"))

{

System.exit(0);

}

else {

if ((lgText.getText().equals(""))||(pwdText.getText().equals("")))

{

JOptionPane.showMessageDialog(this,"账号或密码为空");

}

else

{

if ((lgText.getText().equals("admin"))&&(pwdText.getText().equals("111")))

//if((lgText.getText().equals(""))||(pwdText.getText().equals("")))

{

this.setVisible(false);

// Sqlwindow sql=new Sqlwindow();

WindowsView w=new WindowsView();

w.SciencePro();

}

else {

JOptionPane.showMessageDialog(this, "没有权限");

}

}}}

@Override

public void windowOpened(WindowEvent e) {

// TODO Auto-generated method busb

}

@Override

public void windowClosing(WindowEvent e) {

// TODO Auto-generated method busb

System.exit(0);

}

@Override

public void windowClosed(WindowEvent e) {

// TODO Auto-generated method busb

}

@Override

public void windowIconified(WindowEvent e) {

// TODO Auto-generated method busb

}

@Override

public void windowDeiconified(WindowEvent e) {

// TODO Auto-generated method busb

}

@Override

public void windowActivated(WindowEvent e) {

// TODO Auto-generated method busb

}

@Override

public void windowDeactivated(WindowEvent e) {

// TODO Auto-generated method busb

}

}

3.2主窗体源码

package 科研信息管理系统;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import javax.swing.event.*;

import javax.swing.tree.*;

public class WindowsView implements TreeSelectionListener,ActionListener //窗口类

{

JFrame main;

JPanel leftPa;

JPanel upPa;

JPanel downPa;

///查询用控件

JLabel numLa; //通过项目编号查询

JTextField numTxt;

JButton numBt;

JTextField nameTxt; //显示项目名称的文本框

JTextField peopleTxt; //显示参与人员

JTextField principalTxt; //显示主要负责人

JTextField timeStartTxt; //显示开始时间的文本框

JTextField timeEndTxt; //显示预期结束时间的文本框

//增加用控件

JLabel anumLa;

JLabel anameLa;

JLabel apeopleLa;

JLabel aprincipalLa;

JLabel atimeStartLa;

JLabel atimeEndLa;

JTextField anumTxt;

JTextField anameTxt;

JTextField apeopleTxt;

JTextField aprincipalTxt;

JTextField atimeStartTxt;

JTextField atimeEndTxt;

JButton addBt;

JTable showTable;

//删除用控件

JLabel dnumLa;

JButton dnumBt;

JTextField dnumTxt;

//修改用控件

JLabel alnumLa;

JTextField allnumTxt;

JButton alseBt;

JButton alBt;

JLabel allnumLa;

JLabel alnameLa;

JLabel alpeopleLa;

JLabel alprincipalLa;

JLabel altimeStartLa;

JLabel altimeEndLa;

JTextField alnumTxt;

JTextField alnameTxt;

JTextField alpeopleTxt;

JTextField alprincipalTxt;

JTextField altimeStartTxt;

JTextField altimeEndTxt;

public void SciencePro()

{

main=new JFrame();

main.setSize(800,800);

main.setTitle("科研信息管理");

main.setLayout(null);

leftPa=new JPanel();

leftPa.setSize(150, 600);

leftPa.setLocation(0, 0);

leftPa.setBackground(Color.white);

initLeftPanel();

main.add(leftPa);

upPa=new JPanel();

upPa.setSize(650, 400);

upPa.setLocation(150, 0);

upPa.setBackground(Color.gray);

main.add(upPa);

downPa=new JPanel();

downPa.setSize(650, 400);

downPa.setLocation(150, 400);

downPa.setBackground(Color.orange);

main.add(downPa);

main.setVisible(true);

}

private void initLeftPanel()

{

String[] strs={"查询","增加","删除","修改"};

JTree tree=new JTree(strs);

tree.addTreeSelectionListener(this);

leftPa.add(tree);

}

public void valueChanged(TreeSelectionEvent e)

{

JTree tree=(JTree)e.getSource();

DefaultMutableTreeNode selectionNode =(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();

String str=selectionNode.toString();

if(str.equals("查询"))

{

initUpDownPaWhenSearch();

}

if(str.equals("增加"))

{

initUpDownPaWhenAdd();

}

if(str.equals("删除"))

{

initUpDownPaWhenDelete();

}

if(str.equals("修改"))

{

initUpDownPaWhenAlert();

}

}

private void initUpDownPaWhenSearch()

{

//清空上下面板上的控件

upPa.removeAll();

downPa.removeAll();

//动态的加载上面板的控件

upPa.setLayout(null);

numLa=new JLabel();

numLa.setText("请输入项目编号");

numLa.setLocation(40, 60);

numLa.setSize(100, 40);

numTxt=new JTextField();

numTxt.setLocation(180, 60);

numTxt.setSize(200, 30);

numBt=new JButton();

numBt.setText("查询");

numBt.addActionListener(this);

numBt.setLocation(250, 160);

numBt.setSize(60, 30);

upPa.add(numLa);

upPa.add(numTxt);

upPa.add(numBt);

upPa.validate();

upPa.repaint();

numBt.addActionListener(this);

//动态的加载下面板的控件

nameTxt=new JTextField();

nameTxt.setLocation(80, 50);

nameTxt.setSize(300, 30);

peopleTxt=new JTextField();

peopleTxt.setLocation(80, 100);

peopleTxt.setSize(300, 30);

principalTxt=new JTextField();

principalTxt.setLocation(80, 150);

principalTxt.setSize(300, 30);

timeStartTxt=new JTextField();

timeStartTxt.setLocation(80, 200);

timeStartTxt.setSize(300, 30);

timeEndTxt=new JTextField();

timeEndTxt.setLocation(80,250);

timeEndTxt.setSize(300, 30);

downPa.setLayout(null);

downPa.add(nameTxt);

downPa.add(peopleTxt);

downPa.add(principalTxt);

downPa.add(timeStartTxt);

downPa.add(timeEndTxt);

downPa.validate();

downPa.repaint();

}

public void actionPerformed(ActionEvent e)

{

JButton bt=(JButton)e.getSource();

//bt.addActionListener(this);

if(bt.getText().equals("查询"))

{

if(numTxt.getText().equals(""))

{

JOptionPane.showMessageDialog(null, "请输入项目编号");

}

else

{

DealSearch deal=new DealSearch();

String inf=deal.findProByNum(Integer.parseInt(numTxt.getText().trim()));

if((inf!=null)&&(!inf.equals("")))

{

String[] strs=inf.split(",");

nameTxt.setText(strs[1]);

peopleTxt.setText(strs[2]);

principalTxt.setText(strs[3]);

timeStartTxt.setText(strs[4]);

timeEndTxt.setText(strs[5]);

}

}

}

if(bt.getText().equals("新增"))

{

if (anumTxt.getText().equals("")||anameTxt.getText().equals("")||apeopleTxt.getText().equals("")||aprincipalTxt.getText().equals("")||atimeStartTxt.getText().equals("")||atimeEndTxt.getText().equals(""))

{

JOptionPane.showMessageDialog(null, "输入中不能有空值!!");

}

else

{

ScienceProject s=new ScienceProject();

s.SetNum(Integer.parseInt(anumTxt.getText()));

s.SetName(anameTxt.getText());

s.SetPeople(apeopleTxt.getText());

s.SetLeader(aprincipalTxt.getText());

s.SetTimeStart(atimeStartTxt.getText());

s.SetTimeFinish(atimeEndTxt.getText());

DealAdd deal=new DealAdd();

deal.add(s);

}

}

if(bt.getText().equals("删除"))

{

if(Integer.parseInt(dnumTxt.getText())==0)

{

JOptionPane.showMessageDialog(null, "不能删除空的项目编号!!");

}

else

{

DealDelete deal=new DealDelete();

deal.delete(Integer.parseInt(dnumTxt.getText().trim()));

}

}

if(bt.getText().equals("提交"))

{

if(Integer.parseInt(allnumTxt.getText())==0)

{

JOptionPane.showMessageDialog(null, "不能修改空的项目编号!!");

}

else

{

DealSub deal=new DealSub();

deal.submit(Integer.parseInt(allnumTxt.getText()));

}

}

if(bt.getText().equals("修改"))

{

if (alnameTxt.getText().equals("")||alpeopleTxt.getText().equals("")||alprincipalTxt.getText().equals("")||altimeStartTxt.getText().equals("")||altimeEndTxt.getText().equals(""))

{

JOptionPane.showMessageDialog(null, "输入中不能有空值!!");

}

else

{

ScienceProject s=new ScienceProject();

s.SetNum(Integer.parseInt(allnumTxt.getText()));

s.SetName(alnameTxt.getText());

s.SetPeople(alpeopleTxt.getText());

s.SetLeader(alprincipalTxt.getText());

s.SetTimeStart(altimeStartTxt.getText());

s.SetTimeFinish(altimeEndTxt.getText());

DealAlter deal=new DealAlter();

deal.alter(s);

}

}

}

private void initUpDownPaWhenAdd()

{

//清空上下面板上的控件

upPa.removeAll();

downPa.removeAll();

//动态的加载上面板的控件

upPa.setLayout(null);

anumLa=new JLabel();

anumLa.setText("请输入要增加的项目编号");

anumLa.setLocation(30, 50);

anumLa.setSize(150, 40);

anumTxt=new JTextField();

anumTxt.setLocation(200, 50);

anumTxt.setSize(250, 30);

anameLa=new JLabel();

anameLa.setText("请输入要增加的项目名称");

anameLa.setLocation(30, 100);

anameLa.setSize(150, 40);

anameTxt=new JTextField();

anameTxt.setLocation(200, 100);

anameTxt.setSize(250, 30);

apeopleLa=new JLabel();

apeopleLa.setText("请输入项目参与人员");

apeopleLa.setLocation(30, 150);

apeopleLa.setSize(150, 40);

apeopleTxt=new JTextField();

apeopleTxt.setLocation(200, 150);

apeopleTxt.setSize(250, 30);

aprincipalLa=new JLabel();

aprincipalLa.setText("请输入项目负责人");

aprincipalLa.setLocation(30, 200);

aprincipalLa.setSize(150, 40);

aprincipalTxt=new JTextField();

aprincipalTxt.setLocation(200, 200);

aprincipalTxt.setSize(250, 30);

atimeStartLa=new JLabel();

atimeStartLa.setText("请输入项目开始时间");

atimeStartLa.setLocation(30, 250);

atimeStartLa.setSize(150, 40);

atimeStartTxt=new JTextField();

atimeStartTxt.setLocation(200, 250);

atimeStartTxt.setSize(250, 30);

atimeEndLa=new JLabel();

atimeEndLa.setText("请输入项目结束时间");

atimeEndLa.setLocation(30, 300);

atimeEndLa.setSize(150, 40);

atimeEndTxt=new JTextField();

atimeEndTxt.setLocation(200, 300);

atimeEndTxt.setSize(250, 30);

addBt=new JButton();

addBt.setText("新增");

addBt.addActionListener(this);

//addBt.addMouseListener(this);

addBt.setLocation(250, 340);

addBt.setSize(60, 30);

upPa.add(addBt);

upPa.add(anumLa);

upPa.add(anameLa);

upPa.add(apeopleLa);

upPa.add(aprincipalLa);

upPa.add(atimeStartLa);

upPa.add(atimeEndLa);

upPa.add(anameTxt);

upPa.add(anumTxt);

upPa.add(apeopleTxt);

upPa.add(aprincipalTxt);

upPa.add(atimeStartTxt);

upPa.add(atimeEndTxt);

upPa.validate();

upPa.repaint();

downPa.validate();

downPa.repaint();

}

private void initUpDownPaWhenDelete()

{

//清空上下面板上的控件

upPa.removeAll();

downPa.removeAll();

//动态的加载上面板的控件

upPa.setLayout(null);

numLa=new JLabel();

numLa.setText("请输入要删除的项目编号");

numLa.setLocation(40, 60);

numLa.setSize(150, 40);

dnumTxt=new JTextField();

dnumTxt.setLocation(200, 60);

dnumTxt.setSize(250, 30);

dnumBt=new JButton();

dnumBt.setText("删除");

dnumBt.addActionListener(this);

dnumBt.setLocation(270, 170);

dnumBt.setSize(60, 30);

upPa.add(numLa);

upPa.add(dnumTxt);

upPa.add(dnumBt);

upPa.validate();

upPa.repaint();

downPa.validate();

downPa.repaint();

}

private void initUpDownPaWhenAlert()

{

//清空上下面板上的控件

upPa.removeAll();

downPa.removeAll();

//动态的加载上面板的控件

upPa.setLayout(null);

alnumLa=new JLabel();

alnumLa.setText("请输入要修改的项目编号");

alnumLa.setLocation(40, 60);

alnumLa.setSize(150, 40);

alseBt=new JButton();

alseBt.setText("提交");

alseBt.addActionListener(this);

alseBt.setLocation(270, 170);

alseBt.setSize(60, 30);

allnumTxt=new JTextField();

allnumTxt.setLocation(200, 60);

allnumTxt.setSize(200, 30);

upPa.add(alnumLa);

upPa.add(alseBt);

upPa.add(allnumTxt);

upPa.validate();

upPa.repaint();

alBt=new JButton();

alBt.setText("修改");

alBt.addActionListener(this);

alBt.setLocation(450, 170);

alBt.setSize(60, 30);

/* allnumLa=new JLabel();

allnumLa.setText("请输入修改后的项目编号");

allnumLa.setLocation(30, 00);

allnumLa.setSize(150, 40);

alnumTxt=new JTextField();

alnumTxt.setLocation(180, 00);

alnumTxt.setSize(250, 30);*/

alnameLa=new JLabel();

alnameLa.setText("请输入修改后项目名称");

alnameLa.setLocation(30, 50);

alnameLa.setSize(150, 40);

alnameTxt=new JTextField();

alnameTxt.setLocation(180, 50);

alnameTxt.setSize(250, 30);

alpeopleLa=new JLabel();

alpeopleLa.setText("请重设参与人员");

alpeopleLa.setLocation(30, 100);

alpeopleLa.setSize(150, 40);

alpeopleTxt=new JTextField();

alpeopleTxt.setLocation(180, 100);

alpeopleTxt.setSize(250, 30);

alprincipalLa=new JLabel();

alprincipalLa.setText("请重设项目负责人");

alprincipalLa.setLocation(30, 150);

alprincipalLa.setSize(150, 40);

alprincipalTxt=new JTextField();

alprincipalTxt.setLocation(180, 150);

alprincipalTxt.setSize(250, 30);

altimeStartLa=new JLabel();

altimeStartLa.setText("请重设项目开始时间");

altimeStartLa.setLocation(30, 200);

altimeStartLa.setSize(150, 40);

altimeStartTxt=new JTextField();

altimeStartTxt.setLocation(180, 200);

altimeStartTxt.setSize(250, 30);

altimeEndLa=new JLabel();

altimeEndLa.setText("请重设项目结束时间");

altimeEndLa.setLocation(30, 250);

altimeEndLa.setSize(150, 40);

altimeEndTxt=new JTextField();

altimeEndTxt.setLocation(180, 250);

altimeEndTxt.setSize(250, 30);

downPa.add(alBt);

//downPa.add(allnumLa);

downPa.add(alnameLa);

downPa.add(alpeopleLa);

downPa.add(alprincipalLa);

downPa.add(altimeStartLa);

downPa.add(altimeEndLa);

downPa.add(alnameTxt);

//downPa.add(alnumTxt);

downPa.add(alpeopleTxt);

downPa.add(alprincipalTxt);

downPa.add(altimeStartTxt);

downPa.add(altimeEndTxt);

downPa.setLayout(null);

downPa.validate();

downPa.repaint();

}

}

3.3 组织SQL语句,链接数据库部分

package 科研信息管理系统;

import java.sql.*;

import java.util.Scanner;

public class Sql {

public void AddScienceProject(ScienceProject scienceProject)

{

try

{

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String conStr="jdbc:oracle:thin:@localhost:1521:XE";

Connection con=DriverManager.getConnection(conStr,"system","1");

StringBuffer sql=new StringBuffer("insert into science values("+scienceProject.GetNum()+",'"+scienceProject.GetName()+"','"+scienceProject.GetPeople()+"','"+scienceProject.GetLeader()+"','"+scienceProject.GetTimeStart()+"','"+scienceProject.GetTimeFinish()+"')");

Statement st=con.createStatement();

st.execute(sql.toString());

st.close();

con.close();

}

catch (Exception e)

{

// TODO: handle exception

System.out.println(e.toString());

}

}

public void DelScienceProject(ScienceProject scienceProject)

{

try

{

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String conStr="jdbc:oracle:thin:@localhost:1521:XE";

Connection con=DriverManager.getConnection(conStr,"system","1");

StringBuffer sql=new StringBuffer("delete from science where num="+scienceProject.GetNum()+"");

Statement st=con.createStatement();

st.execute(sql.toString());

st.close();

con.close();

}

catch (Exception e)

{

// TODO: handle exception

System.out.println(e.toString());

}

}

public void UpdScienceProject(ScienceProject scienceProject)

{

try

{

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String conStr="jdbc:oracle:thin:@localhost:1521:XE";

Connection con=DriverManager.getConnection(conStr,"system","1");

StringBuffer sql =new StringBuffer("update science set name='"+scienceProject.GetName()+"',workpeople='"+scienceProject.GetPeople()+"',manager='"+scienceProject.GetLeader()+"',timestart='"+scienceProject.GetTimeStart()+"',timeend='"+scienceProject.GetTimeFinish()+"' where num="+scienceProject.GetNum()+"");

Statement st=con.createStatement();

st.execute(sql.toString());

st.close();

con.close();

}

catch (Exception e)

{

// TODO: handle exception

System.out.println("修改异常");

System.out.println(e.toString());

}

}

public ScienceProject Findbynum(int num)

{

ScienceProject scienceProject=new ScienceProject();

try

{

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String conStr="jdbc:oracle:thin:@localhost:1521:XE";

Connection con=DriverManager.getConnection(conStr,"system","1");

StringBuffer sql=new StringBuffer("select * from science where num="+num+"");

Statement st=con.createStatement();

ResultSet rs=st.executeQuery(sql.toString());

while(rs.next())

{

scienceProject.SetNum(rs.getInt(1));

scienceProject.SetName(rs.getString(2));

scienceProject.SetPeople(rs.getString(3));

scienceProject.SetLeader(rs.getString(4));

scienceProject.SetTimeStart(rs.getString(5));

scienceProject.SetTimeFinish(rs.getString(6));

}

st.close();

con.close();

}

catch (Exception e) {

// TODO: handle exception

System.out.println(e.toString());

}

return scienceProject;

}

public ScienceProject Look()

{

ScienceProject scienceProject=new ScienceProject();

try

{

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String conStr="jdbc:oracle:thin:@localhost:1521:XE";

Connection con=DriverManager.getConnection(conStr,"system","1");

StringBuffer sql=new StringBuffer("select *from science");

Statement st=con.createStatement();

ResultSet rs=st.executeQuery(sql.toString());

while(rs.next())

{

scienceProject.SetNum(rs.getInt(1));

scienceProject.SetName(rs.getString(2));

scienceProject.SetPeople(rs.getString(3));

scienceProject.SetLeader(rs.getString(4));

scienceProject.SetTimeStart(rs.getString(5));

scienceProject.SetTimeFinish(rs.getString(6));

}

st.close();

con.close();

}

catch (Exception ex)

{

// TODO: handle exception

System.out.println(ex.toString());

}

return scienceProject;

}

public static void main(String args[])

{

}

}

3.4 增删查改对应处理的源码

//处理增加

package 科研信息管理系统;

import javax.swing.JOptionPane;

public class DealAdd

{

public DealAdd()

{}

public void add(ScienceProject s)

{

Sql sql=new Sql();

if(sql.Findbynum(s.GetNum()).GetNum()!=0)

{

JOptionPane.showMessageDialog(null, "该项目已存在,请重新输入!");

}

else

{

sql.AddScienceProject(s);

JOptionPane.showMessageDialog(null,"增加成功");

}

}

}

由设计部分可以看到,删除时需要先提交项目编号,所以,需要处理提交事件

//处理提交

package 科研信息管理系统;

import javax.swing.JOptionPane;

public class DealSub

{

DealSub()

{}

public void submit(int num)

{

Sql sql =new Sql();

if(sql.Findbynum(num).GetNum()==0)

{

JOptionPane.showMessageDialog(null, "不存在该项目");

}

else

{

JOptionPane.showMessageDialog(null, "请在下方填写修改后的项目信息");

}

}

}

//处理删除

package 科研信息管理系统;

import javax.swing.JOptionPane;

public class DealDelete

{

public DealDelete()

{}

public void delete(int num)

{

ScienceProject s=new ScienceProject();

Sql sql=new Sql();

if(sql.Findbynum(num).GetNum()==0)

{

JOptionPane.showMessageDialog(null, "不存在该项目~");

}

else

{

s=sql.Findbynum(num);

sql.DelScienceProject(s);

JOptionPane.showMessageDialog(null, "删除成功~");

}

}

}

//处理修改

package 科研信息管理系统;

import javax.swing.JOptionPane;

public class DealAlter

{

public DealAlter()

{}

public void alter(ScienceProject s)

{

Sql sql=new Sql();

sql.UpdScienceProject(s);

JOptionPane.showMessageDialog(null,"修改成功");

}

}

//处理查询

package 科研信息管理系统;

public class DealSearch //处理查询事件

{

public DealSearch()

{}

public String findProByNum(int num)//通过项目编号查询

{

String result="";

ScienceProject s=new ScienceProject();

Sql sql=new Sql();

s=sql.Findbynum(num);

result=s.GetNum()+","+s.GetName()+","+s.GetPeople()+","+s.GetLeader()+","+s.GetTimeStart()+","+s.GetTimeFinish();

return result;

}

}

3.5 主函数调用登录窗口

package 科研信息管理系统;

public class Test {

public static void main(String[] args)

{

LoginWindows v=new LoginWindows();

}

}

四、总结

还是有一些的缺陷存在的,由于对科研项目的不熟悉,有些属性设计得不合理,还有很多没有考虑到的地方,另外对GUI的不熟悉也限制了我们在窗口上的设计。还需要在项目属性及窗口等方面进行修改。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

java信息管理系统总结_java实现科研信息管理系统相关推荐

  1. java智能社区管理系统代码_java智能社区信息管理系统详情需求设计文档

    源码是虚拟资源,由于商品的可复制性,一律支付购买,拒绝退货申请! 拍下付款后自动发货百度网盘链接,自行保存或下载! 希望源码可以给需要的亲们提供一些帮助和捷径,建议没有编码基础的勿拍,提供技术支持是要 ...

  2. Java个人学生信息的录入_java录入学生信息

    简单学生信息管理系统java课程设计_计算机软件及应用_IT/计算机_专业资料.数据库课程设计 -简单学生信息管理系统学院:计算机科学学院 专业:软件工程 02 姓名:李欢欢...... 该报告中的程 ...

  3. java写的学生信息查询系统_Java编写学生信息查询系统,报错!!!

    在窗口ClientFrame中有一个窗格,Newstudentinfo和Selectstudentinfo独立运行都没问题,但是在ClientFrame中只运行Selectstudentinfo,录入 ...

  4. java驾校管理系统代码_JAVA课程设计驾校管理系统

    [实例简介] 该项目是用JAVA-Swing编写.需要建立一个mysql表.因为软件问题无法导出,请读者自行创建.表的列数据在下载文件的截图中,因为程序有导出数据库到Excel文件和界面美化(共27个 ...

  5. java 读取配置文件工具_java读取配置文件信息properties的工具类

    java读取配置文件信息properties的工具类,介绍一个工具PropertyReader.java,读取项目配置文件信息 package mymail; import java.io.File; ...

  6. java菜单实现功能_Java实现超市库存管理系统

    模拟真实的库存管理逻辑,完成超市管理系统的日常功能实现. 经过分析,首先需要一个功能菜单,然后输入所选的功能后,调用序号对应的功能方法,实现想要的操作. 具体的步骤如下: 1.完成超市商品初始化.创建 ...

  7. java成绩管理系统毕业论文_java web学生成绩管理系统,可作为java毕业论文

    项目描述 ​这是有利于大学生毕业论文参考的java项目<学生成绩管理系统> 项目名称:学生成绩管理系统 项目需求分析(Need 需求): (1)该系统的用户分为教师和学生.教师的功能有:管 ...

  8. 基于JAVA的KTV交易_Java 基于sshktv预定管理系统

    &前台地址:http://localhost:8080/ktvManage/login_ulogin.do &&&&后台地址:http://localhost: ...

  9. java做一个客房管理系统定制_Java实现酒店客房管理系统

    本文实例为大家分享了Java实现酒店客房管理系统的具体代码,供大家参考,具体内容如下 LoginFrame.java package loginManage; import java.awt.Colo ...

最新文章

  1. 一文梳理水下检测方法
  2. DL之DNN:自定义MultiLayerNet【6*100+ReLU,SGD】对MNIST数据集训练进而比较【多个超参数组合最优化】性能
  3. Mybatis分页插件PageHelper简单使用
  4. ELK技术栈—Kibana
  5. java中枚举类型详解
  6. python语言的单行注释以井号开头_【学习】Python语言入门
  7. 在VS2012中实现Ext JS的智能提示
  8. Mysql学习总结(49)——从开发规范、选型、拆分到减压
  9. Cannot subclass final class class com.sun.proxy.$Proxy16
  10. VC之CString,wchar_t,int,string,char*之间的转换
  11. linux读usb转ttl串口数据,ubuntu16.04使用USB转TTL(ch340)串口转usb调试过程
  12. linux中怎么卸载gamit,GAMIT 解算各步骤-详细
  13. Room 使用解析(2.4.2 版本)
  14. java 拼html页面返回,java返回html标签
  15. 【源码部署】Kettle IDEA 源码部署
  16. 大数据时代网络舆情与社会治理研究
  17. 【旧文回顾】中国太阳能因制造业创新而繁荣
  18. 将numeric转换为数据类型numeric是出现算术溢出错误
  19. 【LayIM】开发者文档
  20. webmagic爬取网页

热门文章

  1. LeetCode Reverse Vowels of a String(字符串中元音字符反转)
  2. LeetCode Linked List Cycle II
  3. 训练指南第一部分解题报告
  4. 《棋牌游戏服务器》玩法服务器架构
  5. 【校招面试 之 C/C++】第15题 C 回调函数
  6. h5网页中使用打电话功能
  7. php限定时间内同一ip只能访问一次
  8. 最保险的函数间数组作为参数值传递与返回方法,用memcpy函数
  9. linux内核网络协议栈--发送流程及函数(十)
  10. 16 开机自动登录脚本_创建计划任务自动运行程序---运维无人值守