版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验五Java项目开发实例实验目的:掌握运用RAD开发Java应用程序目标要求:1. 掌握运用Visual Editor创建窗口应用程序2. 掌握通过JDBC连接数据库内容简介:本章将介绍MyLibrary的 GUI应用程序。实验说明:第一节 创建GUI应用程序1. 添加JDBC环境变量在菜单栏点击“文件 -> 新建 -> 项目”,选择“Java项目”,点击“下一步”。输入项目名称“MyLibraryGUI”,点击“下一步”。在Java设置中选择“库”栏,点击“添加变量”。在“新建变量类路径条目”对话框中点击“配置变量”在“类途径变量”对话框中点击“新建”按钮,会弹出“新建变量条目
2、”对话框。在“名称”栏中输入“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 -&
3、gt; 可视类”,点击“下一步”。在“Java类”窗口,“包”文本框输入mlg.library.gui,“名称”文本框输入“MyLibraryDesktopApp”,“样式”选择“Swing -> 框架”(选择后“超类”变成),点击“接口”右侧的“添加”,输入ActionListener,点击“确定”。勾选“pulibc static void main(String args)”,点击“完成”在如下图的工作台中,点击1里的下三角箭头,将源代码区域最小化,点击2里的三角箭头使得选用板总是可见,将3处拉伸使得选用板中各控件可以很好看到。在RAD下侧的“属性”栏里,将“>标题”的值改为
4、“图书馆图书管理”,如果想改变大小,可以将修改“>大小”的值。点击MyLibraryDesktopApp.java可视编辑器里的面板JPanel(不是整个框架JFrame),在下面的“属性”栏中找到“布局”,默认值为BorderLayout,在列表中选择GridBagLayout。Ctrl+S保存。3. 添加GUI组件下面向JFrame里添加Swing组件,使得图书馆图书管理的应用程序如下所示:在左侧的“选用板”中点击“Swing组件”中的“JLabel”,然后将鼠标指针移至content pane。这时鼠标指针会显示(0, 0),这是GridBagLayout下的组件坐标。再次点击鼠标
5、,这个JLabel会出现在content pane的中央。在“选用板”选择一个JTextField,将它放在刚才那个JLabel的右边,鼠标指针会出现(1, 0)。重复以上两步,一共添加共2个JLabel和JTextField。在(1, 2)添加一个JButton。点击一下(0, 0)的JLabel,再点击一下,输入“书名”两个字。用同样的方法,将第二个JLabel的文本改成“作者”。再将JButton的文本改成“添加”。4. 运行可视类点击设计编辑器和属性栏之间的中的任一个箭头,使得源代码编辑器出现。在源代码区域找到main方法,添加如下代码,用于在这个java类启动后能够运行图形界面: p
6、ublic static void main(String args) MyLibraryDesktopApp app = new MyLibraryDesktopApp(); app.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); app.setVisible(true); 右键点击“包资源管理器”中的MyLibraryDesktopApp.java,选择“运行 -> Java应用程序”会看到MyLibraryDesktopApp.java程序的运行界面:5. 添加事件处理方法为上小节新建的“添加”按钮添加事件。在MyLibrary
7、DesktopApp.java的可视编辑界面,右键点击“添加”按钮,选择“事件 -> 添加事件”,在弹出的“添加事件”向导直接点击“完成”按钮。察看MyLibraryDesktopApp.java的源代码,会看到添加了如下代码:private JButton getJButton() if (jButton = null) jButton = new JButton(); jButton.setText("添加"); jButton.addActionListener(new java.awt.event.ActionListener() public void ac
8、tionPerformed(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-ge
9、nerated Event stub actionPerformed()更改为如下代码,作用是当用户按下按钮后将用户所输入的信息添加到数据库,如果添加成功则弹出添加成功的消息框。 public void actionPerformed(java.awt.event.ActionEvent e) String BookName = jTextField.getText(); String BookAuthor = jTextField1.getText(); try BookInfoFactory.InsertBooksInfo(BookName, BookAuthor); JOptionPan
10、e.showMessageDialog(null, BookName + "已成功添加到数据库", "添加成功", JOptionPane.INFORMATION_MESSAGE); catch (SQLException e1) e1.printStackTrace(); (产生的错误将在下一节处理)6. GUI应用程序通过JDBC与数据库的连接在“包资源管理器”中的MyLibraryGUI项目点击右键,选择“新建 -> 包”,输入包名“”,在新建的包mlg.library.db中点击右键,选择“新建 -> 类”,新建一个DatabaseM
11、anager.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&quo
12、t;); catch (Exception e) e.printStackTrace(); con.close(); return con; RAD会给出错误提示,需要导入相应的类库,点击“Shift + Ctrl + O”,选择“”,点击“完成”:同样在mlg.library.db包下新建一个名为“BooksInfoFactory.java”的类,InsertBooksInfo ()方法用于接受用户输入信息后将信息转换为输入数据库的SQL语句并执行,使其写到数据库中,getAllBooksInfo()从数据库中取得所有图书信息。输入如下代码:public class BookInfoFact
13、orypublic 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”导入相应的包。运行MyLibrary
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025租赁车辆合同书
- 2025版的企业办公租赁合同
- 2025山东青岛劳动合同模板
- 与时间为伴记录成长过程中的时间流转故事(8篇)
- 锦涤纺布料行业深度研究报告
- 中心回转轮行业深度研究报告
- 中国重磅宽幅喷水织机项目投资可行性研究报告
- 中国离心超细棉项目投资可行性研究报告
- 固体药乙烯瓶行业深度研究报告
- 2025年签订技术授权合同的注意事项
- 2024年11月-矿山隐蔽致灾因素普查
- 高中家长会 决战高考课件-高三下学期高三家长会
- 纪录片观念与历史知到智慧树章节测试课后答案2024年秋云南艺术学院
- 2024年种子轮天使投资协议范本版B版
- 改善眼科患者沟通技巧的培训
- 文旅行业消防安全培训
- 红色复古风明十三陵介绍模板
- 安检大学生涯规划
- 中建制冷机房大型设备起重吊装方案
- 教育培训机构销售培训-家长分析课件
- 血液学检验技术 课件 13.项目十三:恶性淋巴瘤
评论
0/150
提交评论