Java swing项目-图书管理系统(swing+mysql+jdbc) 总结
(一)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) 总结的更多相关文章
- Java swing项目-图书管理系统(swing+mysql+jdbc)
(一)项目功能分析 该项目是设计一个图书管理系统,主要包含的内容有: (1)管理员登陆界面 ->信息录入 ->登录 ->重置 (2)图书管理系统总界面 ->子界面菜单: 1)图 ...
- java web 项目 图书管理系统的设计与实现
java web 项目 图书管理系统的设计与实现
- 简单的员工管理系统(Mysql+jdbc+Servlet+JSP)
员工管理系统 因为学业要求,需要完成一个过关检测,但是因为检测之前没有做好准备,且想到之前用mysql+jdbc+Struts2+bootstrap做成了一个ATM系统(主要有对数据的增删改查操作), ...
- ORM练习项目-图书管理系统(BMS)实现细节
分析 一本书 可以由多个作者编著 一本书只能由一个出版社出版 一个作者可以写多本书 每个作者有自己的简介 对应关系: Author-Book # 多对多 Publish-Book # 一对多 Auth ...
- javac 编译java文件提示: 程序包com.mysql.jdbc不存在
需要将引用的包放到:/usr/java/jdk1.7.0_75/jre/lib/ext 也就是jdk安装目录/jre/lib/ext 目录下面
- JAVA图书管理系统汇总共27个
好多人都在搜索图书管理系统,感觉这个挺受欢迎的,所以整理了一系列的图书管理系统,让大家选择.java图书馆管理系统[优秀毕业设计论文+源码]http://down.51cto.com/data/683 ...
- JAVA图书管理系统汇总共27个[转]
java图书馆管理系统[优秀毕业设计论文+源码]http://down.51cto.com/data/68350java+sql server图书管理系统 http://down.51cto.com/ ...
- 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 ...
- Mybatis批量更新报错com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException
批量更新数据,非常简单的一段代码,硬是报错,插入的数据也能显示出来 List<User> userlist = new ArrayList<User>(); userlist. ...
随机推荐
- onethink入门笔记(一)
由于公司需求所以大概花了一个星期搞了一个一个基于onethink的数据管理平台demo不得不说onethink这个基于thinkphp3.2.3的框架还是很棒的 让我这个没基础过php的人也能在一星期 ...
- Linux下安装JDK并配置环境变量
1. 查询是否默认安装有JDK [root@localhost bin]# java -version java version "1.6.0_22" OpenJDK Runtim ...
- VS2013安装
下载 等待下载完成之后,虽然下载文件是ios格式,但可以用解压缩工具解压打开.解压好后,双击vs_ultimate.exe,开始安装. 自定义选择安装路径,同意许可条款,进行下一步. 在选择安装的可选 ...
- FFT的分析以及matlab实验
FFT(Fast Fourier Transformation),即为快速傅氏变换,是离散傅氏变换(DFT)的快速算法. 采样得到的数字信号,做FFT变换,N个采样点,经过FFT之后,就可以得到N个点 ...
- UEditor演变的迷你版编辑器
建立一个demo.html文件,首先在需要添加编辑器的地方加入以下代码,使用style可以设置编辑器的宽度和高度. <script type="text/plain" id= ...
- 利用nginx来屏蔽指定的user_agent的访问以及根据user_agent做跳转
对于做国内站的我来说,我不希望国外蜘蛛来访问我的网站,特别是个别垃圾蜘蛛,它们访问特别频繁.这些垃圾流量多了之后,严重浪费服务器的带宽和资源.通过判断user agent,在nginx中禁用这些蜘蛛可 ...
- Winform DataGridView控件添加行号
有很多种方法,这里介绍三种: A: 控件的RowStateChanged事件中添加,RowStateChanged事件是在行的状态更改(例如,失去或获得输入焦点)时发生的事件: e.Row.Hea ...
- avalon全选效果分析讲解
全选功能就是 1.点击全选控制循环元素是否选中.(点击全选,下面的所有元素选中,再次点击 所有元素取消选中.) 2.点击循环元素控制全选.(如果当前元素是未选中状态则全选不选中,如果当前元素是选中状态 ...
- 重走java---Step 1
开发环境 1.使用java开发,首先要完成java运行环境的安装配置,JVM可以说是java最大的优点之一,就是它实现了java一次编译多次运行,关于JVM以后再详谈.安装配置JDK,完成java开发 ...
- 错误“Sources”参数中指定了多次。“Sources”参数不支持重复项。
在“Sources”参数中指定了项“”多次.“Sources”参数不支持重复项. Asp.Net关于错误“Sources”参数中指定了多次.“Sources”参数不支持重复项. “Sources”参数 ...