javaEE
liujn347
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
servlet生命周期
1.tomcat是web服务器,也是servlet和jspweb容器,相当于jsp和servlet运行环境;jsp和servlet可以和tomcat内部变量进行交互,例如servlet调用HttpRequest;tomcat处理页面能力不如apache,主要是业务逻辑处理。2.servlet是web服务器内部的java应用程序,相当于客户端请求与web服务器响应的中间层,客户端发送请求后,原创 2013-11-29 22:12:08 · 476 阅读 · 0 评论 -
git flow使用
在这里主要讲一下我在项目中用到的关于gitflow的用法。 公司的项目中,专门有一台用来存放版本库的服务器,路径是在默认的安装目录/opt/git/,那么在使用的时候,如果你是一个功能模块或者是一个项目的发起者的话,那么你可以选择使用gitflow来进行管理,关于gitflow的好处在这里我就不在多讲了。 1、首先在上面刚刚讲到的目录(注意这是在专门的盛放版本库的那台服务器上)内,转载 2016-07-21 16:54:59 · 307 阅读 · 0 评论 -
redis和memcache区别
1.memcache和redis都是存储在内存中,memcache还可以存储图片、视频等数据2.memcache只支持键值对数据结构,redis还支持 list、set、hash等数据结构3.redis用完内存后,会把不常用的数据从内存copy到磁盘,redis可以定期将数据保存到磁盘4.memcache挂掉后,数据不可恢复,redis数据丢失后可以通过aof恢复5.redis支持原创 2014-01-02 10:35:59 · 1006 阅读 · 0 评论 -
如何提高服务器缓存命中率
1.可以动态配置缓存时间,通过监控系统,通过不同的缓存时间,观察缓存命中率,如果缓存命中率达到了90%,则说明这个缓存时间设置合理,2.通过使用多级hash缓存:假如一个hash表数据存储在一个arr[size]数组中,那么元素位置计算方式为:int location = key%size;但是不同key,可能有相同的位置,这样就会造成缓存命中率下降,解决办法:多维数组,20-25行原创 2014-01-19 23:03:45 · 2541 阅读 · 0 评论 -
java高并发解决方案
1.当某个页面访问量很大时,而且涉及到商品名称、商品颜色尺码等改动不大的数据(可以保存在redis集群)时,对于这些数据,可以建立一个后台管理 系统,例如后台修改商品后台系统后,通过mq消息通知,修改redis中相应的数据;对于热门商品 (数据量不大),可以存放到jvm内存中,这样当访问量很大时,如果是热门商品 ,从内存中读取数据很快,如果不是热门数据,从redis集群中读取,也不慢,原创 2014-02-27 00:47:13 · 671 阅读 · 0 评论 -
Hibernate session.get()和session.load()方法的区别
了解session.get()和session.load()方法的区别? * get不支持lazy,load支持lazy lazy表示只有在用到的时候才加载数据, 如:Student student = (Student)session.load(Student.class,1); //不会发出SQL语句 student.g转载 2014-03-01 21:53:04 · 505 阅读 · 0 评论 -
scope="prototype"
1.spring 默认scope 是单例模式,这样只会创建一个Action对象2.每次访问都是同一个Action对象,数据不安全3.struts2 是要求 每次访问 都对应不同的Action,可以保证 当有请求的时候 都创建一个Action对象4.新建一个spring-config-struts.xml配置文件原创 2014-01-17 18:06:14 · 510 阅读 · 0 评论 -
Http协议
1. Http协议就是报文(ASCII串)和类MIME组成,规定在http客户端和http服务端之间交互使用,http报文一般用tcp链接,2.http是面像事物的应用层协议,所谓事物,就是一系列的信息操作,要么全部成功,要么全部失败3.http协议本身是无连接的,通信双方交换http报文前是不要建立http连接的;http协议是无状态的,客户端像服务器发送第二次请求,如果与第一次请求相同原创 2014-01-13 22:42:37 · 587 阅读 · 0 评论 -
java内存泄露
1.Test a = new Test(); Test b = a;2.如果对象b的生命周期比对象a长,那么当a的生命周期结束后,对象b和a指向的内存空间不会释放,直到对象b的生命周期结束;如果对象b引用了很多类似对象a的对象,容易造成内存不够,解决办法是当对象b的生命周期结束后,b = null, 而不是等到整个主线程结束后,b指向的内存空间才被GC3.jdk6.0 S原创 2014-01-18 16:39:04 · 491 阅读 · 0 评论 -
hashMap hashTable TreeMap linkedHashMap区别
1.TreeMap会对键进行排序,linkedHashmap 键怎么进去,怎么出来 hashMap键和值都没有顺序 ,如果hashMap的键是自定义的对象,则要实现hashcode()和equals();equals()只有两个引用指向同一个对象时,才会返回true, hashtable是线程同步的在线程安全情况下,使用hashtable,需要额外的开销:线程同步要开销2.hash原创 2014-01-17 13:56:24 · 537 阅读 · 0 评论 -
java同步以及I/O操作带来的影响
1.如果是单线程,则没必要线程同步,因为线程同步要额外开销(内存加锁、线程切换等),2.对应java jdk封装好的类,如果是同步方法,但是不需要使用同步,则可以copy java jdk源码,去掉方法同步代码,然后自己封装,3.对于一个一个字节读取文本的方法,最好使用通过缓冲区读取方式读取数据,批量从文本读取数据后,放入缓冲区,减少读取文本的次数原创 2014-01-17 17:44:29 · 505 阅读 · 0 评论 -
properties文件使用 spring(web项目)
1.新建一个spring-config.xml文件 <!-- file:C://important1.properties --> classpath:important1.properties原创 2014-01-17 13:43:28 · 688 阅读 · 0 评论 -
web.xml配置注意事项
1.加载顺序为context-param->listner->filter-servlet2.context-param:web容器启动时加载本地配置文件 3.getServletConfig().getServeletContext.get("xxxbean");//获取某个bean4.getservletConfig().getInitParameter("xxx");//获取某个属原创 2013-11-29 22:11:40 · 530 阅读 · 0 评论 -
EJB基于哪些技术实现?SessionBean…
1.EJB:enterprise java bean是sun的服务器端组件模型,一组标准,最大用处是部署分布式应用,可以使用EJB开发基于组件的企业级应用 2.EJB是java核心代码,包括Session Bean,entity bean,MessageDriverBean,基于JNDI,RMI,JAT等技术实现JNDI:java naming and directory inter原创 2013-11-29 22:12:17 · 1451 阅读 · 0 评论 -
servlet与cgi区别
1.servlet处于服务器进程中,可以通过多线程运行多个service()方法,一个实例服务于多个请求,servlet实例一般不会销毁2.cgi:common gateway interface,客户端与服务器之间传输数据的一种标准3.cgi对于每个请求都创建一个进程,一个实例服务于一个请求,服务完成后,销毁实例,效率没有servlet高原创 2013-11-29 22:12:10 · 675 阅读 · 0 评论 -
uml实战
UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现类与类图1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。2) 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能,要承担什么样的义务。一个类可以有多种职责,设计得好的类一般只有一种职责,在定义类的时候,将类的职责分解成为类的属性转载 2016-07-21 18:46:36 · 2775 阅读 · 0 评论
分享