- 博客(54)
- 资源 (2)
- 收藏
- 关注
转载 最常用的 Eclipse 快捷键总结
本文是一些最实用、最齐全、最省时间的 Eclipse 快捷键总结,这些快捷键可以让帮助你完成工作中的任何一个操作。欢迎参考。 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。
2016-05-09 19:09:35 584
原创 Servlet生命周期
Servlet生命周期、工作原理1. Servlet生命周期:Servlet加载--->实例化--->服务--->销毁。2. init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet对象。可以配置服务器,可以在启动服务器或客户机首次访问Servlet时装入Servlet。无论有多少客户机访问
2016-03-17 10:03:47 456
原创 JavaWeb监听器、过滤器、
JavaWeb监听器:域监听器Ø ServletContext¨ 生命周期监听:ServletContextListener² 创建SErvletcontext触发:voidcontextInitialized(ServletContextEvent sce)² 销毁Servletcontext触发:voidcontextDestroyed(ServletCon
2016-03-17 10:02:06 447
原创 JDBC、事务、数据库连接池、DBUtils
JDBC使用JDBC连接数据库的规范代码(要求能默写出) @Test public void query() { Connection con = null; Statement stmt = null; ResultSet rs = null; try {Class.forName("co
2016-03-17 10:01:03 1676
原创 http协议、Request和Response、Cookie、HttpSession、JSP
http协议* 即超文本传输协议。它规定了浏览器与服务器之间的通讯规则。 * http是基于请求/响应模式的,所以分为请求协议和响应协议请求请求内容就是客户端发送给服务器的数据!1. 请求格式:1) 请求首行2) 请求头3) 空行4) 请求体(或称之为请求正文)2. 请
2016-03-17 09:58:45 5894 1
原创 JDK7的5种GC类型
SerialGCParallelGCParallelOld GC (Parallel Compacting GC)ConcurrentMark & Sweep GC (or “CMS”)GarbageFirst (G1) GCSerial GC使用标记整理法Serial GC不应该被用在服务器上。这种GC类型在单核CPU的桌面电脑时代就存在了。使用Serial GC会
2016-03-17 09:56:01 6195 1
转载 HTTPS协议,SSL协议及完整交互过程
HTTPS协议,SSL协议及完整交互过程SSL1. 安全套接字(Secure Socket Layer,SSL)协议是Web浏览器与Web服务器之间安全交换信息的协议。2. SSL协议的三个特性Ø 保密:在握手协议中定义了会话密钥后,所有的消息都被加密。Ø 鉴别:可选的客户端认证,和强制的服务器端认证。Ø 完整性:传送的消息包括消息完整性检查(使用
2016-03-17 09:53:13 19417
原创 SpringData学习笔记
使用Spring Data JPA开发步骤1. 导入相关jar包2. 配置applicationContext.xml配置文件1) 配置数据源2) 配置JPA的EntityManagerFactory3) 配置事务管理器4) 配置支持注解的事务
2016-02-02 11:32:30 5291
原创 JAP学习笔记(3)之映射关系和二级缓存
映射关联关系单向多对一Order、Customer多对一1) 使用@ManyToOne来映射多对一的关联关系。2) 使用@JoinColumn来映射外键。3) 使用@ManyToOne的fetch属性来修改默认关联属性的加载策略。4) 保存时先保存1的一端,后保存多的一端,可避免产生多余的UPDATE语句。
2016-01-27 17:37:20 1457
原创 JPA学习笔记(2)之相关接口/类
JPA相关接口/类Persistence1. 作用:通过createEntityManagerFactory的静态方法,获取EntityManagerFactory(实体管理器工厂)实例。1) 带有一个参数:以JPA配置文件presistence.xml中持久化单元名为参数。使用presistence.xml文件中设置的属性。2) 带有
2016-01-26 19:21:43 1360
原创 JAP学习笔记(1)之概述、基本用法和基本注释
JPA概述什么是JPA1. JPA:(Java Persistence API)用于对象持久化的API。2. 作用:提供了标准的ORM规范,使得应用程序以统一的方式访问持久层。 JPA与Hibernate的关系1. PA 是 hibernate 的一个抽象(就像JDBC和JDBC驱动的关系)1) JPA 是
2016-01-25 18:12:52 2500
转载 BlockingQueue的核心方法
BlockingQueue的核心方法:1. 放入数据:1) offer(anObject):表示如果可能的话,将anObject加到BlockingQueue里,即如果BlockingQueue可以容纳,则返回true,否则返回false.(本方法不阻塞当前执行方法的线程)2) offer(E o, long timeout, TimeUnit unit),可以设定
2016-01-25 15:40:13 3948 1
转载 NIO缓存区(4)之通道、管道
文件通道FileChannel无法设置为非阻塞模式,它总是运行在阻塞模式下。 打开FileChannel 我们无法直接打开一个FileChannel,需要通过使用一个InputStream、OutputStream或RandomAccessFile来获取一个FileChannel实例从FileChannel读取数据 调用多个read()方法之一从FileChannel中读取数据
2016-01-24 11:30:00 572
转载 NIO缓冲区(3)之分散(Scatter)/聚集(Gather)、通道之间的数据传输和选择器(Selector)
分散(Scatter)/聚集(Gather)分散(scatter):从Channel中读操作时将读取的数据写入多个buffer中。即,Channel将从Channel中读取的数据“分散(scatter)”到多个Buffer中。 聚集(gather):写入Channel是指在写操作时将多个buffer的数据写入同一个Channel,即,Channel 将多个Buffer中的数据“聚集(gat
2016-01-24 11:29:00 585
转载 NIO缓存区(2)之Buffer
缓冲区(Buffer)缓冲区本质上是一块内存空间。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。Buffer的基本用法 使用Buffer读写数据一般遵循以下四个步骤: · 写入数据到Buffer· 调用flip()方法· 从Buffer中读取数据· 调用clear()方法或者c
2016-01-24 11:25:50 662
原创 NIO学习笔记(1)之组成、NIO与IO区别、NIO和IO如何影响应用程序的设计和通道
Java NIOJava NIO 由以下几个核心部分组成: · Channels· Buffers· SelectorsChannel 和 Buffer Channel 有点象流。 数据可以从Channel读到Buffer中(channel.read(buf)),也可以从Buffer 写到Channel(channel.write(
2016-01-24 11:22:06 680
原创 java程序员面试笔试宝典之算法思路总结
1. 如何从链表中删除重复元素(NO2_DeleteDup.java)1) 遍历链表,把遍历到的值存储到一个hashTable中,在遍历过程中,若当前访问的值在hashTable中,则删除这个数据。2) 双重循环遍历2. 如何找出单链表中倒数第K个元素(NO3_FindEndK)定义两个指针p1、p2,p2比p1先行k-1步。
2016-01-24 11:16:20 1758
转载 SQL语言(3)之limit子句
五、limit子句 LIMIT用来限定查询结果的起始行,以及总行数。 例如:查询起始行为第5行,一共查询3行记录 SELECT * FROM emp LIMIT 4, 3; --> 其中4表示从第5行开始,其中3表示一共查询3行。即第5、6、7行记录。约束* 约束是添加在列上的,用来约束列的!1. 主键约束(唯一标识) ****非空*** ****唯一
2016-01-24 11:14:27 1351
转载 SQL语句学习(2)之基本查询、排序、聚合函数、分组查询
一、 基本查询1. 字段(列)控制1) 查询所有列 SELECT * FROM 表名; SELECT * FROM emp; --> 其中“*”表示查询所有列 2) 查询指定列 SELECT 列1 [, 列2, ... 列N] FROM 表名; SELECT empno, ename, sal, comm FROM 表名; 3) 完全重复的记录只一次
2016-01-24 11:11:12 1122
转载 SQL语句学习
SQL1. 什么是SQL:结构化查询语言(StructuredQuery Language)。2. SQL的作用:客户端使用SQL来操作服务器。 > 启动mysql.exe,连接服务器后,就可以使用sql来操作服务器了。 > 将来会使用Java程序连接服务器,然后使用sql来操作服务器。3. SQL标准(例如SQL99,即1999年制定的标准): > 由国际标准化组织(IS
2016-01-24 11:08:59 412
转载 ThreadPoolExecutor详解
ThreadPoolExecutor详解ThreadPoolExecutor的完整构造方法的签名是:ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,long keepAliveTime, TimeUnit unit,BlockingQueue workQueue, ThreadFactory threadFactory,Re
2016-01-24 11:07:42 562
原创 java锁(2)ReentrantReadWriteLock
ReentrantReadWriteLock1. 特点:ReentrantReadWriteLock是一个读写锁,它提供了一个读锁和一个写锁,读锁用于只读操作,而写锁用于写入操作,读操作可以并行进行,而写操作则是互斥的。读锁和写锁的分离在一些写少读多的应用中可以带来性能上的提升2. 读锁与写锁的约束关系1) 当任一线程持有写锁或读锁时,其他线程
2016-01-24 11:05:56 300
原创 java锁(1)之ReentrantLock
ReentrantLock1. 特点:1) ReentrantLock提供了两种锁:公平锁和非公平锁。2) ReentrantLock是可重入的:一个线程可以多次调用lock成功,但要求调用了多少次lock,就需要对应调用多少次unlock3) ReentrantLock除了实现Lock接口外,还提供了一些辅助的方法,如:is
2016-01-24 11:00:11 522
原创 AQS的原理(1)
AQSAQS中同步状态其中state表示同步状态,为32位整数,用来表示锁的数量。AQS主体流程AQS中提供了获取和释放锁有两种模式:独占式和共享式。1. 独占模式:1) acquire:以独占的模式获取对象,忽略中断。2) acquireInterruptibly:以独占模式获取对象,如果中断则停止。3) release:以独占模式释放对象。
2016-01-24 10:56:46 623
原创 ConcurrentHashMap原理(2)之用分离锁实现多个线程间的并发写操作
ConcurrentHashMap 类ConcurrentHashMap 在默认并发级别会创建包含 16 个 Segment 对象的数组。每个 Segment 的成员对象 table 包含若干个散列表的桶。每个桶是由 HashEntry 链接起来的一个链表。如果键能均匀散列,每个 Segment 大约守护整个散列表中桶总数的 1/16。下面是 ConcurrentHashMap 的
2016-01-24 10:52:40 4798
转载 ConcurrentHashMap 原理(1)之内部类HashEntry 、Segment
ConcurrentHashMap 的结构分析ConcurrentHashMap 类中包含两个静态内部类 HashEntry 和 Segment。HashEntry 用来封装映射表的键 / 值对;Segment 用来充当锁的角色,每个 Segment 对象守护整个散列映射表的若干个桶。每个桶是由若干个 HashEntry对象链接起来的链表。一个 ConcurrentHashMap 实例中包含由
2016-01-24 10:47:40 8685 1
原创 阻塞队列BlockingQueue的核心方法
BlockingQueue的核心方法:1. 放入数据:1) offer(anObject):表示如果可能的话,将anObject加到BlockingQueue里,即如果BlockingQueue可以容纳,则返回true,否则返回false.(本方法不阻塞当前执行方法的线程)2) offer(E o, long timeout, TimeUnit unit),可以设定
2016-01-24 10:43:16 697
原创 AQS在几个同步工具类使用
AQS在几个同步工具类使用SemaphoreSemaphore 是只允许一定数量的线程同时执行一段任务。信号量Semaphore的主要作用是来控制同时访问某个特定资源的操作数量,或者同时执行某个指定操作的数量。 Semaphore只是计数,不包括许可对象,并且Semaphore也不会把许可与线程对象关联起来,因此一个线程中获得的许可可以在另外一个线程中释放。 Semph
2016-01-24 10:42:05 733
原创 Spring学习笔记(3)之Spring对JDBC的支持
Spring对JDBC的支持使用JdbcTemplate跟新数据库1. JDBCTemplate的使用1) 创建连接池的相关配置a) 导入资源文件:即导入写有连接池配置的相关信息的配置文件b) 配置C3P0 Bean。2) 配置Spring的JDBCTemplate:即配置JDBCTemplate的Be
2016-01-24 10:39:02 633
原创 Spring学习笔记(2)之Spring AOP
Spring AOPAOP简介1. AOP(Aspect-OrientedProgramming, 面向切面编程): 是一种新的方法论, 是对传统 OOP(Object-Oriented Programming, 面向对象编程) 的补充.2. AOP 的主要编程对象是切面(aspect), 而切面模块化横切关注点.3. 在应用 AOP 编程
2016-01-24 10:32:58 365
原创 Sprint学习笔记(1)之Spring中的Bean配置
Spring中的Bean配置IOC & DI概述1. IOC(控制反转):器思想是反转资源获取的方向。1) 传统:资源查找方式要求组件向容器发起请求查找资源。作为回应回应,容器适时的返回资源。 2) IOC:容器主动地将资源推送给它所管理的组件,组件所要做的就是选择一种合适的方式来接受资源。2. DI(依赖注入):IOC
2016-01-24 10:29:55 1527
原创 Springmvc(5)之多部件表单、json交互和拦截器
多部件表单(图片上传)1. 导入上传图片的jar包1) commons-fileupload-1.2.2.jar2) commons-io-2.4.jar2. 创建图片虚拟存储目录在conf/server.xml文件,添加虚拟目录:绝对路径” path=”虚拟路径” reloadable=”false”/>3.
2016-01-24 10:12:35 2119
原创 Springmvc学习笔记(4)之复杂参数类型绑定、校验、数据回显和异常处理
复杂类型参数绑定包装类型pojo1. 第一种方法:在形参中 添加HttpServletRequest request参数,通过request接收查询条件参数。2. 第二种方法:在形参中让包装类型的pojo接收查询条件参数。1) 页面参数:商品名称:"itemsCustom.name"/>2) ItemsQuery:
2016-01-23 19:00:57 4232
转载 Python学习视频
零基础入门学习Python(全42集) 链接:http://pan.baidu.com/s/1qWNmdKo 密码:jrjy 中谷python视频教程(全38集) http://pan.baidu.com/s/1o6LUn1o 老男孩Python运维系统开发(全36集)链接:http://pan.baidu.com/s/1sjuJLEl 密码:kypbLet's-python系列视频教
2016-01-23 16:08:55 694
转载 MyEclipse快捷键
Ctrl+M切换窗口的大小Ctrl+Q跳到最后一次的编辑处Ctrl+/ 在代码窗口中是这种//~注释。Ctrl+Shift+/ 在代码窗口中是这种注释,在JSP文件窗口中是。Alt+Shift+O(或点击工具栏中的Toggle MarkOccurrences按钮) 当点击某个标记时可使本页面中其他地方的此标记黄色凸显,并且窗口的右边框会出现白色的方块,点击此方块会跳到此标记处。
2016-01-23 10:57:00 245
原创 Springmvc学习篇(3)之参数绑定
参数绑定绑定过程1. 从客户端请求key/value数据。2. 经过参数绑定,将key/value数据绑定到controller方法的形参上。3. springmvc中,接收页面提交的数据是通过方法形参来接收。支持的数据类型默认支持的类型直接在controller方法形参上定义下边类型的对象,就可以使用这些对象1
2016-01-23 10:40:29 717
原创 MySQL数据库引擎
数据库索引的数据结构:采用的是B+Tree文件系统采用的是B-Tree为什么采用B+Tree一般来说,索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上。这样的话,索引查找过程中就要产生磁盘I/O的消耗,所以评价一个索引的优劣的重要指标就是I/O的操作次数。I/O的操作次数与数的高度有关。数的高度O(h)=O(logdN)。由此可见d越大索引的性能
2016-01-22 19:27:39 616
原创 Struts2学习笔记(3)之国际化
国际化配置国际化全局资源文件1. 准备资源文件,资源文件命名格式:例如中国大陆:baseName_zh_CN.properties美国:baseName_en_US.properties在资源文件中以键-值的形式表现出来。2. 在struts.xml中通过struts.custom.i18n.resources常量把资源文件定义为全局资源文件:
2016-01-22 19:21:25 575
原创 Struts2学习笔记(2)之Result
ResultResult类型1. dispatcher:类似于转发,是result的默认type类型,不能转发到其他action中。2. redirect:类似于重定向,不能重定向到其他action中。3. chain:类似于转发,可以转发到其他action中。4. redirectAction:类似于重定向,可以重定向到
2016-01-22 19:19:01 695
原创 Struts2学习笔记(1)之Action
ActionURL的拆分1. 除工程名外,其余部分分为2部分。一是用来对应package,二是用来对应package内的action。2. Namespace决定了action的访问路径,默认为””,可以接收所有路径的actionnameSapce可以写为/,或者/xxx,或者/xxx/yy.对应的action访问路径为/index.acti
2016-01-22 19:15:32 630
ncurses-5.9.tar.gz
2015-01-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人