JAVA项目(固固定资产管理理)计划书一、界面设计主界面:1、按按钮面板 22、jTabble面板 3、树型结结构面板 44、菜单部分分程序运行初始化化时应注意可可使用的菜单单只有管理员员登录,和关关闭系统其其于菜单及按按钮不可用,可可参考关键代代码建议步骤:1、 主界面大小为::800*6600大小使使用NULLL布局以以上部分在没没有说明的情情况下, 面板使使用布局方式式为NULLL)2、 加入面板1位于于主窗体的北北面,做为按按钮面板3、 加入面板2位于于主窗体的中中间,做为jjTablee使用BorrderLaayout布布局4、 加入面板3位于于主窗体的西西面,做为树树型结构面板板,同样使用用BordeerLayoout布局5、菜单设计::一、管理员菜单单 1、管管理员登录菜菜单项 2、增加管理员员菜单项 3、修改管理员员密码菜单项项 4、删除管理员员菜单项 二、用用户管理菜单单 1、增增加用户菜单单项 2、删除用户菜菜单项 三、资产管理菜单 1、增增加资产菜单单项 2、删除资产菜菜单项 四、资资产信息管菜菜单 1、资资产信息查询询菜单项 2、资产信息修修改菜单项 3、删删除资产信息息菜单项 五、关关闭系统 1、关关闭系统二、数据库设计计1、管理员数据据 字段段说明:管理员IDint 类型主键管理员名vchar 类类型管理员密码vchar 类类型2、用户数据表表 字段说说明:用户IDint类型主键用户名vchar 类型3、资产数据表表 字段说说明:资产IDint类型主键资产名vchar类型型资产价值vchar类型型可选为floaat类型或mmoney类类型资产状态vchar类型型可选为boollean类型型4、资产信息数数据表 字段段说明:资产操作IDint类型主键资产操作人vchar类型型资产操作日期vchar类型型可选为datee类型使用资产人员vchar类型型备注vchar类型型数据库部分建议议字段全部设设置为不可为空。
三、逻辑设计1、数据库的连连接 1、建立立一个新的类类做为数据所所连接类,注注意:必须导导入javaa.sql..*包,2、方法类型,方方法1、puublic void setDbb(Striing dbbCommaand) 用于执行向向数据库中输输入数据 方法2、ppublicc ResuultSett getRRS(Strring ddbCommmand) 用于返返回一个从数据据库中查询数数据的结果集集2、数据模型 1、建立立jTablle 数据模模型,使用TTableMModel类类建立模型注注意:应导入入:import java..util..*;import javaxx.swinng.tabble.DeefaulttTableeModell; 方法可声明为为:publlic sttatic DefauultTabbleModdel geetmyMoodel(SStringg dbCoommandd) 3、数据输入使用数据库方法法 1,向数数据库输入数数据。
注意意:向数据库库输入数据时时,要对应于于 数据据库的各字段段的值和类型型)public void inserrDb() { Strring ddbCommmand == "inssert iinto uuserinnfo vaalues((" + IID + "",'" ++ namee + "','"" + paassworrd + ""')"; new DbLinnk().ssetpSttm(dbCCommannd);}注意:如果是对对一个数据表表进行全部字段的的输入,可以以不输入字段段名如果只只是对某一个个数据所字段段进行修改,必必须输入要修修改的字段名名要修改的的数据必须和和数据所在的的数据库的字字段的类型匹匹配四、关键逻辑结结构建产一个操作数数据模型的类类建立一个方法,,声明如下::Public DefauultTabbleModdel geetmyMoodel(SStringg dbCoommandd) dbbCommaand参数为为SQL语句句{Vector biaotti = nnew Veector(();建立一个向量对对象用于存储储结果集中的的列名 Vecttor vaalue == new Vectoor(); 建立一个向量对对象用于存储储结果集中的的数据 try { ResulltSet rs = new DDbLinkk().geetRs(ddbCommmand);;使用SQL语句句得到结果集集(dbCoommandd 为Strring 类类型数据)传传入SQL语语名 for ((int ii = 1;; i <== rs.ggetMettaDataa().geetColuumnCountt(); ii++) {{ bbiaotii.addEElemennt(rs..getMeetaDatta().ggetCollumnNaame(i)))将表头字段加入入到biaooti向量中中; } whiile (rrs.nexxt()) { VVectorr tempp = neew Vecctor());建立临时的向量量对象用于加加入结果中的的每一行数据据。
ffor (iint i = 1; i <= rs.geetMetaaData().ggetCollumnCoount()); i+++) { teemp.adddElemment(rrs.gettStrinng(i))); }} valuee.addEElemennt(temmp);将向量tempp中的数据加加入valuue中 } } caatch ((Excepption e) { }DefaulttTableeModell myMoodel == new DefauultTabbleModdel(vaalue, biaotti); 建立数据模型((注意:内容容在前表头在在后); retuurn myyModell; 返回这这个数据模型型.}使用这个数据模模型的方法为为:String dbCommmand = "seelect * froom useerinfoo";声明一个字符串串用于存放SSQL语句jTable11.setMModel((new DDbModeel().ggetmyMModel((dbCommmand)));使用jTablle对象的方方法setMModel(TTbaleMModel sss)可可以设置jTTable中中所显示的数数据。
参数为为TableeModell可以使用DDbModeel中的geetmyMoodel())方法得到数据库连接及使使用声明一个类DbbLink用用于执行数据据库的操作所所必须的条件件 publiic claass DbbLink { Coonnecttion ccon=nuull; 声明连接接对象 Sttatemeent sttm=nulll; 声明执行对对象 PrrepareedStattementt pStmm=nulll; 声明预预编执行对象象 ReesultSSet rss=nulll; 声明结结果集对象 puublic void setpSStm(Sttring dbCommmand)) 执执行SQL语语句的方法 { tryy{ Classs.forrName(("sun..jdbc..odbc..JdbcOOdbcDrriver""); 加载数据库驱驱动 con==DriveerManaager.ggetConnnectiion("jjdbc:oodbc:mmytestt");连接数据源 stm==con.ccreateeStateement((); 建建产执行对象象 stm..execuuteUpddate(ddbCommmand);; 使用执执行对象执行行SQL语句句更新数据库库中的数据表表 }cattch(Exxceptiion e)) { } } puublic ResulltSet gettRs(Sttring dbCommmand)) 得到到结果集的方方法 { tryy{ Classs.forrName(("sun..jdbc..odbc..JdbcOOdbcDrriver"");加载数据库驱动动 con==DriveerManaager.ggetConnnectiion("jjdbc:oodbc:mmytestt");连接数据源 stm==con.ccreateeStateement(();建产执行对象 rs=sstm.exxecuteeQueryy(dbCoommandd);使用执行对象执执行SQL语语句查询数据据 }caatch(EExcepttion eex) { } retturn rrs; 返回查询询的结果集 }五、关键代码程序运行初始化化部分:如果在输入管理理员密码之前前只有菜单中中的管理员登登录和关闭系系统菜单为可可状态,其于于组件要设置置为不可用状状态设置Swingg组件的状态态可以使用ssetEnaabled((Booleean ssss) 如果sss设置置为True 为为可用状态ffalse为为不可用状态态例子:jButtton1..setEnnable((true)) 是设置一一个swinng的组件jjButtoon为可用状状态注意:要在程序序初始化时进进行组件状态态的设置。
管理员部分:一、 登录部分 必须须验验证用户名和和密码是否为为空及用户户名和密码是是否正确如如果出现错误误,应有相就就的提示代码入下:使用前必须导入入:impoort jaavax.sswing..JOptiionPanne;public void jButtton1_aactionnPerfoormed((ActioonEvennt e) { Striing naame = jTexttFieldd1.gettText((); 得到当前的用户户名 Striing paassworrd = nnew Sttring((jPassswordFField11.getPPasswoord()));得到当前的用户户密码 if ((name..lengtth() === 0) { JOptiionPanne.shoowMesssageDiialog((this,, "用户名名不能为空"", "错误误", JOOptionnPane..ERRORR_MESSSAGE);; 提提示用户名不不能为空 } ellse iff (passswordd.lenggth() == 0)) { JOptiionPanne.shoowMesssageDiialog((this,, "用户密密码不能为空空", "错错误", JOOptionnPane..ERRORR_MESSSAGE);; 提提示用户密码码不能为空 } ellse iff (namme.equuals(""adminn") &&& passsword..equalls("apptech"")) { JOptiionPanne.shoowMesssageDiialog((this,, "验证成成功欢迎使用用", "信信息", JOpttionPaane.INNFORMAATION__MESSAAGE); 提提示成功登录录 } ellse { JOptiionPanne.shoowMesssageDiialog((this,, "用户名名密码错误"", "错误误", JOOptionnPane..ERRORR_MESSSAGE);; 提提示用户名密密码错误 } }二、 加入管理员部分分 加入管理理员之前应确确认管理员IID为可用状状态。
可使用用查询管理员员ID方式查查看管理员IID是否为可可用操作作应有相应的的提示)一、 执行数据查询工工作,并且和和从文本框中中的得到的数数据时行比较较二、 输输入数据出错部代码参考考以上代码三、 删除管理员部分分数据输入部分::一、 各表的ID必须须为数字二、 表中的字段可使使用可选类型型出错部代码参考考以上代码执行数据库操作作删除管理员员但应注意意:在资产管管理中的操作作人应有相应应的操作其它部分:得到当前的日期期的方法为::使用前必须导入入: imporrt javva.texxt.SimmpleDaateForrmat;import java..util..*;public Strinng gettCurreentDatte() {{ SimppleDatteFormmat foormatttime == new SimplleDateeFormaat("yyyyy年MMM月dd日", LLocalee.getDDefaullt());; 得到当前的日期期,格式为::2006年年12月133日,注意字字母大小写 Striing sttr = fformatttime..formaat(neww Datee()); 将当前时间间做为字符串串输入 returrn strr; 返返回这个字符符串六、方法查询写出你所使用的的各种方法要求写出你的关关于数据操类类所,定义的的类名及方法法名数据模型的类名名及方法名:要求写出你的关关于数据模型型操类所,定定义的类名及及方法名界面类名及方法法名:要求写出你的关关于界面所,定定义的类名及及方法名逻辑类名及方法法:要求写出你的关关于逻辑操所所,定义的类类名及方法名名七、注意事项一、不可出现代代码抄习现象象。
二、程序代码应应注意格式的的书写三、程序注释应应明确如有以上现象,对对于项目应相相应的扣分八、补充说明关于jTablle中的数据据表的操作说说明:在jTablee中,如果数数据表中显示示的数据是由由数据库中的的多个表查询询的结果,在在进行修改数数据时必须分分别对每一张张表做单独修修改注意::修改的数据据时,要注意意数据表中的的数据对应于于那一张数据据库中的数据据表(如果你你有好的方法法可以自改定定义)数据操操作示意图..1:关于建产数据模模型的操作说说明:1、从数据库中中查询数据会会生成一个RRS结果集2、建立一个可可以操作RSS结果集的对对象3、使用这个对对象分别从RRS结果集中中取出列名和和数据4、把取出的列列名放入向量量对象temmp中,把取取出的数据放放入身量对象象valuee中5、使用vallue和teemp向量对对象建产数据据模型DBMModel6、jTablle使用seetModeel(TabbleModdel ssss)方法,得得到数据型并并且显示其中中的数据此计划书所有步步骤及代码可可以供参考,可可以自由发挥挥示意图.1:RS结果集:由数据库中的管理员表的:管理员字段及数据 数据库中的用户表中的:用户字段及数据 数据库中的固定资产表中的:资产名字段及数据 数据库中的固定资产使用信息表中的:使用人员字段及数据共同组成数据库:管理理员数据表用户数据表固定资产信息表固定资产使用信息表jTable 所显示的数据操作是由RS结果集所返回的数据,是由多表联合查询的结果。
如果在修改所显示的数据时必须,同时修改,数据库中的:管理理员数据表、用户数据表、定资产信息表、固定资产使用信息表 ————————————————————————————————————————示意图.2:可操作RS结果集的对象ResultSetMetaData可操作RS结果集的对象ResultSetMetaData数据库(DB)结果集(RS)是一个根据对数据库的查询到的数据所生成的二维的数组,在这个数组中有,数据库的字段名、字段所对应的数据数据模型(DBModel)且于存放结果集的列名的向量对象(biaoti)显示结果集数据(jTable)且于存放结果集中的数据向量对象(value)。