(一)java Swing的学习。

  (1)学习如何安装windowbuilder插件的安装。

    <1>在eclipse中点击help

    <2>在help的下拉选中选择install new software,弹出插件的添加界面

    <3>点击add,在弹出如下界面:

      

    <4>在name栏输入windowbuider

      在location中输入如下地址:http://download.eclipse.org/windowbuilder/WB/release/R201506241200-1/4.5/

      点击ok后,会出现如下界面:

      

    <5>然后把出项的组件全选中,点击finish,然后等待插件安装完成

  (2)学会利用windowuilder进行界面的设计

    <1> 创建界面,利用图形化设计

    <2>拖放界面组件(按钮,文本框,标签)

    <3>为界面组件添加图标和添加事件

  (3)弥补图形化设计的不足

    <1>改变系统字体    

    //改变系统默认字体
    Font font = new Font("Dialog", Font.PLAIN, 12);
    java.util.Enumeration keys = UIManager.getDefaults().keys();
    while (keys.hasMoreElements()) {
      Object key = keys.nextElement();
      Object value = UIManager.get(key);
      if (value instanceof javax.swing.plaf.FontUIResource) {
      UIManager.put(key, font);
      }
    }

    <2>优化文本域边框

    //设置文本域边框
    bookTypeDescText.setBorder(new LineBorder(new java.awt.Color(127,157,185), 1, false));

  (4)一些组件的特殊使用

    <1>下拉框的使用:

      当显示的是项目中的一个实体类的一个属性时,一般会重写实体类的toString方法,然后向下拉框中添加该实体类,而不是该属性。

    <2>JDesktopPane的使用

      当这个界面是其他界面的载体时,在窗体中使用JDeskTopPane组件,然后把其他界面使用InternalFrame设计。

    <3>JTabled的使用

      通过图形化界面设计表格的结构和添加事件

      获取表格的模型:  

        DefaultTableModel dtm=(DefaultTableModel) bookTypeTable.getModel();

      设置表格的行数:

        dtm.setRowCount(0);

      通过Vector集合类来向表格中添加一行数据:

        //新建一个vector并初始化
        Vector v=new Vector();
        v.add(rs.getInt("id")); //向vector中添加id
        v.add(rs.getString("bookTypeName")); //向vector中添加bookTypeName
        v.add(rs.getString("bookTypeDesc")); //向vector中添加bookTypeDesc
        //将vector中的数据显示到表格中
        dtm.addRow(v);

      在为表格添加了MousePressed事件事件后,获取鼠标选中的行号

        int row=bookTable.getSelectedRow();

      获取指定行号的指定列的值

        String id=bookTable.getValueAt(row,0)+"";

(二)JDBC的学习

  (1)DBUtil工具类

    <1>数据库的驱动,地址的参数值只需要加载一次,因此在静态代码块中完成参数的读取和驱动类的加载。

    <2>使用。properties来存储数据库的各个参数,以便于后期数据库的切换和维护。

    <3>利用java.util中的Properties类来读取。peoperties中的存储的参数值。

      Properties p=new Properties();  //创建Properties对象。

      P.load(DBUtil.class.getClassLoader().getResourceAsStream()); //一般通过类加载来获取静态的资源和配置文件。

      p.getProperty("xxx"); //读取文件对应的参数值。

  (2)根据实体类创建对应的实体Dao类

    <1>在Dao类中实现对数据库实体记录的增删改查。

    <2>一般静态的sql语句,使用Statement对象。而动态sql语句使用PreparedStatement对象。

    <3>DDL使用execute方法,DML使用executeUpdate方法,DQL使用executeQuery方法。

  (3)特殊使用技巧

    <1>

     *  在查询一个表时,具有不确定的多个查询条件时,最好创建一个字符串缓冲类来不断添加条件到sql语句中。

     * 同时,不知道有哪些条件是第一条件,无法确定where关键字的所在,于是添加条件都用(and 条件)

     * 最后字符串转换成字符串时在将第一个and替换成where,最终得到完整的sql语句

(三)在项目设计中eclipse快捷键的学习使用

  main的快捷键:main  Alt+/

  Alt+/: 自动提示

  Ctrl+1: 提示报错

  输出语句的快捷键: syso Alt+/

  弹出菜单快捷方式: Ctrl+Shift+S

  自动引入包:Ctrl+Shift+O

  进入实现:按住Ctrl 鼠标移动上去,点击。

  快速删除一行: Ctrl+D

  一行代码的快速移上移下: Alt+上箭头键和下箭头键

  快速修齐代码: Ctrl+Shift+F

(四)Debug的使用

  <1>在代码上打断点

  <2>进入debug模式

  <3>F6 继续下一步

  <4>F8 执行到下一个断点,加入没有的话,执行完程序

  <5>F5 进入方法内部

  <6>F7 跳出方法

  <7>在debug中,可以动态的修改变量的值

  <8>Ctrl+Shift+I 可以查看表达式的值

Java swing项目-图书管理系统(swing+mysql+jdbc) 总结的更多相关文章

  1. Java swing项目-图书管理系统(swing+mysql+jdbc)

    (一)项目功能分析 该项目是设计一个图书管理系统,主要包含的内容有: (1)管理员登陆界面 ->信息录入 ->登录 ->重置 (2)图书管理系统总界面 ->子界面菜单: 1)图 ...

  2. java web 项目 图书管理系统的设计与实现

     java web 项目 图书管理系统的设计与实现

  3. 简单的员工管理系统(Mysql+jdbc+Servlet+JSP)

    员工管理系统 因为学业要求,需要完成一个过关检测,但是因为检测之前没有做好准备,且想到之前用mysql+jdbc+Struts2+bootstrap做成了一个ATM系统(主要有对数据的增删改查操作), ...

  4. ORM练习项目-图书管理系统(BMS)实现细节

    分析 一本书 可以由多个作者编著 一本书只能由一个出版社出版 一个作者可以写多本书 每个作者有自己的简介 对应关系: Author-Book # 多对多 Publish-Book # 一对多 Auth ...

  5. javac 编译java文件提示: 程序包com.mysql.jdbc不存在

    需要将引用的包放到:/usr/java/jdk1.7.0_75/jre/lib/ext 也就是jdk安装目录/jre/lib/ext   目录下面

  6. JAVA图书管理系统汇总共27个

    好多人都在搜索图书管理系统,感觉这个挺受欢迎的,所以整理了一系列的图书管理系统,让大家选择.java图书馆管理系统[优秀毕业设计论文+源码]http://down.51cto.com/data/683 ...

  7. JAVA图书管理系统汇总共27个[转]

    java图书馆管理系统[优秀毕业设计论文+源码]http://down.51cto.com/data/68350java+sql server图书管理系统 http://down.51cto.com/ ...

  8. java链接MySQL数据库时使用com.mysql.jdbc.Connection的包会出红线问题 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题

    package com.swift; //这里导入的包是java.sql.Connection而不是com.mysql.jdbc.Connection import java.sql.Connecti ...

  9. Mybatis批量更新报错com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException

    批量更新数据,非常简单的一段代码,硬是报错,插入的数据也能显示出来 List<User> userlist = new ArrayList<User>(); userlist. ...

随机推荐

  1. android studio 生成aar包并在其他工程引用 (导入)aar包

    1.aar包是Android studio下打包android工程中src.res.lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件 ...

  2. 十二、shapes

    1. The control points are attributes on the shape which are usually arrays of points. Control points ...

  3. OAuth认证

    OAuth简介 OAuth是在不提供用户名和密码的情况之下,授权第三方应用访问Web资源的安全协议. OAuth允许用户提供一个令牌给第三方网站,一个令牌对应一个特定的第三方网站,同时该令牌只能在特定 ...

  4. AIDL小结

    AIDL : Android Interface Define Language(接口定义语言) Service中跨进程间通信利器.... 一般都会有Client端和Server端(Server端提供 ...

  5. Linux:下载方式安装lrzsz

    若机器服务使用yum源安装,可先下载好lrzsz文件后再上传安装 步骤一: 先下载lrzsz的tar包:wget https://ohse.de/uwe/releases/lrzsz-0.12.20. ...

  6. [转]常用的快速Web原型图设计工具

    转自大神: http://www.cnblogs.com/lhb25/archive/2009/04/25/1443254.html 做产品原型是非常重要的一个环节,做产品原型就会用使用各式各样的工具 ...

  7. 排序算法(JAVA)

    import java.util.Random;      /**  * 排序测试类  *   * 排序算法的分类如下:  * 1.插入排序(直接插入排序.折半插入排序.希尔排序):  * 2.交换排 ...

  8. 14.S5PV210串行通信编程实战

    1.整个程序流程分析(1)整个串口通信相关程序包含2部分:uart_init负责初始化串口,uart_putc负责发送一个字节2.串口控制器初始化关键步骤(1)初始化串口的Tx和Rx引脚所对应的GPI ...

  9. LSTM 分类器笔记及Theano实现

    相关讨论 http://tieba.baidu.com/p/3960350008 基于教程http://deeplearning.net/tutorial/lstm.html LSTM基本原理http ...

  10. C#pdf 切割成图片

    引用 using Ghostscript.NET;using Ghostscript.NET.Rasterizer; 需要安装 exe文件 public static GhostscriptVersi ...