`
文章列表
将博客搬家至CSDN
        当通过Spring容器创建Bean实例时,不仅可以完成Bean的实例化,还可以为该Bean指定作用域。Spring中的Bean有5中作用域。         1.singleton:单例模式,在整个Spring Ioc中,使用singleton定义的Bean将只有一个实例。         2.prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新的            Bean实例。         3.request:对每次Http请求。只有在web中使用spring时才有效。         4.s ...
        ApplicationContext是spring的核心,它是一个巨大的工厂,也是一个功能超强的工厂。Spring框架的绝大多数功能都是通过它实现的。         Spring容器为对象设置属性的方式被称为控制反转(Inversion of Control,IoC),也叫依 ...
1.struts2的内部运行原理。2.java的类加载机制。3.HashMap、HashTable、ArrayList、LinkedList的内部源码。4.对设计模式的了解。5.利用sql语句对查询结果进行分页。6.java划分的内存区域,以及程序在这些区域中的分布。7.对sqlServer、Mysql、Oracle三大数据库的了解。8.除Hibernate以外的ORM框架。9.对spring的AOP的理解,及实现原理。10.在程序中如何利用事务,说说你做的项目中利用的事务的距离例子。11.数据库中的索引有几种情况?这些索引失效的情况有哪些?12.随意说出一段java的源码,你认为比较有意思 ...
个人总结,仅自己学习用。愿与大家一起分享!如有错误请指正。 一、String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的? 答:   1、String是字符串常量,StringBuffer和StringBuilder都是字符串变量。后两者的字符内容可变,而前者创建后内容不可变。 2、String不可变是因为在JDK中String类被声明为一个final类。 3、StringBuffer是线程安全的,而StringBuilder是非线程安全的。 ps:线程安全会带来额外的系统开销,所以StringBuilder的效率 ...
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简 要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后, JVM 的 GC 就会开始工作,那速度是一定会相当慢的。 而如果是使用 StringB ...
本文转载至博客园 想着每天能学个新东西,今天准备了这个hibernate+struts2实现页面的分页功能,在这里,首先要感谢 http://www.blogjava.net/rongxh7/archive/2008/11/29/243456.html 这位博友发表的博文,通过对他代码的阅读,从而自己实现了网页分页功能,以下是源代码,如大家有需要,可以回复我,我会放出源代码供大家下载! 1.DAO层接口的设计,定义一个PersonDAO接口,里面声明了两个方法: public interface PersonDAO { public List<Person& ...
转载至博客园 在做项目时通常用hibernate框架来进行数据库的一些操作,但是有时候网络条件差或者不联网的情况下,在对数据库进行增删改查操作时,总是会报下面的异常: Exception in thread "main" org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1418) at org.hibernat ...
本文转载至博客园。 在本篇随笔里将会分析一下hibernate的缓存机制,包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存,当然还要讨论下我们的N+1的问题。 随笔虽长,但我相信看完的朋友绝对能对hibernate的 N+1问题以及缓存有更深的了解。 一、N+1问题 首先我们来探讨一下N+1的问题,我们先通过一个例子来看一下,什么是N+1问题: list()获得对象:        /** * 此时会发出一条sql,将30个学生全部查询出来 */ L ...
说明:         Hibernate是一个ORM框架。也就是底层数据表和项目中实体对应关系的一个操作框架。当使用Hibernate操作底层数据库时,每一个底层数据库中的表大都对应与一个实体。所以对实体的操作会映射到对底层数据库的操作。那么,在Hibernate对对象进行操作时,对象有三种状态。   Hibernate对象的三种状态:Hiberante实体有三种状态,实体是被session管理。         1.瞬时态:对象刚刚被创建,没有被持久化,没有处于session中。该对象在内存中是自由存在的,与底                          层 数据库没有任 ...
说明:        工厂模式主要是为创建对象提供方便。工厂模式分为三种:             1.简单工厂模式             2.工场方法模式             3.抽象工厂模式     简单工厂模式: car接口: package com.shine.shejimoshi_factory;public interface Car {       void driver();}   奥迪车: package com.shine.shejimoshi_factory;public class Audi implements Car {    @Ov ...

java类集之Queue

Queue接口:            Queue用于模拟队列这种数据结构。Queue接口有一个PriorityQueue实现类。除此之外,Queue还有一个Deque接口,Deque代表一个”双端队列“。双端队列可以同时从两端来添加、删除元素,因此Deque的实现类既可 ...

java类集之List

 程序想删除一个A对象,List将会调用该A对象的equals方法依次与结婚元素进行比较,如果该equals方法以某个集合元素为参数时返回true,List将会删除该元素——A重写了equals方法,该方法总是返回true。所以我们每次从List集合中删 ...

栈 java实现

package com.shine.stack; /* * 栈的接口 */ public interface SStack<T> { boolean isEmpty(); void push(T x); T pop(); T get(); } package com.shine.stack; /* * 顺序栈类 */ public class SeqStack<T> implements SStack<T> {     private Object element[];     private int top;     public Se ...
         java容器中有三个接口:Iterator、collection、map这三个接口是java所有容器类的最大父接口。          collection的子接口主要有list、set、queue;                 list的实现类主要有:ArrayList、LinkedList、Vector、Stack                 set的实现类主要有:HashSet、TreeSet、LinkedHashSet                 queue的主要实现类有:PriorityQueue           Map接口的主要实现类有 ...
Global site tag (gtag.js) - Google Analytics