学习笔记
文章平均质量分 73
Richard_J
Java攻城狮
展开
-
深入Java集合学习系列:HashMap的实现原理
参考文献引用文献:深入Java集合学习系列:HashMap的实现原理,大部分参考这篇博客,只对其中进行稍微修改自己曾经写过的:Hashmap实现原理1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现(Hashtable跟HashMap很像,唯一的区别是Hashtalbe中的方法是线程安全的,也就是同步的)。此实现提供所有可选的映射操作,并允许使用nul转载 2014-06-13 16:01:59 · 548 阅读 · 0 评论 -
Strut2学习——基础笔记(4)一个小的bbs项目(命名规则)
命名规则a) 原则:简单就是美b) 数据库的名称 :项目名称c) 表的命名:_Model名 {_+对应内容的英文名词(驼峰标识或者全大写) },如:_Topicd) 字段:保持和属性名一致(尽量不要起名和数据库命名冲突)e) 用层来划分包com.bbs.action model(bean) service dto(vo) f) Action XXXXActiong) *-* h) 前台: /原创 2013-07-18 16:20:01 · 634 阅读 · 0 评论 -
关于ubuntu安装之后系统grub被破坏了之后进行修复的总结("error:file not found。 grub rescue")
头几天在电脑上面安装双系统,在安装了windows后安装ubuntu来玩玩,结果当我把ubuntu安装成功的时候,从新启动电脑出现了如下的界面:Grub loading!welcome to Grub!error :file not found! Entering rescure mode>当出现上面的情况的时候我上网查资料知道了是grub被破坏了,花了很长的时间最终把这个问题解决了,下面贴出解转载 2014-03-24 13:59:46 · 2044 阅读 · 0 评论 -
ubuntu下mysql的常用命令
一、mysql服务操作 0、查看数据库版本 sql-> status; 1、net start mysql //启动mysql服务 2、net stop mysql //停止mysql服务 3、mysql -h主机地址 -u用户名 -p用户密码 //进入mysql数据库 4、quit //退出mysql操作 5、mysqladmin -u用户名 -p旧密码 passwor转载 2014-04-19 15:33:25 · 376 阅读 · 0 评论 -
Strut2学习——基础笔记(2) Action部分
第一讲 基础知识Tomcat设置 设置默认jdk 将该目录下的struts.xml拷入src目录中 将该目录下的jar包拷入WEB-INF/lib中 对web.xml进行配置filter> filter-name>struts原创 2013-07-18 16:19:57 · 785 阅读 · 0 评论 -
C语言编辑计算器(含括号)
#include#include#define MaxSize 99void translate(char str[],char exp[]) { struct { char data[MaxSize]; int top; }op;转载 2014-03-20 17:24:57 · 2022 阅读 · 1 评论 -
JavaBean与HashMap的相互转化
http://tcrct.iteye.com/blog/262833http://www.oschina.net/code/snippet_119671_4746转载 2013-11-22 12:45:23 · 2290 阅读 · 0 评论 -
Web服务器父与子 Apache和Tomcat区别
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。在Apache基金会里面Apache Server永远会被赋予最大的支持,毕竟大儿子最亲嘛,而Apache的开源服务器软件Tomcat同样值得关注,毕竟Tomcat是开源免费的产品,用户会给予最大的支持。但是经常在用Apache和Tom转载 2014-03-31 22:31:26 · 562 阅读 · 0 评论 -
linux的常用命令
if 语句结束case 语句结束head 3.txthead -3 3.txtclear 清屏find /etc -name *local etc目录下名字含local的文件where is ls ls这个命令所执行的文件的位置echo $PATH 查看环境变量ln 3.txt 4 创建一个到3.txt的链接 更改3的内容4原创 2013-08-19 16:35:30 · 631 阅读 · 0 评论 -
git使用方法(一)
Linux项目开始后,绝大多数的Linux内核维护工作都花在了提交补丁和保存归档的繁琐事物上(1991——2002年间)。到2002年,整个项目组开始启用分布式版本控制系统BitKeeper来管理和维护代码。到2005年的时候,开发BitKeeper的商业公司同Linux内核开发社区的合作关系结束,他们收回了免费使用BitKeeper的权力。这就使得Linux开源社区不得不开发了自己的版本控制软件转载 2014-03-13 13:09:42 · 645 阅读 · 0 评论 -
vim教程小结篇
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 第一讲小结 1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。 h (左移) j (下行) k (上行) l (右移)转载 2014-03-10 21:40:43 · 500 阅读 · 0 评论 -
Ubuntu 12.04安装Hadoop
在Ubuntu 12.04安装Hadoop过程详解。相关阅读:在Ubuntu 12.10 上安装部署Openstack http://www.linuxidc.com/Linux/2013-08/88184.htmUbuntu 12.04 OpenStack Swift单节点部署手册 http://www.linuxidc.com/Linux/2013-08/88182.h转载 2014-03-10 22:18:26 · 718 阅读 · 0 评论 -
vim入门教程
vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中 就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这 些命令,您就能够很容易将vim当作一个通用的万能编辑器来使用了。 完成本教程的内容大约需要25-30分钟,取决于您训练的时间。 每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上转载 2014-03-10 21:36:57 · 652 阅读 · 0 评论 -
vim入门教程
vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中 就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这 些命令,您就能够很容易将vim当作一个通用的万能编辑器来使用了。 完成本教程的内容大约需要25-30分钟,取决于您训练的时间。 每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上转载 2014-03-10 21:35:14 · 458 阅读 · 0 评论 -
2014年TOP10的PHP框架
PHP 框架是非常有用的工具,可以帮助开发者构建干净整洁和结构化的 web 开发,同时也加快了创建和维护 web 应用的速度。在这里,我们会介绍排名前 10 并且最受欢迎的 PHP 框架(排名不分先后)。 Laravel 这款可能是现在最受欢迎的 PHP 框架,Laravel 非常强大,而且很高雅,易于学习和使用。非常值得一试! Flight转载 2014-01-13 15:35:46 · 706 阅读 · 0 评论 -
hibernate马士兵笔记
1 新建项目2 学习建立user-library-hibernate,并加入相应的jar包 a项目右键-build path-configure build path-add library b选择user-library,在其中新建library,命命为hibernate c 在该library中加入hibernate所需要的jar包 hiber转载 2013-08-09 21:16:14 · 890 阅读 · 0 评论 -
什么是数据持久化?
狭义的理解: “持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。● 保存:把域对象永久保存到数据库。● 更新:更新数据库中域对象的状态。● 删除:从数据库中删除一个域对象。● 加载:根据特定的OID,把一个域对象从数据库加载到内存。● 查询:根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载内在存中。转载 2013-12-27 13:13:21 · 4621 阅读 · 2 评论 -
MyBatis的动态SQL详解
基础部分可以查看我的另一篇博客:http://haohaoxuexi.iteye.com/blog/1333271 MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻辑。MyBatis中用于实现动态SQL的元素主要有: ifchoose(when,otherwise)trimwheresetforeachi转载 2014-04-20 19:31:04 · 391 阅读 · 0 评论 -
git push 提示 Everything up-to-date
原文链接:http://blog.rexzhao.com/2011/11/28/google-code-git-everything-up-to-date-when-push.html第一次在 Google Code 上弄项目,注册完毕后,尝试增加一个新文件用以测试 Git 是否好好工作。结果在 Push 时却显示 Every up-to-date,检查文件时却发现实际上一转载 2014-03-13 22:07:17 · 15569 阅读 · 1 评论 -
浅析MVC模式与三层架构的区别
浅析MVC模式与三层架构的区别三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层)三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。1、表现层(UI):通俗讲就是展现给用户的界面,转载 2014-04-07 15:55:36 · 683 阅读 · 0 评论 -
java web开发 高并发处理
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的转载 2014-05-24 11:16:15 · 485 阅读 · 0 评论 -
hadoop中使用MapReduce编程实例
原文链接:http://www.cnblogs.com/xia520pi/archive/2012/06/04/2534533.html从网上搜到的一篇hadoop的编程实例,对于初学者真是帮助太大了,看过以后对MapReduce编程基本有了大概的了解。看了以后受益匪浅啊,赶紧保存起来。 1、数据去重 "数据去重"主要是为了掌握和利用并行化思想来对数据进行有意义转载 2014-05-14 18:57:56 · 1156 阅读 · 0 评论 -
Java对象的序列化和反序列化实践
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。 把Java对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为Java对象的过程称为对象的反序列化。 对象的序列化主要有两种用途:转载 2014-05-12 13:50:03 · 340 阅读 · 0 评论 -
谈谈Java虚拟机——Class文件结构
大家都知道,Java之所以如此受人喜欢,很大的原因是要规于它的跨平台性。“一次编写,到处运行”,Java诞生之时曾提出的著名的宣传口号,充分表达了软件开发人员对冲破平台界限的渴求。或许大部分程序员都认为Java虚拟机执行Java程序是一件理所当然和天经地义的事,但时至今日,商业机构和开源机构已经在Java语言之外发展出一大批在Java虚拟机之上运行的语言,如Clojure、Groovy、J转载 2014-04-12 15:34:47 · 555 阅读 · 0 评论 -
MainActivity 访问 fragment_main.xml 中的组件 空指针
最近开始学习Android开发,遇到MainActivity 访问 fragment_main.xml 中的组件空指针问题,各种查资料,原创 2014-04-26 15:09:46 · 1123 阅读 · 0 评论 -
Spring MVC 教程,快速入门,深入分析
资源下载:Spring_MVC_教程_快速入门_深入分析V1.1.pdfSpringMVC核心配置文件示例.rar 作者:赵磊博客:http://elf8848.iteye.com 目录 一、前言二、spring mvc 核心类与接口三、spring mvc 核心流程图四、spring mvc Dispatc转载 2014-05-11 10:35:38 · 325 阅读 · 0 评论 -
移动端webapp开发必备知识
移动设备的用户越来越多,每天android手机的激活量都已经超过130万台,所以我们面向移动终端的WebAPP也开始跟进了。本文主要介绍webapp的开发与调试的相关知识和经验,以及给出几种可选的解决方案。一、基本概念(1) CSS pixels与device pixelsCSS pixels: 浏览器使用的抽象单位, 主要用来在网页上绘制内容。device pix转载 2014-05-15 20:04:21 · 899 阅读 · 0 评论 -
JDK的动态(静态)代理机制(转载并整理修改)
首先说下,鉴于网上大量的垃圾代码,以及设计模式上面讲的很难看懂,本人写了个超级简单的(或许只是二逼的我认为的,呵呵)首先说下个人的理解:代理的目的就是在你做事之前、之后、过程中。。。不改变你的行为(代码)加点其他东东静态代理代码如下:1 package proxy.myproxy.staticProxy;2 3 public interface Us原创 2013-08-06 16:20:22 · 667 阅读 · 0 评论 -
Java之泛型编程
1.概念 泛型就是参数化类型。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。2.案例1)先看下面案例://不适用泛型编程 Apple app0=new Apple(); Apple app1=new Apple(); List li = new ArrayList(); li.add(app0);转载 2014-05-09 13:52:43 · 396 阅读 · 0 评论 -
设置Ubuntu允许远程连接MySQL
启动mysqlroot@ubuntu:~#/etc/init.d/mysql start本地可以连接进入数据库。root@ubuntu:~#mysql -uroot -p设置了远程访问权限:mysql> grant all PRIVILEGES on *.* to admin@'%' identified by '123456';Query OK, 0 rows a转载 2014-03-11 15:19:02 · 575 阅读 · 0 评论 -
MySQL性能优化的最佳20+条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为转载 2014-04-06 10:01:50 · 502 阅读 · 0 评论 -
Android 系统的四层结构
从上图中可以看出,Android 系统架构为四层结构,从上层到下层分别是应用程序层(Applications)、 应用程序框架层 (Application Framework)、系统运行库层(Libraries)以及 Linux 内核层(Linux Kernel),分别介绍 如下:1. 应用程序层(Applications)Android 平 台不仅仅是操作系统,转载 2014-04-23 12:17:13 · 1253 阅读 · 0 评论 -
数据挖掘中 决策树算法实现——Bash
一、决策树简介: 关于决策树,几乎是数据挖掘分类算法中最先介绍到的。决策树,顾名思义就是用来做决定的树,一个分支就是一个决策过程。 每个决策过程中涉及一个数据的属性,而且只涉及一个。然后递归地,贪心地直到满足决策条件(即可以得到明确的决策结果)。 决策树的实现首先要有一些先验(已经知道结果的历史)数据做训练,通过分析训练数据得到每个属性对结果转载 2014-05-15 11:25:16 · 733 阅读 · 0 评论 -
spring IOC 机制模拟实现
最近对spring IOC AOP 机制实现原理了解了下,在此做下整理,希望能给需要的朋友予以帮助。整理的资料来自互联网,文章开头是我写的测试代码例子,可以直接导入eclipse,别忘了导入dom4jjar包。 例子代码下载链接:http://download.csdn.net/source/630961 利用java的反射和动态代理实现IOC转载 2014-05-09 14:30:41 · 468 阅读 · 0 评论 -
java WEB开发:过滤器、监听器、拦截器的区别
1.过滤器Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码、做一些业务逻辑判断等。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户是否已经登陆、转载 2014-04-09 15:25:05 · 563 阅读 · 0 评论 -
破解凯撒密码(离散数学)
首先来看以下恺撒密码。离散数学的一道作业题。凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密。例如,如果密匙是把明文字母的位数向后移动三位,那么明文字母B就变成了密文的E,依次类推,X将变成A,Y变成B,Z变成C,由此可见,位数就是凯撒密码加密和解密的密钥。题目如下:It is kn转载 2014-04-08 15:02:07 · 2192 阅读 · 0 评论 -
hibernate 版本(version)控制
Hibernate支持乐观锁。当多个事务同时对数据库表中的同一条数据操作时,如果没有加锁机制的话,就会产生脏数据(duty data)。Hibernate有2种机制可以解决这个问题:乐观锁和悲观锁。这里我们只讨论乐观锁。 Hibernate乐观锁,能自动检测多个事务对同一条数据进行的操作,并根据先胜原则,提交第一个事务,其他的事务提交时则抛出org.hibernate.StaleOb转载 2013-12-27 13:01:58 · 1762 阅读 · 0 评论 -
Hibernate的基本映射数据类型
Hibernate的基本映射数据类型是Java基本类型与标准SQL类型相互转换的桥梁,其关系如图4-7所示。 通过Hibernate的基本映射数据类型可以非常方便地将数据从一种形式转换成另一种形式,完成高质量的ORM任务。例如: 表4-4列出了这3种数据类型之间的对应关系。表4-4 3种数据类型之间的对应关系转载 2013-12-27 14:31:52 · 787 阅读 · 0 评论 -
Ubuntu用tar备份与恢复方法
在 使用Ubuntu之前,相信很多人都有过使用Windows系统的经历。如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工 具(通常都是私有软件),然后重启电脑进入备份工具提供的软件环境,在这里备份或者恢复Windows系统。Norton Ghost是备份Windows系统时经常使用的备份工具。在备份Windows系统的时候你可能想过,我能不能把整个C盘都放到一个Z转载 2013-10-02 15:42:07 · 2211 阅读 · 0 评论 -
Ubuntu 12.04 输入法托盘图标消失
安装完Ubuntu 12.04后,发现输入法托盘图表有时会找不到,但是按Ctrl+Space键仍然能够唤出输入法。网上查找了下,据说是Beta版就存在这个Bug了。解决办法: 1、重启输入法(临时) 在终端(Terminal)[快捷键 Ctrl+Alt+T]里面输入:1 killall ibus-daemon2 ibus-daemon -d 2、彻底解转载 2013-10-02 17:52:09 · 590 阅读 · 0 评论