摘要: PowerDesigner使用教程 —— 概念数据模型一、概念数据模型概述 概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。 通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系 (Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个 DBMS所支持的数据模型,这样的模型就是物理数据模 阅读全文
posted @ 2013-07-30 14:23 rhino 阅读(2362) 评论(0) 推荐(0)
摘要: 1import java.beans.PropertyChangeListener;import java.beans.PropertyChangeSupport;/** * @author huhy * */public class MyBean { private String id; private String name; private PropertyChangeSupport changeSupport = new PropertyChangeSupport( this); public MyBean(String id, Stri... 阅读全文
posted @ 2013-07-25 10:51 rhino 阅读(1251) 评论(0) 推荐(0)
摘要: Volatile: Volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到主内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。 Java语言规范中指出:为了获得最佳速度,允许线程保存共享成员变量的私有拷贝,而且只当线程进入或者离开同步代码块时才与共享成员变量的原始值对比。 这样当多个线程同时与某个对象交互时,就必须要注意到要让线程及时的得到共享成员变量的变化。 而volatile关键字就是提示VM:对于这个成员变量不能保存它的私有拷贝,而应直接与共享成员变量交互。 使用建议:在两个或者... 阅读全文
posted @ 2013-07-25 08:48 rhino 阅读(4371) 评论(1) 推荐(0)
摘要: private JTree jtNetDevice;//数组件申明private JScrollPane jspTree;//滚动面板申明1、初始化 DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("root"); jtNetDevice = new JTree(rootNode); jtNetDevice.setAutoscrolls(true); getTreeSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELE 阅读全文
posted @ 2013-07-23 16:11 rhino 阅读(1332) 评论(0) 推荐(0)
摘要: public class MyBorder extends AbstractBorder { private static final long serialVersionUID = 1L; private int xOff; private int yOff; private Insets insets; public MyBorder(int x, int y) { this.xOff = x; this.yOff = y; this.insets = new Insets(0, 0, this.xOff, this.... 阅读全文
posted @ 2013-07-11 10:58 rhino 阅读(1303) 评论(0) 推荐(0)
摘要: 关于这个问题,我得说一下,报表是为了了解企业而服务的,做为企业的一个外部关系人,我们应该从哪几个方面来了解企业呢。至少从三个方面,大家注意,我说的是至少,而不是只是。从哪三个方面呢?一个是企业财务状况,二是企业的经营成果,三是企业的现金流量。说白一点,就是,一是要搞清楚我目前有多少钱和欠人家多少钱,二是要搞清楚我这一段时间是赚了是赔了,如是赚了,赚多少,如果是赔了,赔多少,三是要搞清楚这一段时间从我手头上经手了多少实实在在的票子,收了多少票子,支出去了多少票子。我们就要搞清楚这三个方面的问题,为了让我们搞清楚这三个方面的问题,企业给我们准备了三张报表,一张是资产负债表,这是为了让我们搞清楚.. 阅读全文
posted @ 2013-07-09 10:07 rhino 阅读(1270) 评论(0) 推荐(0)
摘要: 1,不显示JTree父子之间节点的连线: tree.putClientProperty("JTree.lineStyle", "None");2,如何让JTree的添加节点可见: //主要用到的方法 DefaultMutableTreeNode root = new DefaultMutableTreeNode("root"); DefaultTreeModel model = new DefaultTreeModel(root); JTree tree = new JTree(model); tree.putClientPr... 阅读全文
posted @ 2013-06-09 11:09 rhino 阅读(396) 评论(0) 推荐(0)
摘要: sun在java2中引入了一些新的方法来帮助实现拖拽功能,这些新的类在java.awt.dnd包中实现一个D&D操作一般包括三个步骤:首先实现一个拖拽源,这个拖拽源和相应的组件是关联起来的第二步实现一个拖拽目标,这个目标用来实现拖拽物的接收第三步实现一个数据传输对象,该对象封装拖动的数据 _____________________ _____________________| | | | | DragSource Component| |DropTarget Component||_____________________| |____________________| | | |__ 阅读全文
posted @ 2013-05-28 16:45 rhino 阅读(4694) 评论(0) 推荐(0)
摘要: 1,实现按汉语拼音的排序 public static void sortByPinyin() { String[] arr = { "刘刘", "李飞", "王五", "老三", "贝贝", "啊三" }; Collator cmp = Collator.getInstance(java.util.Locale.CHINA); Arrays.sort(arr, cmp); List list = Arrays.asList(arr); System.out.println(l 阅读全文
posted @ 2013-05-10 08:49 rhino 阅读(275) 评论(0) 推荐(0)
摘要: 原文URL:http://blog.csdn.net/sunyujia/article/details/2614614 今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可能用语言也说不明白,从以前我发表的一篇文章可以看得出来,http://blog.csdn.net/sunyujia/archive/2008/03/23/2211109.aspx我的朋友们普通反应看完后觉得不知所云,可能是我写的太简单,下面步入正题。什么是远程调试,就是在A机器上利用Eclipse单步跟踪调试B机器上的Web应用,当然调试A机器上Web应用也是没有问题的,90%我都是调试本机的... 阅读全文
posted @ 2013-05-06 11:24 rhino 阅读(862) 评论(0) 推荐(0)
摘要: 1、基本用法JFileChooser dlg = new JFileChooser();dlg.setDialogTitle("Open JPEG file");int result = dlg.showOpenDialog(this); // 打开"打开文件"对话框// int result = dlg.showSaveDialog(this); // 打"开保存文件"对话框if (result == JFileChooser.APPROVE_OPTION) {File file = dlg.getSelectedFile();.. 阅读全文
posted @ 2013-04-27 10:11 rhino 阅读(21437) 评论(0) 推荐(0)
摘要: 1. 介绍 TestNG是一个设计用来简化广泛的测试需求的测试框架,从单元测试(隔离测试一个类)到集成测试(测试由有多个类多个包甚至多个外部框架组成的整个系统,例如运用服务器)。 编写一个测试的过程有三个典型步骤: * 编写测试的 业务逻辑并在代码中插入TestNG annotation * 将测试信息添加到testng.xml文件或者build.xml中 * 运行TestNG在欢迎页面上可以找到快速入门示例。下面是这篇文档使用的概念: * suite由xml文件描述。它包含一个或多个测试并被定义为<suite>标签 * test由<test>描述并包含一个或者多个Te 阅读全文
posted @ 2013-04-24 09:34 rhino 阅读(5629) 评论(0) 推荐(0)
摘要: SpringLayout的使用import java.awt.*;import javax.swing.*;public class SpringFormTest { public static void main(String args[]) { JFrame frame = new JFrame("Spring Form"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container contentPane = frame.getContentPane(); SpringLayout layou... 阅读全文
posted @ 2013-04-19 15:11 rhino 阅读(3105) 评论(0) 推荐(0)
摘要: class.getResource(String res)的使用 该方法是根据类的相对路径来访问资源的。如果该类没有package,则类的根路径是就是当前路径;如果该类有package,则类的根路径是定级包所在的路径。例如:Drawing没有定义package,Drawing.class与images在相同路径下这样访问:当前路径就是根路径Imageimg=(newImageIcon(Drawing.class.getResource("images/title.gif"))).getImage();Imageimg=(newImageIcon(Drawing.class. 阅读全文
posted @ 2013-04-09 14:08 rhino 阅读(3735) 评论(0) 推荐(0)
摘要: 用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switchJDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。enum Signal { GREEN, YELLOW, RED } public class TrafficLight { Sign... 阅读全文
posted @ 2013-04-09 10:50 rhino 阅读(467209) 评论(17) 推荐(56)
摘要: jvm classLoader architecture:a, Bootstrap ClassLoader/启动类加载器主要负责jdk_home/lib目录下的核心 api 或 -Xbootclasspath 选项指定的jar包装入工作.b, Extension ClassLoader/扩展类加载器主要负责jdk_home/lib/ext目录下的jar包或 -Djava.ext.dirs 指定目录下的jar包装入工作c, System ClassLoader/系统类加载器主要负责java -classpath/-Djava.class.path所指的目录下的类与jar包装入工作.b, User 阅读全文
posted @ 2013-04-09 10:35 rhino 阅读(900) 评论(0) 推荐(0)
摘要: 在开发java程序的过程中,我们经常要做的一件事就是获取资源。那么什么是资源呢?说白了,在计算机里那就是一堆数据。只是这堆数据对我们的java程序有多种表现形式,一般来说有File,URL,InputStream等等。而单就文件这一项就有很多种:配置文件,java类文件,jps文件,图片、css、js文件等等。面对这林林总总的资源,我们在设计一个读取资源的接口时,就需要针对不同形式的资源提供方法,这样就导致我们的接口还是与实际的资源形式绑定在一起,未能完全的抽象。另外,在java程序中资源的存放位置也是各异的。有的存放在classpath中,有的存放在文件系统中,有的存放在web应用中。而.. 阅读全文
posted @ 2013-04-08 17:03 rhino 阅读(2911) 评论(0) 推荐(0)
摘要: 1,今天用swing绘制的时候,发现一个十分奇怪的事情,绘制在frame的contentPane中的 树treeView在frame最小化,然后还原以后,树不见了。发现是因为在treeView的下面还有一个JScrollPane,初步怀疑是因为在frame最小化还原的时候,JScrollPane的位置发生了变化,没有在contentPane中显示了,导致JScrollPane中的treeView也没有显示,去掉JScrollPane以后,没有问题了。 具体的原因没有仔细研究,以后再分析JScrollPane吧。frame = new JFrame("TaxonomyEditor&qu 阅读全文
posted @ 2013-04-01 16:17 rhino 阅读(341) 评论(0) 推荐(0)
摘要: 一、什么是java注解注解,顾名思义,注解,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的。 Java注解又叫java标注,java提供了一套机制,使得我们可以对方法、类、参数、包、域以及变量等添加标准(即附上某些信息)。且在以后某个时段通过反射将标注的信息提取出来以供使用。二、自定义Java标注1为什么要自定义注解 Java从1.5版本以后默认内置三个标注:Ø@Override:只能用在方法之上的,用来告诉别人这一个方法是改写父类的。Ø@Deprecated:建议别人不要使用旧的API的时候用的,编译的时候会用产生警告信息,可以 阅读全文
posted @ 2013-03-29 14:26 rhino 阅读(409) 评论(0) 推荐(0)
摘要: import java.awt.BorderLayout;import java.awt.Insets;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.beans.PropertyChangeEvent;import java.beans.PropertyChangeListener;import java.util.Random;import javax.swing.BorderFactory;import javax.swin 阅读全文
posted @ 2013-03-27 15:39 rhino 阅读(6384) 评论(0) 推荐(0)