查找模块:

年龄可进行段查找。

其他的都是模糊匹配。

空格为无用字符,会屏蔽的(除年龄)。

(如果在年龄中输入空格,会出现异常,当时没想到这点,要防护这点很容易的,但因为在这个小软件的编写过程,我主要学的是java项目开发的分层思想,软件可能bug比较多,望见谅。)

/*
* QueryPanel.java
*
*/ package cn.hncu.addr.ui; import javax.swing.JFrame;
import javax.swing.JOptionPane; import cn.hncu.addr.business.AddrBusiness; /**
*
* @author __chx__
*/
public class QueryPanel extends javax.swing.JPanel {
private JFrame mainFrame = null;
String[] strsQu = null; public QueryPanel(JFrame mainFrame) {
this.mainFrame = mainFrame;
initComponents();
myInitComponents();
} private void myInitComponents() {
strsQu = new String[6];
jtfAge1.setText("0");
jtfAge.setText("999");
} private void initComponents() { jLabel2 = new javax.swing.JLabel();
jlbName1 = new javax.swing.JLabel();
jtfName = new javax.swing.JTextField();
jtfxingbie = new javax.swing.JTextField();
jlbxingbie = new javax.swing.JLabel();
jlbAge = new javax.swing.JLabel();
jtfAge = new javax.swing.JTextField();
jtfDianhua = new javax.swing.JTextField();
jlbDianhau = new javax.swing.JLabel();
jlbAddress = new javax.swing.JLabel();
jtfAddress = new javax.swing.JTextField();
jbtnFind = new javax.swing.JButton();
jbtnreturn = new javax.swing.JButton();
jtfAge1 = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel(); setMinimumSize(new java.awt.Dimension(800, 600));
setLayout(null); jLabel2.setFont(new java.awt.Font("Microsoft YaHei UI", 3, 48));
jLabel2.setForeground(new java.awt.Color(255, 51, 0));
jLabel2.setText("\u67e5\u627e\u5730\u5740\u4fe1\u606f");
add(jLabel2);
jLabel2.setBounds(230, 20, 330, 90); jlbName1.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));
jlbName1.setText("\u59d3\u540d\uff1a");
add(jlbName1);
jlbName1.setBounds(140, 150, 60, 40);
add(jtfName);
jtfName.setBounds(200, 160, 130, 23);
add(jtfxingbie);
jtfxingbie.setBounds(200, 200, 190, 23); jlbxingbie.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));
jlbxingbie.setText("\u6027\u522b\uff1a");
add(jlbxingbie);
jlbxingbie.setBounds(140, 190, 60, 40); jlbAge.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));
jlbAge.setText("\u5e74\u9f84\u6bb5\uff1a");
add(jlbAge);
jlbAge.setBounds(120, 230, 80, 40);
add(jtfAge);
jtfAge.setBounds(340, 240, 70, 23);
add(jtfDianhua);
jtfDianhua.setBounds(200, 280, 330, 23); jlbDianhau.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));
jlbDianhau.setText("\u7535\u8bdd\uff1a");
add(jlbDianhau);
jlbDianhau.setBounds(140, 270, 60, 40); jlbAddress.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));
jlbAddress.setText("\u5730\u5740\uff1a");
add(jlbAddress);
jlbAddress.setBounds(140, 310, 60, 40);
add(jtfAddress);
jtfAddress.setBounds(200, 320, 410, 23); jbtnFind.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 24));
jbtnFind.setForeground(new java.awt.Color(255, 0, 51));
jbtnFind.setText("\u67e5\u627e");
jbtnFind.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnFindActionPerformed(evt);
}
});
add(jbtnFind);
jbtnFind.setBounds(140, 430, 110, 70); jbtnreturn.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 24));
jbtnreturn.setForeground(new java.awt.Color(0, 204, 204));
jbtnreturn.setText("\u53d6\u6d88");
jbtnreturn.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnreturnActionPerformed(evt);
}
});
add(jbtnreturn);
jbtnreturn.setBounds(490, 430, 110, 70);
add(jtfAge1);
jtfAge1.setBounds(200, 240, 70, 23); jLabel1.setText("\u2014\u2014");
add(jLabel1);
jLabel1.setBounds(290, 240, 41, 17);
} private void jbtnreturnActionPerformed(java.awt.event.ActionEvent evt) {
mainFrame.setContentPane(new ListPanel(mainFrame));
mainFrame.validate();
} private void jbtnFindActionPerformed(java.awt.event.ActionEvent evt) {
// 表现层代码的基本写法
strsQu[0] = jtfName.getText();
strsQu[1] = jtfxingbie.getText();
strsQu[2] = jtfAge1.getText();
strsQu[3] = jtfDianhua.getText();
strsQu[4] = jtfAddress.getText();
strsQu[5] = jtfAge.getText(); // 3.调用逻辑层
AddrBusiness set = new AddrBusiness();
Object[] objs = set.query(strsQu); // for(int i=0;i<objs.length;i++){
// System.out.println(objs[i]);
// }
// 4.根据逻辑层的返回结果,导向不同的结果界面
mainFrame.setContentPane(new ListPanel(mainFrame,objs));
mainFrame.revalidate(); } private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JButton jbtnFind;
private javax.swing.JButton jbtnreturn;
private javax.swing.JLabel jlbAddress;
private javax.swing.JLabel jlbAge;
private javax.swing.JLabel jlbDianhau;
private javax.swing.JLabel jlbName1;
private javax.swing.JLabel jlbxingbie;
private javax.swing.JTextField jtfAddress;
private javax.swing.JTextField jtfAge;
private javax.swing.JTextField jtfAge1;
private javax.swing.JTextField jtfDianhua;
private javax.swing.JTextField jtfName;
private javax.swing.JTextField jtfxingbie; }

【6】JAVA---地址App小软件(QueryPanel.class)(表现层)的更多相关文章

  1. Java---设计模式app小软件汇总应用

    写了一个app小软件,重点不在于软件,软件bug挺多,也没去修改. 这个小软件只是为了更好的说明和了解设计模块而做的. Java 程序设计–包结构 Java程序设计的系统体系结构很大一部分都体现在包结 ...

  2. 【1】JAVA---地址App小软件(AddressApp.class)(初步接触项目开发的分层思想)(表现层)

    这个是表现层的main方法. 实现的地址信息有: 姓名,性别,年龄,电话,地址. 实现的功能有: 增加地址: 删除地址: 修改地址: 查找地址:其中年龄的查找为年龄段的查找. 数据存储的方式为文件存储 ...

  3. 【2】JAVA---地址App小软件(ListPanel.class)(表现层)

    这个是表现层的主界面. /* * ListPanel.java * */ package cn.hncu.addr.ui; import javax.swing.JFrame; import java ...

  4. 【8】JAVA---地址App小软件(AddrDaoFile .class)(数据层)

    实现数据进行文件的存储和读写. 本软件也就到此结束了. 没多少可以讲的. 因为这个小软件也就8个类,主要学习的也就是一个分层思想的简单应用. package cn.hncu.addr.dao; imp ...

  5. 【5】JAVA---地址App小软件(DeletePanel.class)(表现层)

    删除地址的表现层类. 如果没有选中要删除的地址信息,会出现窗口提示: 删除地址界面:(无法修改数据,只能看) /* * DeletePanel.java * */ package cn.hncu.ad ...

  6. 【4】JAVA---地址App小软件(UpdatePanel.class)(表现层)

    修改地址信息的一个表现层类. 必须选中地址,才能修改,否则会弹出窗口提示, 修改地址界面: /* * UpdatePanel.java * */ package cn.hncu.addr.ui; im ...

  7. 【3】JAVA---地址App小软件(AddPanel.class)(表现层)

    添加地址信息界面. 年龄和地址必须是数字,否则会弹出窗口提示. 地址信息不能为空. /* * AddPanel.java * * Created on __DATE__, __TIME__ */ pa ...

  8. 【7】JAVA---地址App小软件(AddrBusiness.class)(逻辑层)

    这个...没多少好解释的... 表现层的增删改查的具体实现类. package cn.hncu.addr.business; import javax.swing.JOptionPane; impor ...

  9. Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解

    Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解 说明:Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解,加密算法,是现在每个软件项目里必须用到的内容. 广泛应用在包括 ...

随机推荐

  1. 将JSON数组显示前台Table中

    将JSON数组显示前台Table中 在最近的学习中遇到一个小问题,如何把JSON数组显示在前台的table中,经过一番借鉴和学习之后终于解决了这个问题.具体的代码如下: (前提:利用ajax获取过来的 ...

  2. android studio上代码编译调试中遇到的一些异常记录

    下面是记录的在平时代码编写或编译时的一些异常,答案有自己摸索出来的,也有参考其他程序猿朋友的,参考文章过多,就不一一贴出来了. ① E/JavaBinder: !!! FAILED BINDER TR ...

  3. Dhroid框架笔记(IOC、EventBus)

    dhroid 目前包含了6大组件供大家使用1.Ioc容器: (用过spring的都知道)视图注入,对象注入,接口注入,解决类依赖关系2.Eventbus: android平台事件总线框架,独创延时事件 ...

  4. (转)MySQL数据库命名规范及约定

    一.[操作规范]1. 如无备注,则表中的第一个id字段一定是主键且为自动增长:2. 如无备注,则数值类型的字段请使用UNSIGNED属性:3. 如无备注,排序字段order_id在程序中默认使用降序排 ...

  5. 状态开关按钮(ToggleButton)及按钮(Swich)的使用

    状态开关按钮(ToggleButton)和开关(Switch)也是由Button派生出来的,因此它们本质上都是按钮,Button支持的各种属性.方法也适用于ToggleButton和Switch.从功 ...

  6. CXF处理Date类型的俩种方式

    1. CXF利用wsdl2java生成客户端时Date日期类型转换 http://cwfmaker.iteye.com/blog/1142835 2. GregorianCalendar cal = ...

  7. 虚拟器运行iOS8地图提示错误

    /SourceCache/ProtocolBuffer_Sim/ProtocolBuffer-225/Runtime/PBRequester.m:799 server (https://gsp13-c ...

  8. 多核CPU利用测试

      一直在想程序上是否特意让线程在指定的CPU上去运行,这样可以提高运行效率,所以特地写个代码让CPU使用率画正弦曲线的实验,我使用的是AMD X4 641的CPU,为四核四线程的片子. 代码如下 # ...

  9. Hive学习之七《 Sqoop import 从关系数据库抽取到HDFS》

    一.什么是sqoop Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL ...

  10. Reverse Interger

    Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 Have you ...