服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java基础应用: 单机版管理系统源代码

package jettang;

import java.lang.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

//////////////////////////////////////////////


//主类
public class stu {
public stu() {
try {
jbinit();
} catch (exception ex) {
ex.printstacktrace();
}
}

public static void main(string args[]) {
new frm_main();
}

private void jbinit() throws exception {
}
}


//主框架,数据库
class frm_main implements actionlistener { //throws ioexception
public static final int exit_on_close = 0;
public jframe frame;
public container c;
public jmenubar menubar;
public jmenu mainmenu1;
public jmenu mainmenu2;
public jmenu mainmenu3;
public jmenuitem submenu1[] = new jmenuitem[5];
public jmenuitem submenu2[] = new jmenuitem[7];
public jmenuitem submenu3[] = new jmenuitem[2];
jbutton toolbarbutton[] = new jbutton[8];
public jtoolbar toolbar;
//////////////////////////////////////////////
string strtip[] = {"姓名查询...", "添加信息...",
"删除...", "修改...", "修改确认...",
"添加确认...", "删除确认...", "关于产品信息:)"};
//////////////////////////////////////////////
// string id = new string();
string name = new string();
string sex = new string();
string age = new string();
string classid = new string();
string department = new string();
string call = new string();
//////////////////////////////////////////////
connection con;
resultset rs;
statement st;
// resultsetmetadata rsmd;
// vector columnheads=new vector();
// vector rows = new vector();
// vector currentrow=new vector();

///////////////////////////////////////////////
public jlabel classidl = new jlabel("班级");
public jlabel namel = new jlabel("姓名");
public jlabel sexl = new jlabel("性别");
public jlabel agel = new jlabel("年龄");
public jlabel departmentl = new jlabel("单位");
public jlabel calll = new jlabel("电话");
public jlabel tittlelabel = new jlabel();
//////////////////////////////////////////////
public jtextfield classidt = new jtextfield();
public jtextfield namet = new jtextfield();
public jtextfield sext = new jtextfield();
public jtextfield aget = new jtextfield();
public jtextfield departmentt = new jtextfield();
public jtextfield callt = new jtextfield();
public jtextarea textt = new jtextarea();
//////////////////////////////////////////////

//////////////////////////////////////////////
public frm_main() {
/////////////////////////////////////////////////
frame = new jframe("学籍管理系统v1.0");
c = frame.getcontentpane();
c.setlayout(null);
menubar = new jmenubar();
toolbar = new jtoolbar();
toolbar.setfloatable(false);
frame.setjmenubar(menubar);
frame.setresizable(false);
////////////////////////////////////////////////
mainmenu1 = new jmenu("管理");
string str1[] = {"添加", "删除", "查询", " ", "关闭"};
for (int i = 0; i < 5; i++) {
if (i == 3) {
mainmenu1.addseparator();
} else {

submenu1[i] = new jmenuitem(str1[i]);
submenu1[i].addactionlistener(this);
mainmenu1.add(submenu1[i]);
}
}
menubar.add(mainmenu1);
/////////////////////////////////////////////////
mainmenu2 = new jmenu("操作");
string str2[] = {"查询", "添加", "删除", "修改",
"提交修改", "提交添加", "提交删除"};
for (int i = 0; i < 7; i++) {
submenu2[i] = new jmenuitem(str2[i]);
submenu2[i].addactionlistener(this);
mainmenu2.add(submenu2[i]);
}
menubar.add(mainmenu2);
/////////////////////////////////////////////////
mainmenu3 = new jmenu("集体查询");
string str3[] = {"按班级...", "按单位..."};
for (int i = 0; i < 2; i++) {
submenu3[i] = new jmenuitem(str3[i]);
submenu3[i].addactionlistener(this);
mainmenu3.add(submenu3[i]);
}
menubar.add(mainmenu3);
////////////////////////////////////////////////
string strtoolbar[] = {"查询", "添加", "删除", "修改", "提交修改",
"提交添加", "提交删除", "关于"};

for (int i = 0; i < 8; i++) {

toolbarbutton[i] = new jbutton(strtoolbar[i]);
toolbarbutton[i].settooltiptext(strtip[i]);
toolbarbutton[i].addactionlistener(this);
toolbar.add(toolbarbutton[i]);

}
toolbar.setlocation(0, 0);
toolbar.setsize(400, 30);
c.add(toolbar);
////////////////////////////////////////////////
classidl.setlocation(35, 40);
classidl.setsize(40, 20);
//classidl.setfont(new font("",font.bold,12));
c.add(classidl);

classidt.setlocation(90, 40);
classidt.setsize(200, 20);
//classidt.setenabled(false);
c.add(classidt);

namel.setlocation(35, 70);
namel.setsize(40, 20);
c.add(namel);

namet.setlocation(90, 70);
namet.setsize(200, 20);
c.add(namet);

sexl.setlocation(35, 100);
sexl.setsize(40, 20);
c.add(sexl);

sext.setlocation(90, 100);
sext.setsize(200, 20);
c.add(sext);

agel.setlocation(35, 130);
agel.setsize(40, 20);
c.add(agel);

aget.setlocation(90, 130);
aget.setsize(200, 20);
c.add(aget);

departmentl.setlocation(35, 160);
departmentl.setsize(40, 20);
c.add(departmentl);

departmentt.setlocation(90, 160);
departmentt.setsize(200, 20);
c.add(departmentt);

calll.setlocation(35, 190);
calll.setsize(40, 20);
c.add(calll);

callt.setlocation(90, 190);
callt.setsize(200, 20);
c.add(callt);
/////////////////////////////////////////////////
tittlelabel.settext("----------集体查询结果--------");
tittlelabel.setsize(300, 20);
tittlelabel.setlocation(10, 210);
c.add(tittlelabel);
////////////////////////////////////////////
textt.setsize(400, 300);
textt.setlocation(10, 240);
c.add(textt, 14);

///////////////////////////////////////////////
frame.setdefaultcloseoperation(jframe.exit_on_close);
frame.setsize(500, 650);
frame.setlocation(200, 200);
frame.setvisible(true);
condb();

}

//以上是框架设计

//jdbc
public void condb() {
try {
class.forname("sun.jdbc.odbc.jdbcodbcdriver");

} catch (classnotfoundexception e) {
joptionpane.showmessagedialog(null, "数据库错误");
}
try {
con = drivermanager.getconnection("jdbc:odbc:jettang", "sa", "");
st = con.createstatement();
} catch (sqlexception e) {
joptionpane.showmessagedialog(null, "数据库连接失败");
}

}


//关闭连接
public void closedb() {
try {
st.close();
con.close();
} catch (sqlexception e) {
joptionpane.showmessagedialog(null, "数据库关闭失败");
}
}


//事件响应
public void actionperformed(actionevent e) {
//////////////////////////////////////////////
if (e.getsource() == toolbarbutton[7]) {
joptionpane.showmessagedialog(null, "当前版本1.0,操作帮助请看使用说明书");
}

/////////////////////////////////////////////查询(按姓名)
if (e.getsource() == submenu2[0] || e.getsource() == toolbarbutton[0] ||
e.getsource() == submenu1[2]) {

string idid = joptionpane.showinputdialog("请输入学生姓名");
if (idid.trim() != "") {
string strsql = "select * from stuinfo where name ='" + idid +
"'";
try {
rs = st.executequery(strsql);
int count = 0;
while (rs.next()) {
classid = rs.getstring("classid");
name = rs.getstring("name");
department = rs.getstring("department");
sex = rs.getstring("sex");
age = rs.getstring("age");
call = rs.getstring("call");
++count;
}
if (count == 0) {
joptionpane.showmessagedialog(null, "无此信息");
} else {
classidt.settext(classid);
namet.settext(name);
sext.settext(sex);
aget.settext(age);
callt.settext(call);
departmentt.settext(department);
}
} catch (exception ex) {
joptionpane.showmessagedialog(null, "查询失败");
}

}
}
/////////////////////////////////////////////关闭
if (e.getsource() == submenu1[4]) {
frame.dispose();
closedb();
}
/////////////////////////////////////////////添加
if (e.getsource() == submenu1[0] || e.getsource() == submenu2[1] ||
e.getsource() == toolbarbutton[1]) {
joptionpane.showmessagedialog(null, "请输入你添加的信息再点击提交添加键");
classidt.setenabled(true);
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

}
/////////////////////////////////////////////提交添加
if (e.getsource() == toolbarbutton[5] || e.getsource() == submenu2[5]) {
if ((classidt.gettext().trim()).equals("") ||
(namet.gettext().trim()).equals("") ||
(sext.gettext().trim()).equals("") ||
(aget.gettext().trim()).equals("") ||
(callt.gettext().trim()).equals("") ||
(departmentt.gettext().trim()).equals("")) {
joptionpane.showmessagedialog(null, "请先点击添加键");
} else {
classid = classidt.gettext();
name = namet.gettext();
sex = sext.gettext();
age = aget.gettext();
call = callt.gettext();
department = departmentt.gettext();
string strsql =
"insert into stuinfo(classid,name,sex,age,call,department) values('" +
classid + "','" +
name + "','" + sex + "','" + age + "','" + call + "','" +
department + "')";
try {
st.executeupdate(strsql);
} catch (exception exx) {
joptionpane.showmessagedialog(null, "添加失败");
return;
}
joptionpane.showmessagedialog(null, "添加成功");
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

}
}
////////////////////////////////////////////提交修改
if (e.getsource() == submenu2[4] || e.getsource() == toolbarbutton[4]) {
if ((classidt.gettext().trim()).equals("") ||
(namet.gettext().trim()).equals("") ||
(sext.gettext().trim()).equals("")
|| (aget.gettext().trim()).equals("") ||
(callt.gettext().trim()).equals("") ||
(departmentt.gettext().trim()).equals("")) {
joptionpane.showmessagedialog(null, "请先点击修改键");
return;
} else {
classid = classidt.gettext();
name = namet.gettext();
sex = sext.gettext();
age = aget.gettext();
call = callt.gettext();
department = departmentt.gettext();
string strsql = "update stuinfo set classid='" + classid +
"',sex='" + sex + "',age='" + age + "',call='" +
call + "',department='" + department + "'" +
"where name='" + name + "'";
try {
st.executeupdate(strsql);
} catch (exception exx) {
joptionpane.showmessagedialog(null, "修改失败");
return;
}
joptionpane.showmessagedialog(null, "修改成功");
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

}

}
///////////////////////////////////////////////修改
if (e.getsource() == submenu2[3] || e.getsource() == toolbarbutton[3]) {
string idid = joptionpane.showinputdialog
("请输入你要修改的学生姓名后点击提交修改键确认");
if (idid.trim() != "") {
string strsql = "select * from stuinfo where name ='" + idid +
"'";
try {
rs = st.executequery(strsql);
int count = 0;
while (rs.next()) {
classid = rs.getstring("classid");
name = rs.getstring("name");
department = rs.getstring("department");
sex = rs.getstring("sex");
age = rs.getstring("age");
call = rs.getstring("call");
++count;
}
if (count == 0) {
joptionpane.showmessagedialog(null, "无此信息");
} else {
classidt.settext(classid);
namet.settext(name);
sext.settext(sex);
aget.settext(age);
callt.settext(call);
departmentt.settext(department);
classidt.setenabled(false);
}
} catch (exception ex) {
joptionpane.showmessagedialog(null, "修改失败");
}

}
}
/////////////////////////////////////////////////删除
if (e.getsource() == submenu2[2] || e.getsource() == toolbarbutton[2] ||
e.getsource() == submenu1[1]) {
string iddel = joptionpane.showinputdialog
("请输入要删除的学生姓名后点击提交删除键确认");
if (iddel.trim() != "") {
string strsql = "select * from stuinfo where name ='" + iddel +
"'";
try {

rs = st.executequery(strsql);
int count = 0;
while (rs.next()) {
classid = rs.getstring("classid");
name = rs.getstring("name");
department = rs.getstring("department");
sex = rs.getstring("sex");
age = rs.getstring("age");
call = rs.getstring("call");
++count;
}
if (count == 0) {
joptionpane.showmessagedialog(null, "无此信息");
} else {
classidt.settext(classid);
namet.settext(name);
sext.settext(sex);
aget.settext(age);
callt.settext(call);
departmentt.settext(department);
classidt.setenabled(false);
}
} catch (exception ex) {
joptionpane.showmessagedialog(null, "删除失败");
}
}
}

//////////////////////////////////////////////////提交删除
if (e.getsource() == toolbarbutton[6] ||
e.getsource() == submenu2[6]) {
if ((classidt.gettext().trim()).equals("") ||
(namet.gettext().trim()).equals("") ||
(sext.gettext().trim()).equals("") ||
(aget.gettext().trim()).equals("") ||
(callt.gettext().trim()).equals("") ||
(departmentt.gettext().trim()).equals("")) {
joptionpane.showmessagedialog(null, "请先点击删除键");
return;
} else {
name = namet.gettext();
string strsql = "delete from stuinfo where name='" + name +
"'";
try {
st.executeupdate(strsql);
} catch (exception exx) {
joptionpane.showmessagedialog(null, "删除失败");
return;
}
joptionpane.showmessagedialog(null, "删除成功");
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

}
}

//////////////////////////////////////////////集体查询(按班级)
if (e.getsource() == submenu3[0]) {
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

if ((classidt.gettext().trim()).equals("")) {
string idclass = joptionpane.showinputdialog("请输入班级");
string strsql = "select * from stuinfo where classid='" +
idclass +
"'";
try {
rs = st.executequery(strsql);
displayres(rs);

} catch (exception ex) {
joptionpane.showmessagedialog(null, "查询失败");
}

} else {
string idclass = classidt.gettext();
string strsql = "select * from stuinfo where classid='" +
idclass +
"'";
try {
rs = st.executequery(strsql);
displayres(rs);
} catch (exception ex) {
joptionpane.showmessagedialog(null, "查询失败");
}
}
}
////////////////////////////按单位
if (e.getsource() == submenu3[1]) {
classidt.settext("");
namet.settext("");
sext.settext("");
aget.settext("");
callt.settext("");
departmentt.settext("");

if ((departmentt.gettext().trim()).equals("")) {
string idclass = joptionpane.showinputdialog("请输入单位");
string strsql = "select * from stuinfo where department='" +
idclass +
"'";
try {
rs = st.executequery(strsql);
displayres(rs);

} catch (exception ex) {
joptionpane.showmessagedialog(null, "查询失败");
}

} else {
string idclass = departmentt.gettext();
string strsql = "select * from stuinfo where department='" +
idclass +
"'";
try {
rs = st.executequery(strsql);
displayres(rs);
} catch (exception ex) {
joptionpane.showmessagedialog(null, "查询失败");
}
}
}
}

public void displayres(resultset rs1) throws sqlexception {
//定位到达第一条记录
boolean morerecords = rs1.next();

//如果没有记录,则提示一条消息

if (!morerecords) {

joptionpane.showmessagedialog(null, "无此记录");

return;

}
try {

//获取数据
getnextrow(rs1);

//刷新table
c.validate();

}

catch (sqlexception sqlex) {

sqlex.printstacktrace();

}
}

public void getnextrow(resultset rs2) throws
sqlexception {
int count = 1;
while (rs2.next()) {
name = " 姓名:" + rs2.getstring(1);
age = " 年龄:" + rs2.getstring(2) + " 单位:";
department = rs2.getstring(3) + "\n";
textt.append(count + "." + name + age + department);
count++;
}
}
}

(t006)

扫描关注微信公众号