JAVASE窗体应用程序开发技术(一)

/
// 文档内容:GSMS技术要点整理
// 整理者:山月兰华
// 开始日期: 2014/06/02 03:39 -- 2014/06/10 23:09
//
/


1、Java数据库编程的方式:
(1)JDBC 是什么?
一种用于执行SQL语句的Java API,
可以为多种关系数据库提供统一访问,
它由一组用Java语言编写的类和接口组成。
JDBC提供了一种基准,据此可以构建更高级的工具和接口,
使数据库开发人员能够编写数据库应用程序,
同时,JDBC也是个商标名;
(2)JDBC 驱动程序的四种类型:
①JDBC-ODBC桥:如Access等;
②JDBC-Native桥:(较少用)
③JDBC-Net驱动:(较少用)
④纯JDBC驱动:如SQL Server、MySQL等;
(3)使用方法:
①在windows-管理工具-数据源(ODBC)中,配置好数据源,建好数据库,
然后在JAVA程序中加载相应的驱动程序后,就可以正常使用了;
②(还没用过!)
③(还没用过!)
④只需要下载相应的驱动程序,并放在
".\Java\jdk1.7.0_51\jre\lib\ext"目录下,
在相关的DBMS中创建好数据库,然后在程序中加载该驱动程序名,
就可以正常使用了;
(4)注意点
要加载的驱动程序的字符串大小写要注意;
2、生成数据库:
(1)在Power Designer 15 中设计好数据库,并生成相应的sql脚本,
如支持SQL Server 2008、MySQL 5.5、Access 2000等版本;
(2)利用sql脚本生成数据库:
SQL Server 2008: 先建好数据库,然后直接查询窗口运行sql脚本;
MySQL 5.5:
先建好数据库,在该数据库里面执行下面的命令:  
source D:/mytest/testdb.sql  (注意路径不用加引号的);
Access 2010: (还没用过!)
3、GridBagLayout和GridBagConstraints的用法:
(1)怎么控制网格大小?: 
①网格大小是相对来说的,无法具体地指定多少像素的大小,可以利用组件来作为比较的基准;
②相邻网格的伸缩变换是会相互影响的。
如一个组件的横向伸缩,会影响纵向相邻的组件的横向也同样地伸缩;
一个组件的纵向伸缩,会影响横向相邻的组件的纵向也同样地伸缩;
(2)适用组件: JFrame、JDialog、JPanel都亲自试验过,可以用;
但是,JFrame、JDialog有些特殊,不能直接设置背景色,必须如下:
this.getContentPane().setBackground(Color.red);

4、JPasswordField控件的输入值的获取:
(1)不能直接getPassword(),这样得到的不是输入的字符串;
String.valueOf(jpfPassword.getPassword());
5、改变字体:
(1)改变控件的字体:jlbTest.setFont(new Font("仿宋",Font.BOLD,20));
(2)改变绘图画笔的字体:
6、JDBC数据库访问的问题:
(1)如果需要返回的ResultSet结果集,则不能在返回使用这个之前关闭连接;
(2)com.microsoft.sqlserver.jdbc.SQLServerException: 只进结果集不支持请求的操作。
就是创建Statement的时候,默认的ResultSet,是无法滚动的,解决方法:
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
7、JComboxBox和ArrayList<T>的结合使用:
(1)首先在界面设计好了之后,不能用jcb = new JComboBox(Object[]),方式
企图达到改变原来的JComboBox组件,使他包含一些元素。以为,这样的做法,只是改变了
jcb引用的对象,并不能改变原来在布局中的组件,而且会丢失对界面组件的控制权;
(2)不能用JComboBox的removeAll(),他是将组件的布局容器给删除了,不是删除组件的内容项目;
(3)用removeAllItems(),先清空组件原来的内容,在将ArrayList对象的内容一个个地加进去,这是一种办法;
(4)还有一种方式是利用模板方法,在new JComboBox()的时候,传递一个ArrayList对象,
从而自动生成一个有ArrayList决定内容的JComboBox组件。自定义一个类的方式参考:
class ArrayListComboBoxModel extends AbstractListModel implements ComboBoxModel{}
(5)ArrayList的toArray()的使用:
①Object[] abc = arraylist.toArray();
jcb.addItem(abc[i]);
②String[] aaa = new String[arraylist.size()];
arraylist.toArray(aaa); //返回值可有可无,因为返回的和参数是一样的
jcb.addItem(aaa[i]);
③jcb.addItem(arraylist.get(i)); //直接对arraylist的元素操作
(6)JComboBox的ItemStateChanged事件的注意项:
①有两种状态:选中和取消选中,注意区分一下;
②要判断一下,元素内容项是否已全部加载完,完了之后才能做①中的处理代码,否则会异常;
8、SQLException: 从字符串转换日期和/或时间时,转换失败
(1)在sql语句中用java.sql.Date的对象;
(2)java.sql.Date的对象需要用到java.util.Date的对象的getTime()方法;
(3)使用格式如下:
java.sql.Date sDate = new java.sql.Date(new java.util.Date().getTime());
9、SQL联合查询:
(1)查看全部订单信息:
select T_Order.OID,PName,CName,GName,OCount,OrderDate,BalanceDate,Price,State,
TotalSub=Price*OCount
from T_Order,T_Person,T_Client,T_Goods,R_OrderDetail
where T_Order.PID = T_Person.PID 
and T_Order.CID = T_Client.CID
and T_Goods.GID = R_OrderDetail.GID and T_Order.OID = R_OrderDetail.OID
(2)如要某个特定的商品编号、人员编号或客户编号的信息,只需在后面添加条件即可
(3)查看订单记录时的计数方式:
select T_Person.PID,PName,OID,OrderCount =COUNT(*)
from T_Person,T_Order
where (Limits = 3 or Limits = 1)
and T_Person.PID = T_Order.PID
group by T_Person.PID,PName,OID
10、DefaultTableModel的用法:
(1)关于删除所有的行:要从最后一行开始循环,一次递减删除,否则会由于删除后的长度变化而出错;
(2)添加行:addRow(v);
(3)设置值:setValueAt(value,row,col);
11、Eclipse软件的常用快捷键使用:
(1)Alt+/:  自动补充。如for之后,采用这个快捷键就会自动补全循环结构;
(2)Ctrl+/: 注释选中行。
(3)Ctrl+k: 依次查找选中的变量名或函数;

附图是GSMS的主界面布局效果图:




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 我可以提供一些建议,但是最终实现还要取决于您的知识和技能。首先,应该对学生管理系统模型进行分析,以确定需要实现哪些功能。接下来,可以使用Java语言和相关框架来实现该系统。此外,可以使用数据库技术,如MySQL,来存储和管理数据。最后,可以通过设计友好的用户界面来提高用户体验。 ### 回答2: 学生管理系统是一种用来管理学生信息的软件系统。使用JavaSE的学生管理系统可以方便地对学生的基本信息、课程成绩和出勤记录等进行管理和查询。 首先,通过JavaSE中的类和对象特性,我们可以创建一个学生类作为学生信息的模型。学生类可以包含学生的姓名、学号、性别、年龄等属性,并提供相应的get和set方法来访问和修改这些属性。 然后,我们可以通过创建一个学生管理类来实现对学生信息的增删改查功能。通过使用集合类如ArrayList或HashMap来存储学生对象,我们可以方便地进行学生信息的管理。例如,通过addStudent方法可以向系统中添加学生,通过removeStudent方法可以删除学生,通过updateStudent方法可以更新学生信息等。 此外,为了实现更功能更全面的学生管理系统,我们可以创建课程类和出勤记录类,并与学生类进行关联。课程类可以包含课程名称、学分、任课教师等属性,出勤记录类可以包含学生出勤情况等属性。通过关联这些类,我们可以实现对课程成绩和出勤情况的管理和查询。 最后,可以通过一个简单的用户界面来展示学生管理系统的功能。例如,可以使用JavaSE中的Swing库创建一个窗口,并添加按钮和文本框等组件来实现对学生信息的操作。用户可以通过界面输入相关信息来进行学生信息的查询和修改。 综上所述,使用JavaSE一个学生管理系统可以方便地对学生的基本信息、课程成绩和出勤记录等进行管理和查询,并通过一个简单的用户界面提供友好的操作界面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值