实验八基于图形用户界面的JDBC程序开发.doc

上传人:w****2 文档编号:6687349 上传时间:2020-03-02 格式:DOC 页数:12 大小:94.50KB
返回 下载 相关 举报
实验八基于图形用户界面的JDBC程序开发.doc_第1页
第1页 / 共12页
实验八基于图形用户界面的JDBC程序开发.doc_第2页
第2页 / 共12页
实验八基于图形用户界面的JDBC程序开发.doc_第3页
第3页 / 共12页
点击查看更多>>
资源描述
实验4基于图形用户界面的JDBC程序开发 (2)淮海工学院计算机科学系实验报告书课程名:_ Java_题 目:_基于图形用户界面的JDBC程序开发班 级:_ _ 学 号:_ _ 姓 名:_ _ _评语:成绩: 指导教师: 批阅时间: 年 月 日一、实验目的熟练运用GUI标准组件和布局管理器,正确合理地利用常用AWT和Swing组件进行图形界面的设计;理解Java的事件处理机制,正确运用Java的事件处理机制及事件委托模型编写图形界面组件的事件处理程序;理解Java多线程机制,掌握线程使用方法。理解JDBC的数据库访问编程原理,正确利用JDBC技术编写以数据库应用为核心的软件系统,并在设计中灵活运用之前所学的Java语言面向对象的编程技术。二、实验环境操作系统:windows 2000 或 Window XP集成开发环境:JDK1.6及以上版本三、实验学时 2学时,必做实验。四、实验内容(1) 进一步熟悉JavaGUI标准组件和布局管理器、正确合理地利用常用AWT和Swing组件进行图形界面的设计;理解Java的事件处理机制,正确运用Java的事件处理机制及事件委托模型编写图形界面组件的事件处理程序;实践程序调试方法、纠错能力及编程规范性等;理解JDBC的数据库访问编程原理,正确利用JDBC技术编写以各种数据库应用;(2) 按以下各题目具体要求调试或编写相关算法程序五、实验步骤与结果1 请按照以下功能要求编写并调试相关程序(1) 请定义一个抽象的“科学图书”类,其中包含1个公共的抽象方法:图书介绍;1个属性为:图书类别 (字符串类型); (2) 定义一个“计算机图书”子类(继承于“科学图书”类),其中包括2个域:出版社、定价;2个构造方法: 一个为无参构造方法,在该无参构造方法中将“图书类别”设置为“计算机图书”,一个带2个参数(出版社、定价);不少于2个成员方法:分别用来查看出版社、修改定价,图书介绍文字可自编,并编写输出计算机图书全部信息的toString()方法。(3) 编写一个图形用户界面,用来测试能否正确创建计算机图书类的对象、能否正常调用其方法,参考界面如下。必须实现的基本功能是:1)单击图中的“新增计算机图书”按钮,则可显示出新增的计算机图书信息(显示信息的控件不限,用文本域、列表框、表格均可),要求添加的计算机图书不少于2本,如下图所示:图1 运行截图新增计算机图书2)单击图中的“修改定价”按钮,可修改其中某本图书的定价,并在下方显示出修改后的结果请按照实验内容具体要求完成相关设计与编程,实验步骤;(1) 程序代码import java.awt.*;import java.awt.event.*;class CM extends Frame implements ActionListenerCMBook start; /当做链表的开头Panel 操作栏;Label 出版社,定价,显示;TextField 出版社栏,定价栏;Button 新增计算机图书,修改定价;TextArea 显示内容;CM()super(计算机图书类操作图形用户界面);start=null;显示=new Label();显示内容=new TextArea();显示内容.setSize(80,50);新增计算机图书=new Button(新增计算机图书);修改定价=new Button(修改定价);新增计算机图书.addActionListener(this);修改定价.addActionListener(this);操作栏=new Panel();操作栏.setSize(60,5);出版社=new Label(出版社);定价=new Label(定价);出版社栏=new TextField(10);定价栏=new TextField(5);操作栏.add(出版社);操作栏.add(出版社栏);操作栏.add(定价);操作栏.add(定价栏);操作栏.add(新增计算机图书);操作栏.add(修改定价);setTitle(计算机图书类操作的图形界面);add(操作栏,BorderLayout.NORTH);add(显示内容,BorderLayout.CENTER);add(显示,BorderLayout.SOUTH);setBounds(300,300,500,500);setVisible(true);validate();public void actionPerformed(ActionEvent e)if(e.getSource()=新增计算机图书)String one=出版社栏.getText();String two=定价栏.getText();if(Integer.parseInt(two)0) m_DeptNo=newno; return true; else return false; public String toString() return(部门编号:+getDeptNo()+; +部门名称: +m_DeptName+; ); 改正:import java.applet.*;/ 引入包import java.awt.*; / 引入包import java.awt.event.*;/分号public class Test extends Applet implements ActionListener / extend错误Label prompt1,prompt2; TextField inputNo1,inputName1;/分号 Department MyDept1; public void init() /少public prompt1=new Label(请输入部门的编号:); inputNo1=new TextField(5); prompt2=new Label(请输入部门的名称:); inputName1=new TextField(5); add(prompt1); add(inputNo1); add(prompt2); add(inputName1);/添加inputName1 MyDept1=new Department ( ); inputNo1.addActionListener(this);/添加this inputName1.addActionListener(this); this.setVisible(true);/显示输出 public void paint(Graphics g)/ 单词错误Graphics g.drawString(MyDept1.toString(),20,100); /drawString public void actionPerformed(ActionEvent e)/action 拼写错误 if(e.getSource()=inputNo1) MyDept1.setDeptNo(Integer.parseInt(inputNo1.getText(); /类型转换成字符 else if(e.getSource()=inputName1)/判断是相等用= MyDept1.m_DeptName=new String(inputName1.getText(); /repaint(); /return True; /返回为空不需要 class Department /final不需要 int m_DeptNo=10; /分号 String m_DeptName; /类型没有给出 String getDeptNo() /S return Integer.toString(m_DeptNo); /类型 boolean setDeptNo(int newno)/返回类型没有给出 if(newno0) m_DeptNo=newno; return true; else return false; public String toString() /S return(部门编号:+getDeptNo()+; +部门名称: +m_DeptName+; ); 3、(选做题) 请按照以下功能要求编写并调试相关程序实验内容:(1) 熟练Tomcat安装与配置; (2) 熟练servlet部署、三种开发方式;(3) 练习JDBC连接;(4) 练习基于JDBC与Servlet的数据库查询、更新(添加、删除、修改)(一) 实验步骤:熟悉Tomcat安装,servlet部署步骤;(1) 依次创建WEB-INF、classes、lib、web.xml等目录结构(2) 完成相关Servlet程序并调试(二) 以继承HttpServlet方式开发Servlet,完成基于Servlet的JDBC连接(数据库选择SQLServer2000以上)和数据查询应用。(1) 选择SQLServer2000数据库,建立Test数据库和相关users表(字段userid,username,userpass),用户名111,密码111;(2) 以继承HttpServlet方式开发Servlet,完成以下数据库查询显示代码并调试相关结果。package js.hit;import javax.servlet.http.*;import java.sql.*;import java.io.*;public class DataSel extends HttpServletpublic void doGet(HttpServletRequest req,HttpServletResponse res)try res.setContentType(text/html;charset=gbk);PrintWriter out = res.getWriter();String url = jdbc:microsoft:sqlserver:/127.0.0.1:1433;DatabaseName = test;String user = 111;String password = 111;String sqlsel = select userid,username,userpass from users;Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);Connection cn = DriverManager.getConnection(url,user,password);Statement sm = cn.createStatement();ResultSet rs = sm.executeQuery(sqlsel);while(rs.next()out.println(rs.getString(1)+);out.println(rs.getString(2)+);out.println(rs.getString(3)+);out.println();rs.close();sm.close();cn.close(); catch (Exception ex) public void doPost(HttpServletRequest req,HttpServletResponse res)this.doGet(req,res);(三) 在上例数据库基础上,继续以继承HttpServlet方式开发另一个Servlet,完成基于Servlet的数据更新应用,参考代码如下。package js.hit;import javax.servlet.http.*;import java.io.*;import java.sql.*;public class DataUpd extends HttpServlet public void doGet(HttpServletRequest req,HttpServletResponse res)try res.setContentType(text/html;charset =gbk);PrintWriter out = res.getWriter();String url = jdbc:microsoft:sqlserver:/127.0.0.1:1433;DatabaseName = test;String user = 111;String password = 111;String sqlupd = update users set userpass = 8 where userid = 3; Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);Connection cn = DriverManager.getConnection(url,user,password);Statement sm = cn.createStatement();sm.executeUpdate(sqlupd);sm.close();cn.close(); catch (Exception ex) public void doPost(HttpServletRequest req,HttpServletResponse res)this.doGet(req,res);六、实验分析与体会(1) 请简述使用JDBC技术编写数据库应用关键步骤1、装库,建库;2、找到相应的数据库连接包,sql、oracle都有对应的jar包;2、写一个类,结合对应的jar包来连接数据库;3、再写一个类,通过第二步的类用来对数据库操作。
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 临时分类 > 人文社科


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!