




免费预览已结束,剩余5页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精选文库实验五Java项目开发实例实验目的:掌握运用RAD开发Java应用程序目标要求:1. 掌握运用Visual Editor创建窗口应用程序2. 掌握通过JDBC连接数据库内容简介:本章将介绍MyLibrary的 GUI应用程序。实验说明:第一节 创建GUI应用程序1. 添加JDBC环境变量在菜单栏点击“文件 - 新建 - 项目”,选择“Java项目”,点击“下一步”。输入项目名称“MyLibraryGUI”,点击“下一步”。在Java设置中选择“库”栏,点击“添加变量”。在“新建变量类路径条目”对话框中点击“配置变量”在“类途径变量”对话框中点击“新建”按钮,会弹出“新建变量条目”对话框。在“名称”栏中输入“CLOUDSCAPE_DRIVER_JAR”,然后点击“文件”按钮,找到D:/Program Files/IBM/Rational/SDP/6.0/runtimes/base_v6/cloudscape/lib/db2j.jar,如下图:点击“确定”。再次点击“确定”。在弹出对话框点击“是”。在“新建变量类路径条目”窗口中选择,点击“确定”。这样就在MyLibraryGUI项目里添加了Cloudscape 的JDBC驱动。点击“完成”按钮。2. 新建可视类(Visual Class)在菜单栏选择“文件 - 新建 - 其它 - Java - 可视类”,点击“下一步”。在“Java类”窗口,“包”文本框输入mlg.library.gui,“名称”文本框输入“MyLibraryDesktopApp”,“样式”选择“Swing - 框架”(选择后“超类”变成javax.swing.JFrame),点击“接口”右侧的“添加”,输入ActionListener,点击“确定”。勾选“pulibc static void main(String args)”,点击“完成”在如下图的工作台中,点击1里的下三角箭头,将源代码区域最小化,点击2里的三角箭头使得选用板总是可见,将3处拉伸使得选用板中各控件可以很好看到。在RAD下侧的“属性”栏里,将“标题”的值改为“图书馆图书管理”,如果想改变大小,可以将修改“大小”的值。点击MyLibraryDesktopApp.java可视编辑器里的面板JPanel(不是整个框架JFrame),在下面的“属性”栏中找到“布局”,默认值为BorderLayout,在列表中选择GridBagLayout。Ctrl+S保存。3. 添加GUI组件下面向JFrame里添加Swing组件,使得图书馆图书管理的应用程序如下所示:在左侧的“选用板”中点击“Swing组件”中的“JLabel”,然后将鼠标指针移至content pane。这时鼠标指针会显示(0, 0),这是GridBagLayout下的组件坐标。再次点击鼠标,这个JLabel会出现在content pane的中央。在“选用板”选择一个JTextField,将它放在刚才那个JLabel的右边,鼠标指针会出现(1, 0)。重复以上两步,一共添加共2个JLabel和JTextField。在(1, 2)添加一个JButton。点击一下(0, 0)的JLabel,再点击一下,输入“书名”两个字。用同样的方法,将第二个JLabel的文本改成“作者”。再将JButton的文本改成“添加”。4. 运行可视类点击设计编辑器和属性栏之间的中的任一个箭头,使得源代码编辑器出现。在源代码区域找到main方法,添加如下代码,用于在这个java类启动后能够运行图形界面: public static void main(String args) MyLibraryDesktopApp app = new MyLibraryDesktopApp(); app.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); app.setVisible(true); 右键点击“包资源管理器”中的MyLibraryDesktopApp.java,选择“运行 - Java应用程序”会看到MyLibraryDesktopApp.java程序的运行界面:5. 添加事件处理方法为上小节新建的“添加”按钮添加事件。在MyLibraryDesktopApp.java的可视编辑界面,右键点击“添加”按钮,选择“事件 - 添加事件”,在弹出的“添加事件”向导直接点击“完成”按钮。察看MyLibraryDesktopApp.java的源代码,会看到添加了如下代码:private JButton getJButton() if (jButton = null) jButton = new JButton(); jButton.setText(添加); jButton.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) System.out.println(actionPerformed(); / TODO Auto-generated Event stub actionPerformed() ); return jButton; 现在将其中负责处理按钮事件的的public void actionPerformed(java.awt.event.ActionEvent e)System.out.println(actionPerformed();/TODO Auto-generated Event stub actionPerformed()更改为如下代码,作用是当用户按下按钮后将用户所输入的信息添加到数据库,如果添加成功则弹出添加成功的消息框。 public void actionPerformed(java.awt.event.ActionEvent e) String BookName = jTextField.getText(); String BookAuthor = jTextField1.getText(); try BookInfoFactory.InsertBooksInfo(BookName, BookAuthor); JOptionPane.showMessageDialog(null, BookName + 已成功添加到数据库, 添加成功, JOptionPane.INFORMATION_MESSAGE); catch (SQLException e1) e1.printStackTrace(); (产生的错误将在下一节处理)6. GUI应用程序通过JDBC与数据库的连接在“包资源管理器”中的MyLibraryGUI项目点击右键,选择“新建 - 包”,输入包名“mlg.library.db”,在新建的包mlg.library.db中点击右键,选择“新建 - 类”,新建一个DatabaseManager.java的类,指定JDBC和数据源,用于与数据库连接。输入以下代码:public class DatabaseManager public static Connection getConnection() throws SQLException Connection con = null; try Class.forName(com.ibm.db2j.jdbc.DB2jDriver); con = DriverManager .getConnection(jdbc:db2j:D:ProjectsRADdatabaseMyLibrary); catch (Exception e) e.printStackTrace(); con.close(); return con; RAD会给出错误提示,需要导入相应的类库,点击“Shift + Ctrl + O”,选择“java.sql.Connection”,点击“完成”:同样在mlg.library.db包下新建一个名为“BooksInfoFactory.java”的类,InsertBooksInfo ()方法用于接受用户输入信息后将信息转换为输入数据库的SQL语句并执行,使其写到数据库中,getAllBooksInfo()从数据库中取得所有图书信息。输入如下代码:public class BookInfoFactorypublic staticvoid InsertBooksInfo(String name, String author) throws SQLException String id = (new Double(Math.floor(1000000*Math.random().toString(); String SQLstr = INSERT INTO mls.bookinfo + (ID,BOOKNAME,AUTHOR) + VALUES ( + id +, + name + , + author + ); System.out.println(SQLstr); DatabaseManager.getConnection().createStatement().executeUpdate(SQLstr); 并用“Shift + Ctrl + O”导入相应的包。运行MyLibraryDes
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市轨道交通客运组织 第2版 课件 项目5 城市轨道交通车站客流组织疏导
- 部编人教版七年级上册语文《21.女娲造人》听评课记录
- 苏教版三年级下册数学第三单元第4课《练习四(第2课时)》听评课记录
- 苏科版物理九年级下册《一、电能表与电功》听评课记录1
- 苏教版高中数学(必修2)2《圆柱、圆锥、圆台、球》听评课记录
- 人教版九年级化学《4.2水的净化 》 听评课记录1
- 部编版八年级语文下册《安塞腰鼓》公开课听评课记录
- 合同标的:工程施工模板制作劳务分包
- 2025电商行业供应链金融合作合同范本
- 二零二五年度证券发行上市保密条款合同
- 康复诊疗指南与规范
- 北京客运从业资格证考试
- 机械基础 第三版 课件(郁志纯) 模块二 机械零件的材料
- 法律与合规培训教程
- DB3705-T 11-2023 野大豆耐盐性鉴定技术规程
- 城市社会学课件
- 精益生产中的6S管理
- 初中英语2022版新课程标准测试卷及答案
- 《货物运输实务》课件-铁路货物运输
- 牙体解剖生理 牙的组成、分类及功能(口腔解剖生理学课件)
- GB/T 6739-2022色漆和清漆铅笔法测定漆膜硬度
评论
0/150
提交评论