




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE课程名称JAVAWeb应用程序实验名称基于JSP的网络聊天室班级学号姓名一、功能模块:-1.用户注册(注册用户保存在application中)-2.用户登录-3.用户注销-4.留言功能二、要求:-1.用户注册、登录都要进行客户端检查是否信息为空-2.用户登录之后,服务器端需要检查是否是合法的用户-3.显示的每条信息都包括登录用户姓名、留言内容及留言时间-4.其它内容可以自己扩展三、实验步骤和模块实验总体来说分为三大部分,分别为:用户注册、用户登录和用户留言,其中用户注销为一个小功能,因此不做过多描述用户注册首先来介绍第一部分用户注册界面,在该界面中用户填写信息后提交,程序自动将用户姓名和密码保存在application中以便在用户登录时核对信息,源代码为:form.html<html><head><title>JavaWeb</title> <scriptlangguage="JavaScipt"> functioncheckvalid(){varstr1=.value; varstr2=login.pwd.value; varstr3=login.sex.value;varstr4=login.pwd.value; varstr5=login.pwd2.value; if(str1=="") { alert("没有输入用户名"); returnfalse; } if(str2=="") { alert("没有输入密码"); returnfalse; } if(str3=="") { alert("没有输入性别"); returnfalse; } if(str4!=str5) { alert("密码不匹配"); returnfalse; }}</script></head><body><formmethod="post"action="ex08.jsp"name="login"><divalign="center">name(必须输入项):<inputtype="text"name="name"><br>passord(必须输入项):<inputtype="password"name="pwd"><br> passord(重新输入): <inputtype="password"name="pwd2"> <br> </div><palign="center">性别(必须输入项): <inputType="Radio"Name="sex"Value="男"Checked>男 <inputType="Radio"Name="sex"Value="女">女 </p> <palign="center">户口所在城市</p><palign="center"><selectname="City"><optionselected>北京市</option><option>上海市</option><option>天津市</option><option>重庆市</option></select></p><palign="center">曾经居住地</p> <palign="center"><selectname="juzhu"multiple><option>北京市</option><option>上海市</option><option>天津市</option><option>重庆市</option></select></p> <palign="center">爱好:</p> <divalign="center"> <inputtype="checkbox"name="JOB"value="上网"> 旅游<br> <inputtype="checkbox"name="JOB"value="游戏"> 游戏<br> <inputtype="checkbox"name="JOB"value="看电影"> 看电影<br><inputtype="checkbox"name="JOB"value="看书">看书<br><inputtype="checkbox"name="JOB"value="听音乐">听音乐<br><inputtype="checkbox"name="JOB"value="其他">其他<br> </div> <palign="center">用户备注信息:</p> <palign="center"><textareaname="liuyan"rows="10"cols="30"></textarea></p><divalign="center"><inputtype="reset"name="reset"value="重置"><inputtype="submit"name="submit"onClick="returncheckvalid()"value="提交"></div></form></body></html>值得注意的是,在注册界面一定要完成任务要求,即进行客户端检查是否信息为空,同时密码两次输入是否匹配。注册界面用户填写信息,如下所示:如果用户两次输入的密码不相同,在提交时会出现如下的提示框:修改密码,使两次密码一致后,提交信息,信息会显示在屏幕上,之后确认后,用户可选择回到主界面登录源代码为:ex08.jsp<%@pagelanguage="java"contentType="text/html;charset=GBK"%><%@pageimport="java.util.*"%><%! //下面方法Trans的作用是将StringBuffer中的的回车符号换为<br> StringBufferTrans(StringBuffersour){ for(inti=0;i<sour.length();i++){ if(sour.substring(i,i+1).equals("\n")){ sour.delete(i,i+1); sour.insert(i,"<br>"); } } returnsour; }%><%request.setCharacterEncoding("GBK");//接收text和password类信息Stringname=request.getParameter("name");Stringpwd=request.getParameter("pwd"); application.setAttribute("msg",name); application.setAttribute("msg1",pwd);out.println("username:"+name+"<br>");out.println("password:"+pwd+"<br>"); //接收radio类信息out.print("性别是:");out.println(request.getParameter("sex"));out.println("<br>"); //接收单选的select信息out.println("户口所在地:");out.println(request.getParameter("City"));out.println("<br>"); //接收多选的select信息out.println("曾经居住过的城市:");Stringjuzhu[]=request.getParameterValues("juzhu");if(juzhu!=null){ for(inti=0;i<juzhu.length;i++) out.println(juzhu[i]+" ");}//接收checkbox类信息out.print("爱好:");Stringjob[]=request.getParameterValues("JOB");if(job!=null){ for(inti=0;i<job.length;i++) out.println(job[i]+"<br>");}out.println("<br>");out.println("<br>");//处理textbox中的信息Stringstr=request.getParameter("liuyan");StringBufferliuyan=newStringBuffer(str);liuyan=Trans(liuyan);out.println("用户备注信息是:<br>");out.println(liuyan);%><br><ahref="1.html">返回登陆界面</a>显示界面:用户在注册后需要核实信息!2.用户登录本网页是程序的主界面,已注册用户可以通过填写正确信息后进入聊天室,如用户信息填写不正确或用户还没有注册,网页会提示用户信息错误;没有注册用户可以通过本届面点及注册后进入注册页面。登录界面代码为:1.html<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><title>网络聊天室</title></head><bodybgcolor="#FFFFFF"><center><h2>系统登陆</h2><formaction="login.jsp"method="post"><Inputtype="text"name="name"maxlength=8style="widsh:150"><br><Inputtype="password"name="pwd"maxlength=8style="widsh:150"><br><Inputtype="submit"value="登陆"><Inputtype="reset"value="取消"><br><br><br><br></form><formaction="form.html"method="post">还没注册吧?快点击这里<br><Inputtype="submit"value="注册"></form></center></body></html>显示为:之后用户进行登录如果输入的用户名或者密码不匹配就会出现如下图所示的错误提示:源代码为:login.jsp<%@pagelanguage="java"contentType="text/html;charset=GBK"%><%Stringname=request.getParameter("name");Stringpwd=request.getParameter("pwd");if(application.getAttribute("msg").equals(name)&&application.getAttribute("msg1").equals(pwd)){session.setAttribute("login","ok");session.setMaxInactiveInterval(-1);response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);response.setHeader("Location","main.jsp");}else{out.println("用户名或者密码输入错误!");}%><ahref="1.html">返回登陆界面</a>3.用户主页在用户在成功登录后进入自己主页,可以选择留言或注销,截图为:注销则返回登陆界面重新登录,主页和注销源代码如下:主页代码:main.jsp<%@pagecontentType="text/html;charset=GBK"%><%@includefile="checkvalid.jsp"%><ahref="chatting.htm1">要进入留言界面吗?</a><ahref="logout.jsp">注销</a>注销代码:loginout.jsp<%@pagecontentType="text/html;charset=GBK"%><%session.invalidate();response.sendRedirect("1.html");%>在这里涉及主界面与登录界面相连接的一个小程序,checkvalid.jsp没有它就无法实现界面跳转,代码如下:<%Objectval=session.getAttribute("login");Stringstrval=(String)val;if(!"ok".equals(strval)){%><jsp:forwardpage="1.html"/><%}%>4.留言功能在用户选择进入留言室后显示界面如下所示:(当前留言为空)在此界面用户可以输入留言点击“send”后即可将留言发送出去,然后在上方的空白处将发送内容显示出来,同时记录留言时间。例如:在我自己实验过程中,用户名注册为lixueyan,并且我已登录,于是我在发送框输入Ilovejavaweb,然后点击send键显示结果如下图所示:为了使程序清晰明了,我将这一部分的程序划分为三小块,分别是主框架,发送部分和显示部分代码如下:主框架chatting,html<HTML><head><title>聊天室</title></head><framesetrows="*,150"><framesrc="message.jsp"><framesrc="talk.jsp"></frameset></HTML>发送部分talk.jsp<%@pagelanguage="java"contentType="text/html;charset=GBK"%><%java.text.SimpleDateFormatformatter=newjava.text.SimpleDateFormat("yyyy-MM-ddHH:mm:ss");java.util.DatecurrentTime=newjava.util.Date();//得到当前系统时间Stringstr_date1=formatter.format(currentTime);//将日期时间格式化request.setCharacterEncoding("GBK");Stringmywords=request.getParameter("message");Objecto=application.getAttribute("msg");Stringstr1=(String)o;application.log(mywords);if(mywords!=null){intlen_mywords=mywords.length();intflag=1;application.log(""+len_mywords);for(inti=0;i<len_mywords;i++){if(mywords.charAt(i)=='<'){flag=0;}}if(flag==1){mywords=str1+":"+mywords+str_date1;Objectobj=application.getAttribute("words");if(obj==null){application.setAttribute("words",mywords+"<br>");}else{application.setAttribute("words",obj.toString()+mywords+"<br>");}}}%><html><head></head><body><FORMmethod=postaction="talk.jsp"><inputname="message"type=textsize=50><inputtype=submitvalue=send></form></body></html>显示部分:message.jsp<%@pagelanguage="java"contentType="text/html;charset=gb2312"%><html><head><metahttp-equiv="REFRESH"content="3;URL=message.jsp"><scriptLANGUAGE="JavaScript1.1">functionscrollWindow(){this.scroll(0,65000);setTimeout('scrollWindow()',200);}scrollWindow();</script><title>聊天室</title></head><%=application.getAttribute("words")%></html>为了验证程序的可用性,即实现多个用户都可以注册留言,我又重新注册了登录了一个新用户1,并在留言板发送了信息,最后显示的界面如下图所示:由此可见,该网络聊天室已经基本实现了实验书中要求的所有功能,各种登陆检查,比对,信息不能为空等要求,并且满足多人同时注册,并且登录进行留言,显示留言时进,留言内容等,实验完成。5实验总结在平时的日常生活中我也常常使用聊天工具和朋友们交流,例如QQ啊,人人等等,这次我自己体验了一下简单的聊天室的制作,感觉很新鲜也很好奇,通过这次试验中对聊天室的制作过程有了初步的了解,并且学会了如何使用application来存储,调用并且匹配信息,最后基本上实现了实验要求,而整个程序的实现过程中,对我老说难度最大的应属,调用时间,显示时间了,由于对知识的掌握不是那么牢固,没有能够很好地理解,什么是系统时间,怎样才能完成对其的调用,尤其是显示,在老师的帮助下,我查阅了书上涉及到的知识,并且在网上找到相关资料,最终,功夫不负有心人,我成功的实现了这一功能。另外,在制作过程中,遇到最大的麻烦其实不是代码的编写问题,因为大部分代码课堂都练习过,而是粗心大意,我刻骨铭心的例子就是双引号“”出现了一半引号是英文格式,而另一半是中文格式,我被这个小错误折腾了一个多小时,最后发现在message.jsp中发现了这个错误,可想而知一个大程序成百上千行代码中若是出现这个小错误,是多么严重,所以以后我会更加认真仔细的去做好编程。在这次程序涉及中,我感受颇深,有痛苦,有失落,最多的是程序实现后的成就感与满足感,我越来越喜欢这个专业了,在接下来的时间中,我一定要努力学习,争取获得更大的进步。Java程序设计系专业班级嵌入式系统实验班学号姓名题目学生成绩管理系统任课教师一、课程设计要求:1、用到书上(课本或实验册)上的至少三个实例;2、用到至少两种布局和至少四种组件;3、用到对话框;4、用到对数据库的查询、删除、添加和修改;5、最好用到输入输出流;6、具有一定的实际意义。二、用到的实例及实际意义:2.1程序所用到的实例:1、《Java2使用教程》第10章例题10.12P282;2、《Java2使用教程》第11章例题11.8P323;3、《Java2使用教程》第15章所有例题均有使用作参考P391-411;4、在其他参考书和网上也有用到相关程序和代码,并有所参考和借鉴。2.2程序的实际意义:本《学生成绩管理系统》具有对学生成绩进行管理的功能。并于数据库相连接,能够对学生的成绩、姓名、出生日期进行查询、添加和删除等,简捷方便,容易使用。三、程序代码及运行效果:3.1.1主类代码:/*主类代码*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;classMyPanelextendsJPanel{Imageimg=Toolkit.getDefaultToolkit().getImage("c:/a.jpg");publicvoidpaint(Graphicsg){g.drawImage(img,0,0,this);}}publicclassMainFormextendsJFrameimplementsActionListener{JMenumSystem=newJMenu("系统");JMenuItemmExit=newJMenuItem("退出");JMenumOperate=newJMenu("数据操作");JMenuItemmAdd=newJMenuItem("添加");JMenuItemmDel=newJMenuItem("删除");JMenuItemmModify=newJMenuItem("修改");JMenumQuery=newJMenu("查询");JMenuItemmName=newJMenuItem("按姓名查询");JMenuItemmScore=newJMenuItem("按成绩查询");JMenumHelp=newJMenu("帮助");JMenuItemmAbout=newJMenuItem("软件信息");JMenuBarmBar=newJMenuBar();MainForm(){super("学生成绩管理系统");setSize(875,583);mSystem.add(mExit);mOperate.add(mAdd);mOperate.add(mDel);mOperate.add(mModify);mQuery.add(mName);mQuery.add(mScore);mHelp.add(mAbout);mBar.add(mSystem);mBar.add(mOperate);mBar.add(mQuery);mBar.add(mHelp);setJMenuBar(mBar);mExit.addActionListener(this);mAdd.addActionListener(this);mDel.addActionListener(this);mModify.addActionListener(this);mName.addActionListener(this);mScore.addActionListener(this);mAbout.addActionListener(this);setContentPane(newMyPanel());setVisible(true);}publicvoidactionPerformed(ActionEventae){if(ae.getSource()==mExit)System.exit(0);elseif(ae.getSource()==mAbout)JOptionPane.showMessageDialog(this,"学生成绩管理系统\n\n应用科学学院\n\n2011年4月","软件信息",JOptionPane.INFORMATION_MESSAGE);elseif(ae.getSource()==mAdd)newAddForm().setVisible(true);elseif(ae.getSource()==mDel)newDeleteForm().setVisible(true);elseif(ae.getSource()==mModify)newModifyForm().setVisible(true);elseif(ae.getSource()==mName)newNameQueryForm().setVisible(true);elseif(ae.getSource()==mScore)newScoreQueryForm().setVisible(true);}publicstaticvoidmain(String[]args){newMainForm();}}3.1.2运行效果:3.2.1修改数据:/*修改数据*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;publicclassModifyFormextendsJFrameimplementsActionListener{JLabellabName=newJLabel("姓名:");JLabellabDate=newJLabel("出生日期:");JLabellabScore=newJLabel("成绩:");JTextFieldtxtName=newJTextField(20);JTextFieldtxtDate=newJTextField(18);JTextFieldtxtScore=newJTextField(20);JButtonbtnModify=newJButton("修改");JButtonbtnCancel=newJButton("取消");JButtonbtnQuery=newJButton("查询");JPanelpan=newJPanel();JPanelpan1=newJPanel();JPanelpan2=newJPanel();JPanelpan3=newJPanel();JPanelpan4=newJPanel();Connectioncon;Statementsql;ResultSetrs;ModifyForm(){super("修改数据");setSize(400,300);pan1.add(labName);pan1.add(txtName);pan2.add(labDate);pan2.add(txtDate);pan3.add(labScore);pan3.add(txtScore);pan4.add(btnQuery);pan4.add(btnModify);pan4.add(btnCancel);pan.setLayout(newGridLayout(3,1));pan.add(pan1);pan.add(pan2);pan.add(pan3);getContentPane().add(pan,"Center");getContentPane().add(pan4,"South");btnQuery.addActionListener(this);btnModify.addActionListener(this);btnCancel.addActionListener(this);btnModify.setEnabled(false);txtDate.setEditable(false);txtScore.setEditable(false);setVisible(true);txtName.requestFocus();}publicvoidactionPerformed(ActionEventae){if(ae.getSource()==btnCancel){dispose();}elseif(ae.getSource()==btnQuery){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundExceptione){}try{con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");sql=con.createStatement();rs=sql.executeQuery("select*from成绩表where姓名='"+txtName.getText()+"'");if(rs.next()){txtName.setText(rs.getString("姓名"));txtScore.setText(newInteger(rs.getInt("成绩")).toString());txtDate.setText(rs.getDate("出生日期").toString());btnModify.setEnabled(true);txtDate.setEditable(true);txtScore.setEditable(true);}else{ System.out.println("不存在该记录!");btnModify.setEnabled(false);txtName.setText("");txtScore.setText("");txtDate.setText("");txtDate.setEditable(false);txtScore.setEditable(false);}}catch(SQLExceptione){}}elseif(ae.getSource()==btnModify){try{System.out.println("Update成绩表set出生日期='"+txtDate.getText()+"',成绩="+txtScore.getText()+"where姓名='"+txtName.getText()+"'");sql.executeUpdate("Update成绩表set出生日期='"+txtDate.getText()+"',成绩="+txtScore.getText()+"where姓名='"+txtName.getText()+"'");System.out.println("记录修改完毕!");btnModify.setEnabled(false);txtName.setText("");txtScore.setText("");txtDate.setText("");txtDate.setEditable(false);txtScore.setEditable(false);con.close();}catch(SQLExceptione){}}}publicstaticvoidmain(String[]args){newModifyForm();}}3.2.2运行效果:3.3.1删除数据:/*删除数据*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;publicclassDeleteFormextendsJFrameimplementsActionListener{ JLabellabName=newJLabel("姓名:");JLabellabDate=newJLabel("出生日期:");JLabellabScore=newJLabel("成绩:");JTextFieldtxtName=newJTextField(20);JTextFieldtxtDate=newJTextField(18);JTextFieldtxtScore=newJTextField(20);JButtonbtnDelete=newJButton("删除");JButtonbtnCancel=newJButton("取消");JButtonbtnQuery=newJButton("查询");JPanelpan=newJPanel();JPanelpan1=newJPanel();JPanelpan2=newJPanel();JPanelpan3=newJPanel();JPanelpan4=newJPanel();Connectioncon;Statementsql;ResultSetrs;DeleteForm(){super("删除数据");setSize(400,300);pan1.add(labName);pan1.add(txtName);pan2.add(labDate);pan2.add(txtDate);pan3.add(labScore);pan3.add(txtScore);pan4.add(btnQuery);pan4.add(btnDelete);pan4.add(btnCancel);pan.setLayout(newGridLayout(3,1));pan.add(pan1);pan.add(pan2);pan.add(pan3);getContentPane().add(pan,"Center");getContentPane().add(pan4,"South");btnQuery.addActionListener(this);btnDelete.addActionListener(this);btnCancel.addActionListener(this);btnDelete.setEnabled(false);//取消删除按钮的功能txtDate.setEditable(false);txtScore.setEditable(false);setVisible(true);txtName.requestFocus();}publicvoidactionPerformed(ActionEventae){ if(ae.getSource()==btnCancel) { dispose(); } elseif(ae.getSource()==btnQuery){ //实现查询功能 try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");} catch(ClassNotFoundExceptione){}try{con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");sql=con.createStatement();rs=sql.executeQuery("select*from成绩表where姓名='"+txtName.getText()+"'");if(rs.next()){ txtName.setText(rs.getString("姓名"));txtScore.setText(newInteger(rs.getInt("成绩")).toString());txtDate.setText(rs.getDate("出生日期").toString());btnDelete.setEnabled(true);//使删除按钮功能实现txtDate.setEditable(true);txtScore.setEditable(true);}else{ System.out.println("不存在该记录!");btnDelete.setEnabled(false);txtName.setText("");txtScore.setText("");txtDate.setText("");txtDate.setEditable(false);txtScore.setEditable(false);} }catch(SQLExceptione){} }elseif(ae.getSource()==btnDelete) //实现删除功能{ try {System.out.println("Update成绩表set出生日期='"+txtDate.getText()+"',成绩="+txtScore.getText()+"where姓名='"+txtName.getText()+"'");sql.executeUpdate("DELETEFROM成绩表where姓名='"+txtName.getText()+"'");System.out.println("记录删除完毕!");btnDelete.setEnabled(false);txtName.setText("");txtScore.setText("");txtDate.setText("");txtDate.setEditable(false);txtScore.setEditable(false);con.close(); } catch(SQLExceptione){}} } publicstaticvoidmain(String[]args) { newDeleteForm(); }}3.3.2运行效果:3.4.1添加数据:/*添加数据*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;publicclassAddFormextendsJFrameimplementsActionListener{ JLabellabName=newJLabel("姓名:");JLabellabDate=newJLabel("出生日期:");JLabellabScore=newJLabel("成绩:");JTextFieldtxtName=newJTextField(20);JTextFieldtxtDate=newJTextField(18);JTextFieldtxtScore=newJTextField(20);JButtonbtnAdd=newJButton("添加");JButtonbtnCancel=newJButton("取消");JPanelpan=newJPanel();JPanelpan1=newJPanel();JPanelpan2=newJPanel();JPanelpan3=newJPanel();JPanelpan4=newJPanel();Connectioncon;Statementsql;ResultSetrs;AddForm(){super("添加数据");setSize(400,300);pan1.add(labName);pan1.add(txtName);pan2.add(labDate);pan2.add(txtDate);pan3.add(labScore);pan3.add(txtScore);pan4.add(btnAdd);pan4.add(btnCancel);pan.setLayout(newGridLayout(3,1));pan.add(pan1);pan.add(pan2);pan.add(pan3);getContentPane().add(pan,"Center");getContentPane().add(pan4,"South");btnAdd.addActionListener(this);btnCancel.addActionListener(this);btnAdd.setEnabled(true);txtDate.setEditable(true);txtScore.setEditable(true);setVisible(true);txtName.requestFocus();}publicvoidactionPerformed(ActionEventae){ Stringrecode,insert1,出生日期,姓名; int成绩; if(ae.getSource()==btnCancel) { this.dispose(); } elseif(ae.getSource()==btnAdd){ try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");} catch(ClassNotFoundExceptione){}try{con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");sql=con.createStatement();姓名=txtName.getText(); 出生日期=txtDate.getText(); 成绩=Integer.parseInt(txtScore.getText());recode="("+"'"+姓名+"'"+","+"'"+出生日期+""+"',"+成绩+")";insert1="INSERTINTO成绩表VALUES"+recode;sql.executeUpdate(insert1);System.out.println("记录添加完毕!");btnAdd.setEnabled(false);txtName.setText("");txtScore.setText("");txtDate.setText("");con.close(); }catch(SQLExceptione){}} } publicstaticvoidmain(String[]args) { newAddForm(); }}3.4.2运行效果:3.5.1按姓名查询数据:/*按姓名查询数据*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;publicclassNameQueryFormextendsJFrameimplementsActionListener{JLabellabName=newJLabel("姓名:");JLabellabDate=newJLabel("出生日期:");JLabellabScore=newJLabel("成绩:");JTextFieldtxtName=newJTextField(20);JTextFieldtxtDate=newJTextField(18);JTextFieldtxtScore=newJTextField(20);JButtonbtnCancel=newJButton("取消");JButtonbtnQuery=newJButton("查询");JPanelpan=newJPanel();JPanelpan1=newJPanel();JPanelpan2=newJPanel();JPanelpan3=newJPanel();JPanelpan4=newJPanel();Connectioncon;Statementsql;ResultSetrs;NameQueryForm(){super("按姓名查询");setSize(400,300);pan1.add(labName);pan1.add(txtName);pan2.add(labDate);pan2.add(txtDate);pan3.add(labScore);pan3.add(txtScore);pan4.add(btnQuery);pan4.add(btnCancel);pan.setLayout(newGridLayout(3,1));pan.add(pan1);pan.add(pan2);pan.add(pan3);getContentPane().add(pan,"Center");getContentPane().add(pan4,"South");btnQuery.addActionListener(this);btnCancel.addActionListener(this);txtDate.setEditable(false);txtScore.setEditable(false);setVisible(true);txtName.requestFocus();}publicvoidactionPerformed(ActionEventae){if(ae.getSource()==btnCancel){dispose();}elseif(ae.getSource()==btnQuery){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundExceptione){}try{con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");sql=con.createStatement();rs=sql.executeQuery("select*from成绩表where姓名='"+txtName.getText()+"'");if(rs.next()){txtName.setText(rs.getString("姓名"));txtScore.setText(newInteger(rs.getInt("成绩")).toString());txtDate.setText(rs.getDate("出生日期").toString());}else{ System.out.println("不存在该记录!");txtName.setText("");txtScore.setText("");txtDate.setText("");txtName.requestFocus();}}catch(SQLExceptione){}}}publicstaticvoidmain(String[]args){newNameQueryForm();}}3.5.2运行效果:3.6.1按成绩查询数据:/*按成绩查询数据*/importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;importjavax.swing.table.DefaultTableModel;importjavax.swing.table.JTableHeader;publicclassScoreQueryFormextendsJFrameimplementsActionListener{JLabellabScore=newJLabel("请输入成绩:");JTextFieldtxtScore=newJTextField(10);JButtonbtnQuery=newJButton("查询");JPanelpan1=newJPanel();JPanelpan2=newJP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 闻一多红色课件
- 自贡市第一人民医院招聘考试真题2024
- 赣州市生态环境系统事业单位招聘考试真题2024
- 考点解析-人教版八年级物理上册第5章透镜及其应用专项练习试卷
- 考点攻克人教版八年级物理上册第5章透镜及其应用章节练习试卷(含答案详解)
- 考点解析人教版八年级上册物理《物态变化》同步测试练习题(含答案详解)
- 考点解析人教版八年级上册物理物态变化《汽化和液化》同步测评试题
- 考点解析人教版八年级上册物理物态变化《熔化和凝固》达标测试试题(含答案解析)
- 2025年数控加工技术题库及答案
- 2025年煤矿企业主要负责人安全生产知识和管理能力考试强化训练试题及答案
- 2025年煤矿矿山救护救援行动人员三级救援案例分析试卷及答案
- 沥青路面施工合同范本模板
- 人工智能在灾害应急救援中的作用与挑战研究报告
- 第二单元维护社会秩序 检测题(含答案)-2025-2026学年八年级上册道德与法治
- 2025年公安辅警笔试考试题库及答案
- HTTP协议课件教学课件
- 物业防寒防冻安全培训课件
- 2025道中华铸牢中华民族共同体意识知识竞赛试题(+答案)
- T-CCUA 048-2025 政务信息系统运行维护费用定额测算方法
- 产教融合机制课题申报书
- 建筑工地环保及噪音控制施工方案
评论
0/150
提交评论