![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
skill
文章平均质量分 75
stefanie860624
这个作者很懒,什么都没留下…
展开
-
字符串中找出固定字符串出现n次的索引值
<br /> //找出letter在str中出现num次时的索引值<br /> public static int findNumber (String str,String letter,int num){<br /> int i = 0;<br /> int m = 0;<br /> char c = new String(letter).charAt(0);<br /> char []原创 2010-12-14 16:33:00 · 466 阅读 · 0 评论 -
LinkedHashMap的实现原理
深入Java集合学习系列:LinkedHashMap的实现原理文章分类:Java编程1. LinkedHashMap概述: LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 LinkedHashMap实现与HashMap的不原创 2012-02-09 17:53:13 · 1525 阅读 · 0 评论 -
用rsync对网站进行镜像备份
用rsync对网站进行镜像备份对系统管理员来说,平时的工作重心应该集中在维护系统正常运转,能够正常提供服务上,这里往往牵涉到一个数据备份的问题,在我所了解的情况中,有80%的系统管理员不是太关心自己服务器的安全性,但往往对备分镜像的技术相当感兴趣,但由于商业产品的软硬件价格都相当高昂,因此往往会选择自由软件。这里准备介绍的rsync就是这样的软件,它可以满足绝大多数要求不是原创 2012-02-10 10:46:27 · 333 阅读 · 0 评论 -
Spring 事务属性分析
Spring 事务属性分析事务管理对于企业应用而言至关重要。它保证了用户的每一次操作都是可靠的,即便出现了异常的访问情况,也不至于破坏后台数据的完整性。就像银行的自助取款机,通常都能正常为客户服务,但是也难免遇到操作过程中机器突然出故障的情况,此时,事务就必须确保出故障前对账户的操作不生 效,就像用户刚才完全没有使用过取款机一样,以保证用户和银行的利益都不受损失。在Spring 中,事务是原创 2012-02-10 15:27:50 · 405 阅读 · 0 评论 -
NIO应用
NIO:1,为所有的原始类型提供buffer缓存支持。2,字符集编码解码解决方案。3,channel 一个新的IO对象。4,支持锁和内存映射文件的文件访问接口。5,提供多路非阻塞式的高伸缩性网络IOpackage thread;import java.io.IOException;import java.net.InetSocketAddress;impor原创 2012-03-02 14:43:46 · 305 阅读 · 0 评论 -
Concurrent应用
一般的服务器都需要线程池,比如Web、FTP等服务器,不过它们一般都自己实现了线程池, 比如以前介绍过的Tomcat、 Resin和Jetty等,现在有了JDK5,我们就没有必要重复造车轮了,直接使用就可以,何况使用也很方便,性能也非常高。package concurrent;import java.util.concurrent.ExecutorService;import java翻译 2012-03-02 14:45:57 · 487 阅读 · 0 评论 -
大数据量处理
第一部分、 1、海量日志数据,提取出某日访问百度次数最多的那个IP。 此题,在我之前的一篇文章算法里头有所提到,当时给出的方案是:IP的数目还是有限的,最多2^32个,所以可以考虑使用hash将ip直接存入内存,然后进行统计。 再详细介绍下此方案:首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。 同样可以采用转载 2012-03-02 14:47:48 · 1226 阅读 · 0 评论 -
ConcurrentHashMap
ConcurrentHashMap的高并发性主要来自于三个方面:用分离锁实现多个线程间的更深层次的共享访问。用 HashEntry 对象的不变性来降低执行读操作的线程在遍历链表期间对加锁的需求。通过对同一个 Volatile 变量的写 / 读访问,协调不同线程间读 / 写操作的内存可见性。原创 2012-03-02 14:46:31 · 386 阅读 · 0 评论 -
线程总结
a,线程是进程中乱序执行的代码流程。对于一个进程中的多个线程来说,多个线程共享进程的内存块,当有新的线程的时候,共享原有的进程块的内存。线程间的通信很容易,速度很快。不同进程因为处于不同的内存块,因此进程之间的通信相对困难。(进程:一个内存中运行的应用程序,有自己独立的内存空间,一个进程中可以启动多个线程;线程:一个执行流程,一个进程可以运行多个线程,线程属于某个进程,进程中的多个翻译 2012-03-02 16:20:45 · 366 阅读 · 0 评论 -
探究gc
基本收集算法复制:将堆内分成两个相同空间,从根(ThreadLocal的对象,静态对象)开始访问每一个关联的活跃对象,将空间A的活跃对象全部复制到空间B,然后一次性回收整个空间A。因为只访问活跃对象,将所有活动对象复制走之后就清空整个空间,不用去访问死对象,所以遍历空间的成本较小,但需要巨大的复制成本和较多的内存。 标记清除(mark-sweep):收集器先从根开始访问所有活跃对象,标翻译 2012-04-26 15:38:59 · 541 阅读 · 0 评论 -
深究jvm类加载器
Jvm两种机制:1, 装载具有合适名称的类,---类装载子系统2, 负责执行一个负责执行包含在已装载的类和接口中的指令,---运行引擎每个jvm又包含方法区,栈区,堆区,程序计数器和本地方法类加载器是 Java 语言的一个创新,也是 Java 语言流行的重要原因之一。它使得 Java 类可以被动态加载到 Java 虚拟机中并执行。类加载器从 JDK1.0 就出现了,最初翻译 2012-04-26 15:25:03 · 451 阅读 · 0 评论 -
hashMap的实现原理
深入Java集合学习系列:HashMap的实现原理文章分类:Java编程1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个原创 2012-02-09 17:51:49 · 559 阅读 · 0 评论 -
java集合框架图
java集合框架图简化图:Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。 Java 2集合框架图 集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。 抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。 实现类:8个实现类(实线表示),对接口的具原创 2012-02-09 16:03:54 · 8367 阅读 · 0 评论 -
HashSet的实现原理
深入Java集合学习系列:HashSet的实现原理文章分类:Java编程1. HashSet概述: HashSet实现Set接口,由哈希表(实际上是一个HashMap实例)支持。它不保证set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用null元素。 2. HashSet的实现: 对于HashSet而言,它是基于HashMap实现的,Ha原创 2012-02-09 17:51:10 · 2697 阅读 · 0 评论 -
一个关于Spring AOP很有意思的问题。
<br /><br />Java代码<br>public class UserDAOImpl{ <br><br> public void save() { <br> // TODO Auto-generated method stub <br> System.out.println("user saved"); <br> } <br>} <br>//相关配置,省略了一些不相关内容 <br><bean id="userDAO" class="UserDAO翻译 2011-03-03 19:20:00 · 524 阅读 · 0 评论 -
allowedTypes文件类型
<br />tomcat中web.xml中: <br /><mime-mapping><br /> <extension>abs</extension><br /> <mime-type>audio/x-mpeg</mime-type><br /> </mime-mapping><br /> <mime-mapping><br /> <extension>ai</extension><br /> <mime-t原创 2011-02-22 17:06:00 · 518 阅读 · 0 评论 -
struts文件上传下载
<br /><br /><br />Struts2 多文件上传和下载<br /> <br /> Download.java:<br /> <br /> package com.cjg.action;<br /> <br />import java.io.InputStream;<br /> <br />import org.apache.struts2.ServletActionContext;<br /> <br />import com.opensymphony.xwork2.Actio原创 2011-02-22 17:03:00 · 496 阅读 · 0 评论 -
JDK动态代理和CGLIB代理
JDK动态代理为什么必须针对接口?其与CGLIB的对比示例代码:public interface AopService { public void doService();}public class AopServiceImpl implements AopService { private String singal; public转载 2012-02-08 18:02:59 · 555 阅读 · 0 评论 -
hibernate 概要
4, hibernate基础 4.1 hibernate基础语义 Configuration Configuration config = new Configuration().configure(); File file = new File("c:\\sample\\myhibernate.xml");原创 2012-02-09 11:49:03 · 577 阅读 · 0 评论 -
ArrayList的实现原理
深入Java集合学习系列:ArrayList的实现原理1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。它总是至少等原创 2012-02-09 15:23:56 · 2486 阅读 · 0 评论 -
LinkedHashSet的实现原理
深入Java集合学习系列:LinkedHashSet的实现原理文章分类:Java编程1. LinkedHashSet概述: LinkedHashSet是具有可预知迭代顺序的Set接口的哈希表和链接列表实现。此实现与HashSet的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可为插入顺序或是访问顺序。 注意,此实现不原创 2012-02-09 17:52:37 · 1168 阅读 · 0 评论 -
关联
一、多对一进行关联(多个学生对应同一间宿舍)---学生是主体,宿舍是附体,关联关系在主体学生中设置,在学生类中设置宿舍类,由于宿舍类只有一个可以直接用类来设置,在映射学生类 (User)中包含宿舍这个类(Room),在映射配置文件(User.hbm.xml)中定义哪个是主体类就在哪个配置文件定义关联关系.cascade属性:表示关联对象的持久化,该属性也要设置在主体中,作用转载 2012-02-09 11:12:51 · 246 阅读 · 0 评论 -
hibernate 总结
三、Hibernate核心API(理解) Configuration类: Configuration对象用于配置和启动Hibernate。Hibernate应用通过Configuration实例来指定对象-关系映射文 件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例。 SessionFactory接口:原创 2012-02-09 14:59:39 · 473 阅读 · 0 评论 -
java 动态代理 和 cglib代理
JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。 按照代理的创建时期,代理类可以分为转载 2012-04-28 16:59:52 · 419 阅读 · 0 评论