- 博客(71)
- 资源 (9)
- 问答 (1)
- 收藏
- 关注
原创 Java I/O 概述
I/O I/O 是 input 和 output 的简写,Java API 中,可以读入字节或字符序列的对象称为输入流,可以写入字节或字符序列的对象称为输出流。其来源地和目的地可以是文件,也可以是 socket、http、数组甚至是两个线程之间。 I/O 包下有几十个类文件,大概分为以下几种: 由InputStream、OutputStream、Reader、Writer为代表的
2017-03-05 11:35:15
325
原创 常用的正则表达式
匹配 HTML 标签<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?>抽取注释<!--(.*?)-->查找 CSS 属性^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1}提取网页中所有图片信息\\< *[img][^\\\\>]*[src] *
2017-02-26 16:01:25
297
原创 Maven 自动部署功能配置
简介利用 Maven 的tomcat7-maven-plugin插件,可以仅仅使用一行命令就可以将项目部署到本地或者远程的 Tomcat 上。 插件的名称虽然带有tomcat7,但经过我实际测验 Tomcat8 中也可以使用。 完成自动部署需要两步,首先是 Tomcat 的配置,其次是 pom 文件的配置。
2017-02-25 20:50:12
368
原创 离散数学学习笔记 基本逻辑 01
命题逻辑逻辑的基本成分是命题,命题是一个或真或假的陈述语句,即一个陈述事实的句子,但不能既真又假。 涉及命题的逻辑领域称为命题演算或命题逻辑。逻辑运算符非令 pp 为一命题,则 pp 的否定表示为 ¬p\lnot p,命题 ¬p\lnot p 读作” 非 pp”。与 (合取)令 pp 和 qq 为命题,p、qp、q 的合取用 p∧qp\land q 表示。即命题 pp 并且 qq。或 (析取)令
2016-12-16 18:24:08
1695
原创 Pyton学习总结(7)-异常
处理异常异常有不同的类型,其类型会作为消息的一部分打印出来,内置的异常 列出了内置的异常以及它们的含义。while True: try: x = int(raw_input("Please enter a number: ")) break except ValueError: print "Oops! That was no v
2016-09-27 16:27:37
407
原创 Python学习总结(6)-IO
格式化输出# 基本用法print 'We are the {} who say "{}!"'.format('knights', 'Ni')# 指定位置print '{1} and {0}'.format('spam', 'eggs')# output : eggs and spam# 使用关键字参数print 'This {food} is {adjective}.'.format(f
2016-09-27 14:43:27
317
原创 Python学习总结(5)-模块和包
模块模块是一个文件,包含可执行语句和函数。文件名就是模块名加上.py后缀。使用import导入模块,并且使用modelname.function的方式调用模块中的方法。模块中的可执行语句在第一次导入时执行。每个模块都有自己私有符号表,模块内定义的所有函数用其作为全局符号表。因此,模块的作者可以在模块里使用全局变量,而不用担心与某个用户的全局变量有冲突。另一方面,如果你知道自己在做什么,你可
2016-09-27 13:19:08
296
原创 Python学习总结(4)-数据结构
列表列表支持切片操作 详细的列表方法说明可参阅这里:深入列表 列表还可以作为栈和队列使用。但作为队列使用时在开头插入和弹出元素效率慢,可使用collections.deque map()、filter()、reduce()map()、filter()、reduce()函数的作用与JavaScript中类似。filter(function, sequence)返回的序列由
2016-09-26 17:49:55
292
原创 Python学习总结(3)-函数
定义函数def fib(n): '''do nothing''' pass关键字def定义函数,其后跟有函数名和以括号扩起来的形参列表。组成的函数体从下一行开始,且必须缩进。函数体第一行是可选的字符串,作用相当于Java/** */注释里的内容。同JavaScript类似,执行一个函数会引入一个用于存储局部变量的新符号表;变量引用首先查找局部符号表,然后是上层函数的局部符号表,
2016-09-26 16:18:57
263
原创 Python学习总结(1)-变量、数据类型
运算整数是int类型,带有小数的数字是float类型。int/int的结果为int并且向下取整。如果操作数有一个是float则返回float。//运算符,只返回商的证书部分。例如5.2//2=2.0、4//3=1。**用于幂乘方。7**2=49。int类型和float类型混合运算,最终结果为float类型。在交互模式下,变量_存储最近一次表达式的值。Python内建支持复数,使用后缀j
2016-09-26 09:28:02
257
原创 Python学习总结(2)-控制和循环语句
if、for、whileif x <0: print 'Hello World'elif x==0 : print 'Hello'else : print 'World'for i in range(10): print i# 遍历元组for i season in enumerate(['Spring', 'Summer','Fall', 'Winter']
2016-09-26 09:27:07
256
原创 Effective Java之类和接口
本文是《Effective Java》一书的整理笔记使类和成员的可访问性最小化 设计良好的模块会隐藏所有的实现细节,把它的API与它的实现清晰地隔离开来。然后,模块之间只通过它们的API进行通信,一个模块不需要知道其他模块的内部工作情况,这一概念被称为信息隐藏(information hiding)或封装(encapsulation) 封装的好处 它可以有效地解除组成系统各模块之间的耦合
2016-09-19 10:17:19
447
原创 设计模式
名称 定义 策略模式 封装了算法,为不同的算法提供统一的接口 单一职责 就一个类而言,应当仅有一个引起它变化的原因 开放封闭原则 类、模块、函数可以扩展,但是不可以修改 依赖倒转原则 抽象不应该依赖细节,细节应该依赖于抽象 里氏替换原则 子类型必须能够替换掉它们的父类型 装饰模式 动态的给对象添加额外的职责 代理模式 为其他对象提供一种代理以
2016-09-05 23:32:04
222
原创 Java中通过Spring读取Properties文件
背景:使用Maven搭建的多模块的Java Web项目,其中有common模块以及web模块 需求:common模块有个类需要读取SysConfig.properties文件,现要求将所有的配置文件都放到web模块下的resource目录中,方便修改. 解决方案:采用Spring读取properties,然后将property对象注入到PropertiesUtil类中bean 配置如下<bean
2016-09-05 15:28:53
1238
原创 JavaScript之表达式和运算符
1 表达式数组初始化表达式中,逗号之间的元素可以省略,空位会填充undefined。 在对象初始化表达式中,属性名称可以是字符串而不是标识符。 2 运算符概述 类型列表示期望的操作数类型,以及运算符结果类型。lval 表示左值。 运算符 操作 A N 类型 ++ 前 / 后增量 R 1 lval -> num – 前 / 后减量
2016-09-01 22:35:51
445
原创 JavaScript严格模式与非严格模式之间的区别
严格模式 非严格模式 禁止使用 with 语句 允许使用 with 语句 所有变量要先声明 使用未声明的变量将隐式声明为全局变量 函数 (非方法) 中的this是undefined this是全局对象 call()和apply()传入的第一个值不会被转换 call()和apply()传入的第一个值如果是null和undefined,则会被全局对象取代,如果是原始值则
2016-08-31 22:20:58
1623
原创 JavaScript之类型、值和变量
本文是《JavaScript 权威指南》的整理和总结1 概述JavaScript 的数据类型分为两类:原始类型 (primitive type) 和对象类型 (object type)。null和undefined代表了各自特殊类型的唯一成员。数组是带编号的有序集合对象。当没有任何引用指向一个对象,解释器会自动回收它所占的内存资源。 不在函数内声明的变量属于全局变量。2 数字Java
2016-08-31 22:16:59
537
原创 JavaScript之词法
1 字符集JavaScript 是采用 Unicode 字符集编写的。 JavaScript 区分大小写,并在凡事 JavaScript 代码中涉及到 HTML 的标签和属性时必须全部小写。 换行符 (\u000A)、回车符 (\u000D)、行分隔符 (\u2028)、段分隔符 (\u2029),被视为行结束符,回车符加换行符一起被视为一个单行结束符。 JavaScript 定义了一种特殊
2016-08-30 22:49:39
287
原创 Javascript 语法预览
var x = 2; //声明并初始化变量y = 2; //创建并初始化全局变量,在严格模式下报错// 声明并初始化一个对象var book = { topic : "Javascript", fat: true}book.fat //访问对象的属性book["fat"] //同上book.author = "Flanagan"; // 通过赋值创建一个新的属性。//
2016-08-30 22:44:00
291
原创 Effective Java之对所有对象通用的方法
本文是《Effective Java》一书的整理笔记1 equals 方法1.1 以下几种情况不需要覆盖equals类的每个实例本质上是唯一的 用Object提供的equals的实现就已经足够了不关心类是否提供了 逻辑相等 的测试功能超类提供的equals的行为对子类也适合枚举类型,以及单例类 对枚举类型而言,对象相同和逻辑相同是一回事 1.2 需要覆盖equals的几种
2016-08-22 14:38:25
324
原创 Effective Java之对象的创建和销毁
本文是《Effective Java》一书的整理笔记1 使用静态方法代替构造器 静态方法有名称,便于理解 静态方法可以返回已存在的对象,避免创建不必要的重复对象 静态方法可以返回原返回类型的任何子类型,增加灵活性 在创建参数化类型实例的时候,使代码更加简洁 2 存在多个构造器参数时考虑使用构造器 易于阅读 加强参数的约束条件,一旦有一个参数违反约束条件就创
2016-08-18 15:21:37
238
原创 设计模式之单例模式
单例模式的实现方式 名称 说明 懒汉式 线程不安全 懒汉式 线程安全 线程安全,开销大 饿汉式 线程安全,缺点是类加载的时候就初始化了 双重检验锁 线程安全,使用时才实例化,缺点是太复杂了 静态内部类 线程安全,使用时才实例化,实现起来比上面要简单一点,最常用的单例实现方式 枚举 利用枚举本身的特性实现单例,最推荐的做法1 懒汉式public
2016-08-17 16:51:15
273
原创 CSS选择器
1 基本选择器 选择器 说明 ID ID选择器 .class 类选择器2 伪类选择器 选择器 说明 :link 向未被访问的链接添加样式 :hover 鼠标悬停时选中元素上时 .class 类选择器 :active 向被激活的元素添加样式 :focus 向拥有焦点的元素添加样式,用户可以通过键盘或鼠标激活焦点 :visited
2016-08-17 11:38:58
258
原创 Effective Java 之通用程序设计
1 通用程序设计1.1 优先使用 for-each 代替for循环 for-each性能并不比for差,有时稍有性能优势 for-each可以减少出Bug的几率 for-each比for简洁 1.2 尽量使用标准库 减少重复造轮的时间 标准库的代码经过严格测试,在性能、稳定性方面有着非常大的优势 1.3 如果需要精确的答案,避免使用float和double
2016-08-15 09:07:48
345
原创 HTML 5新特性和HTML4对比
HTML 5 特性1 指定字符编码2 可以省略的标记元素3 具有 boolean 值的属性4 省略引号HTML5 新增和废除的元素1 新增的元素2 新增 input 元素的类型3 废除的元素31 使用 CSS 替代的元素32 不再使用 frame 框架33 只有部分浏览器支持的元素新增和废除的属性1 新增的属性11 表单相关的属性12 链接相关属性13 其他属性2
2016-08-14 21:38:52
1467
原创 欢迎使用优快云-markdown编辑器
欢迎使用 Markdown 编辑器写博客本 Markdown 编辑器使用 StackEdit 修改而来,用它写博客,将会带来全新的体验哦:Markdown 和扩展 Markdown 简洁的语法代码块高亮图片链接和图片上传 LaTex 数学公式 UML 序列图和流程图离线写博客导入导出 Markdown 文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl +
2016-08-14 21:14:18
86
原创 java表格的使用 单元格绘制二
JTable单元格是由单元格绘制器绘制出来的,这是一些执行TableCellRenderer接口的类。TableCellRenderer接口定义了唯一的getTableCellRendererComponent方法,返回对Component的引用,二Component则用来实现绘图操作。但是因为定义单独的类来执行TableCellRenderer比较方便,而且可以实现绘图操作,所以Tablecel
2013-07-12 15:58:05
973
原创 Java表格的简单使用一
JTable组件使用的是模型/视图/控制器的设计方式,将可视化组件从其数据中分离出来,因此表格中的数据都封装在数据模型中。其中最重要的支持类就是TableModel类,这个类用来定义JTable类以及其数据模型之间的接口。创建一个简单的表格:import java.awt.*;import javax.swing.*;public class SimpleTableTest ext
2013-07-12 15:05:30
5428
原创 表格2 2
package table;import javax.swing.table.AbstractTableModel;public class TableValues extends AbstractTableModel{ /** * */ private static final long serialVersionUID = 1L;
2013-07-11 17:40:59
91
原创 表格 11
package table;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.Font;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing
2013-07-11 17:40:32
112
原创 Servlet接口五种方法介绍
Servlet接口定义了5种方法:init()service()destroy()getServletConfig()getServletInfo()init()在Servlet实例化后,Servlet容器会调用init()方法来初始化该对象,主要是为了让Servlet对象在处理客户请求前可以完成一些初始化工作,例如:建立数据库的连接,获取配置信息等。对于每一个Servlet实
2013-07-11 11:19:35
2486
原创 JTable 表格设置某一单元格的颜色
table = new JTable(model){ private static final long serialVersionUID = 0L; Color color = getForeground(); public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
2013-06-21 15:52:25
2203
原创 设置列表框指定行的文字颜色
list.setCellRenderer(new MyRenderer(new int[] {2,3}, Color.RED)); //设置列表框的第2行和第3行文字颜色为红色class MyRenderer extends DefaultListCellRenderer { private Font font1; private Font font2
2013-06-14 09:18:06
1210
1
转载 Java多线程编程-使用线程的缺点
1、初始启动变慢 在某些平台上创建和启动新线程是相对较慢的操作,在性能至上的应用程序中,这可能是很大的缺点。不过,线程池技术为这类问题提供了简单的解决方案,执行很多并发操作的应用程序通常会使用线程池,尤其是当应用程序操作的完成速度较快时更适合使用线程池。线程池的概念类似数据库连接池。2、资源利用 每个线程都需要分配自身的栈,栈就是包含变量值和其他执行信息的存储区。除了栈之外
2013-06-07 17:55:37
650
原创 创建带有背景图片的JPanel
private Image backgroundImage = new ImageIcon(this.getClass().getResource("/images/beijingtupian.jpg")).getImage(); public JPanel eastScrollPanel = new JPanel(){ private static final long serial
2013-06-07 10:05:06
619
原创 Java多线程编程一
线程的基本概念线程:是一个程序里面不同的执行路径。Java中的线程是通过Thread类来实现的,每一个Thread类对象代表一个新的线程。通过创建Thread的实例来创建新的线程每个线程通过每个特定Thread对象所对应的方法run()来完成其操作,也就是说将要执行的代码写在run()内,run方法称为线程体。通过调用Thread类的start()方法来启动一个线程。//通
2013-06-07 09:14:03
471
原创 图表应用中缺失点的处理
例如画出如下表所示的曲线图。00:00142600:15140800:30140000:45139001:00143901:45120302:00148903:00145603:151490 …………该图要求每隔5分钟一
2013-06-03 17:27:40
584
vspm虚拟串口软件
2013-07-26
如何打包Eclipse RCP?
2015-12-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人