java
candy13097816850
这个作者很懒,什么都没留下…
展开
-
Tomcat 6 JNDI数据源详解
数据库连接池这个概念应该都不陌生,在Java中连接池也就是数据库的连接池,它是一种采用连接复用的思想避免多次连接造成资源的浪费机制。最常见的连接池就是DBCP和C30P了,在tomcat中默认使用的DBCP的连接池,在Hibernate中则默认使用的是C3P0。他们的区别对于使用者来说最明显的就是,默认情况下DBCP不提供空闲连接的释放,需要手动开启。下面介绍下Tomcat中数据连接池的配转载 2017-07-04 15:19:51 · 163 阅读 · 0 评论 -
java线程池原理
Java并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任转载 2017-08-03 18:12:30 · 284 阅读 · 0 评论 -
Servlet运行原理
一:servlet定义Servlet是一个Java应用程序,运行在服务器端,用来处理客户端请求并作出响应的程序。Servlet多线程体系结构是建立在Java多线程机制之上的,它的生命周期是由Web容器负责的。 当客户端第一次请求某个Servlet时,Servlet容器将会根据web.xml配置文件实例化这个Servlet类,此时它贮存于内存中。。当有新的客户端请求该Servl转载 2017-08-04 11:57:00 · 358 阅读 · 0 评论 -
Servlet单例多线程工作机制
Servlet如何处理多个请求访问?Servlet容器默认是采用单实例多线程的方式处理多个请求的:1.当web服务器启动的时候(或客户端发送请求到服务器时),Servlet就被加载并实例化(只存在一个Servlet实例);2.容器初始化化Servlet主要就是读取配置文件(例如tomcat,可以通过servlet.xml的设置线程池中线程数目,初始化线程池通过web.xml,初始化每个参数值转载 2017-08-04 17:36:50 · 224 阅读 · 0 评论 -
redis面试总结
(1)什么是redis? Redis 是一个基于内存的高性能key-value数据库。 (有空再补充,有理解错误或不足欢迎指正)(2)Reids的特点Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每转载 2017-07-27 15:32:44 · 315 阅读 · 0 评论 -
master-slave模式
主从关系。一般来说用在数据库集群比较多,主要是实现读写分离。对于数据库应用而言基本上是读大于写,因此由 Master 服务器负责增、删、改操作,由 Slave 负责读操作(也就是 SELECT),Master 一般只有一台,而 Slave 可以有好多台。Slave 与 Master 之间会有心跳数据包(一般数据库服务器会提供配置)。当 Master 有数据写入时 Master 会将转载 2017-07-27 16:02:08 · 4740 阅读 · 0 评论 -
linux常见脚本命令
1、定位到大型文件中指定内容所在行,及前后若干行的数据。 grep -A 10 -B 5 '123' fileName 表示查看fileName文件含有字符串'123'对应所在行,后10行,前5行的内容,包含'123'所在的行。 其中A表示after,B表示before.原创 2017-07-27 16:05:02 · 422 阅读 · 0 评论 -
简要介绍DES、RSA MD5 sha1 四种加密算法的优缺点
美国数据加密标准(DES)是对称密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。密钥较短,加密处理简单,加解密速度快,适用于加密大量数据的场合。RSA是非对称算法,加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。密钥尺寸大,加解密速度慢,一般用来加密少量数据,比如DES的密钥。SHA1 和 MD5 是散列算法,将任意大小的数据映射到一个较小的、固定长度原创 2017-07-28 15:46:21 · 7118 阅读 · 0 评论 -
JDBC和连接池知识点
1. JDBC介绍JDBC全称为:Java DataBase Connectivity(java数据库连接)。SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。见图: 2.JDBC开发步骤@Testpublic void testJDBC() { Connection conn = null; PreparedStateme转载 2017-07-28 17:46:52 · 352 阅读 · 0 评论 -
java项目几种常见数据库连接池的使用比较
作者曾经主持以及经历的几个产品及项目中,包括了各种数据库及应用服务器,基本上几种常见的数据库连接池都用到了,根据使用的情况把这些连接池比较一下吧。感觉在介绍之前有必要阐述一下连接池的几个概念,有助于后边一些文字的理解。最原始的数据库使用就是打开一个连接并进行使用,使用过后一定要关闭连接释放资源。由于频繁的打开和关闭连接对jvm包括数据库都有一定的资源负荷,尤其应用压力较大时资源占用比较多容易产生性转载 2017-07-28 18:15:45 · 1144 阅读 · 1 评论 -
Java Filter过滤机制详解
Java Filter过滤机制详解以前以为Filter只是一个特殊点的Servlet,用进只需在web.xml中配置一下拦截路径就可以了,可经过这两天的深入学习,才知道以前对Filter类的了解和使用都太过浅薄了。在网上看了很多篇相关的技术文章,现提取它们中的精髓(我认为能说明问题的东西)及我个人的一些学习经验作如下总结,希望能帮助大家更好地理解Filter的过滤机制。要学习Filte转载 2017-07-25 14:34:36 · 373 阅读 · 0 评论 -
java中常见的session种类
1、java中经常会看到session,但是每种session表示的类其实是不一样的。2、用的最多的是httpsession,也叫用户session,主要用在javaweb开发中,session共享,session超时设置之类所提的session就是httpsession。其次是hibernate中的session,这个是用于数据库持久层操作的session有了它可以方便的操作hibern原创 2017-07-24 18:04:08 · 3342 阅读 · 0 评论 -
java高级开发面试题总结
面试题总结——JAVA高级工程师近期考虑换工作的问题,于是投简历面试,面试5家公司的高级Java工程师,有4家给了我offer,想着总结一下面试经验,方便最近正在寻求机会的你们一、无笔试题不知道是不是职位原因还是没遇到,面试时,都不需要做笔试题,而是填张个人信息表格,或者直接面试二、三大框架方面问题1、Spring 事务的隔离性,转载 2017-07-06 16:40:55 · 2541 阅读 · 0 评论 -
POJO和javabean的区别
OJO(Plain Old Java Object)这个名字用来强调它是一个普通java对象,而不是一个特殊的对象。2005年11月时,“POJO”主要用来指代那些没用遵从特定的Java对象模型,约定或框架如EJB的Java对象.理想地讲,一个POJO是一个不受任何限制的Java对象(除了Java语言规范)。例如一个POJO不应该是扩展预定的类,如 public c转载 2017-07-17 18:02:39 · 190 阅读 · 0 评论 -
利用redis实现tomcat session共享
需要在tomcat的lib目录下放入引用jar包commons-pool-1.6.jarjedis-2.1.0.jar tomcat-redis-session-manager-1.2-tomcat-7.jar修改tomcat的conf目录下的context.conf文件,添加如下红字配置WEB-INF/web.xml转载 2017-07-10 11:13:35 · 324 阅读 · 0 评论 -
JVM结构、GC工作机制详解
外话:最近在应聘阿里2015暑期实习,感触颇多。机会总是留给有准备的人的,所以平常一定要注意知识的巩固和积累。知识的深度也要有一定的理解,不比别人知道的多,公司干嘛选你?关于JVM和GC,我相信学Java的绝大部分人都听过,很多公司的面试官都爱问,一开始我也很头痛,问这么底层干什么,所以我每次面试也只是看看答案敷衍了事。最近面完阿里感觉真不能这样,知识不仅要知其然,还要知其所以然。其实弄懂了JVM转载 2017-07-31 10:29:06 · 189 阅读 · 0 评论 -
HashMap总结
基本结构:链表结构:static class HashMapEntry implements Entry { final K key; V value; final int hash; HashMapEntry next; ......} 数组存储所有链表:transient Hash转载 2017-07-31 16:38:02 · 271 阅读 · 0 评论 -
java发射机制获取属性,给属性设值
一个普通的实体Person:private int id;private String name;private Date createdTime;...//其它字段// get set方法...............现在需要把通过webService传过来的实体Person里面的所有字段的null值,换成""实现思路:1.获取实体的所有字段,遍历转载 2017-08-01 15:29:21 · 566 阅读 · 0 评论 -
中间件的意义
1、中间件位于用户应用程序和操作系统及网络环境之间的独立软件。它的存在是为应用程序和操作系统提供方便服务的,有了中间件,应用程序能方便简单的和操作系统之间交换数据。2、中间件相当于卖瓜老王,应用程序相当于吃瓜群众,操作系统相当于瓜农。有了卖瓜老王,吃瓜群众才能方便的吃到所有想吃的瓜农西瓜,不然的话,群众需要和每个瓜农完成交易。原创 2017-07-24 11:42:40 · 1082 阅读 · 0 评论 -
java初级开发面试题全集(下)
这部分主要是开源Java EE框架方面的内容,包括hibernate、MyBatis、spring、Spring MVC等,由于Struts 2已经是明日黄花,在这里就不讨论Struts 2的面试题,如果需要了解相关内容,可以参考我的另一篇文章《Java面试题集(86-115)》。此外,这篇文章还对企业应用架构、大型网站架构和应用服务器优化等内容进行了简单的探讨,这些内容相信对面试会很有帮助。转载 2017-07-24 17:41:38 · 689 阅读 · 0 评论 -
java初级开发面试题全集(上)
2013年年底的时候,我看到了网上流传的一个叫做《Java面试题大全》的东西,认真的阅读了以后发现里面的很多题目是重复且没有价值的题目,还有不少的参考答案也是错误的,于是我花了半个月时间对这个所谓的《Java面试大全》进行了全面的修订并重新发布在我的CSDN博客。在修订的过程中,参照了当时JDK最新版本(Java 7)给出了题目的答案和相关代码,去掉了EJB 2.x、JSF等无用内容或过时内容,补转载 2017-07-24 17:43:05 · 2104 阅读 · 0 评论 -
Java虚拟机工作原理详解
一、类加载器首先来看一下java程序的执行过程。 从这个框图很容易大体上了解java程序工作原理。首先,你写好java代码,保存到硬盘当中。然后你在命令行中输入[java] view plain copy javac YourClassName.java 此时,你的java代码就被编译成字节码转载 2017-09-25 15:01:54 · 294 阅读 · 0 评论