04 2015 档案
摘要:spring的作用域将对Bean的生命周期和创建方式产生影响.主要分为五种类型的作用域singleton (默认)在spring IOC容器中仅存在一个Bean实例,Bean以单实例的方式存在.prototype 每次从容器中调用Bean时,都返回一个新的实例...
阅读全文
摘要:Spring配置文件是用于指导Spring工厂进行Bean生产、依赖关系注入(装配)及Bean实例分发的"图纸"。 Spring配置文件是一个或多个标准的XML文档,applicationContext.xml是Spring的默认配置文件,当容器启动时找不到指定的配置文档时,将会尝试加载这个默...
阅读全文
摘要:用注解来向Spring容器注册Bean。需要在applicationContext.xml中注册如:在base-package指明一个包表明cn.gacl.java包及其子包中,如果某个类的头上带有特定的注解【@Component/@Repository/@Service/@Controller】,...
阅读全文
摘要:Spring两种事物处理机制,一是声明式事物,二是编程式事物声明式事物1)Spring的声明式事务管理在底层是建立在AOP的基础之上的。 其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。 声明式事务最大的优点就是不需要通过...
阅读全文
摘要:MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器 使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。MVC 是一种使用 MVC(Mo...
阅读全文
摘要:有很多程序员往往把框架模式和设计模式混淆,认为MVC是一种设计模式。实际上它们完全是不同的概念。 框架、设计模式这两个概念总容易被混淆,其实它们之间还是有区别的。框架通常是代码重用,而设计模式是设计重用,架构则介于两者之间,部分代码重用,部分设计重用,有时分析也可重用。在软件生产中有三种级别的...
阅读全文
摘要:在一个工程中如果想要使用 spring MVC的话,只需要两个步骤在web.xml中配置一个DispatcherServlet。需要配置一个org.springframework.web.servlet.DispatcherServlet的servlet。再定义一个dispatcherServlet...
阅读全文
摘要:conf/tomcat-users.xml
阅读全文
摘要:Server.xml的结构大致 即一个由Server->Service->Engine->Host->Context组成的四层...
阅读全文
摘要:1.windows命令下使用cmd命令打包jar -cvf applicationname.war package.*;2.程序中使用代码打包(这里用java)try{ string strjavahome = system.getproperty("java.home"); str...
阅读全文
摘要:/webapps:Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录。1.war包部署:将需要发布的web应用打成war文件,(例如:ROOT.war) 拷贝到/webapps下, 启动Tomcat, 如果是ROOT.war,直接通过http://ip:port/即可访问 如果是...
阅读全文
摘要:Tomcat下有7个目录,分别是bin,conf,lib,logs,temp,webapps,work 目录Tomcat根目录在tomcat中叫1./bin: 存放各种平台下启动和关闭Tomcat的脚本文件。 2./lib: 在lib目录下的lib目录,存放To...
阅读全文
摘要:JDK概述 JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。 JDK 是整个Java的核心,包括了Java运行环境(...
阅读全文
摘要:1. 简单工厂又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但...
阅读全文
摘要:对象缓存就是将查询的数据,添加到缓存中,下次再次查询的时候直接从缓存中获取,而不去数据库中查询。对象缓存一般是针对方法、类而来的,结合Spring的Aop对象、方法缓存就很简单。这里需要用到切面编程,用到了Spring的MethodInterceptor或是用@Aspect。代码如下:package...
阅读全文
摘要:Ehcache基本用法CacheManager cacheManager = CacheManager.create();// 或者cacheManager = CacheManager.getInstance();// 或者cacheManager = CacheManager.create("/...
阅读全文
摘要:Spring仅仅是提供了对缓存的支持,但它并没有任何的缓存功能的实现,spring使用的是第三方的缓存框架来实现缓存的功能。其中,spring对EHCache提供了很好的支持。在介绍Spring的缓存配置之前,我们先看一下EHCache是如何配置。 由于Sp...
阅读全文
摘要:EHCache是来自sourceforge(http://ehcache.sourceforge.net/)的开源项目,也是纯Java实现的简单、快速的Cache组件。下载jar包Ehcache 对象、数据缓存:http://ehcache.org/downloads/destination?nam...
阅读全文
摘要:一. 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在C++中,你...
阅读全文
摘要:以下仅是对map对方式讨论。没有对点阵图阵讨论。作缓存要做以下2点:1:清理及更新缓存时机的处理: . 虚拟机内存不足,清理缓存 .. 缓存时间超时,或访问次数超出, 启动线程更新2:类和方法的反射 (线程嵌套调用) reflect.invoke的使用。JAVA缓存有两种:一、文件缓存,...
阅读全文
摘要:有几个常用的措施1、对常用功能建立缓存模块 。尽量使用缓存,包括用户缓存,信息缓存等,多花点内存来做缓存,可以大量减少与数据库的交互,提高性能。统计的功能尽量做缓存,或按每天一统计或定时统计相关报表,避免需要时进行统计的功能。2、网页尽量静态化。能使用静态页面的地方尽量使用,减少容器的解析(尽量将动...
阅读全文
摘要:jarlucene-analyzers-common-4.7.0.jarlucene-analyzers-smartcn-4.7.0.jarlucene-core-4.7.0.jarlucene-queryparser-4.7.0.jarlucene-memory-4.7.0.jarlucene-q...
阅读全文
摘要:先看一段代码IndexSearcher searcher = new IndexSearcher(DirectoryReader.open(FSDirectory.open(new File("F:\\indexDir"))));QueryParser parser = new QueryParse...
阅读全文
摘要:Lucene的最新版本和以前的语法或者类名,类规定都相差甚远0.准备工作:1). Lucene官方APIhttp://lucene.apache.org/core/4_7_0/index.html 2). 我用到的常用JAR包下载:http://download.csdn.net/detail/ya...
阅读全文
摘要:Lucene是apache组织的一个用java实现全文搜索引擎的开源项目。 其功能非常的强大,api也很简单。总得来说用Lucene来进行建立 和搜索和操作数据库是差不多的(有点像),Document可以看作是 数据库的一行记录,Field可以看作是数据库的字段。用lucene实 现搜索引擎就像用J...
阅读全文
摘要:Cookie的机制 Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能。 Cookie的Domain和Path属性标识了这个Cookie是哪一个网站发送给浏览器的;Cookie的Expires属性标识了Cookie的有...
阅读全文
摘要:首先来看一下,任务的定义:所谓的任务,就是抽象,离散的工作单位。你可以简单理解为代码级别的 (Runnable接口)大多数并发应用程序都是围绕着任务进行管理的.看一小段代码:package com.ivan.concurrent.charpter6;import java.net.ServerSoc...
阅读全文
摘要:Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。他们的关系为:并发编程的一种编程方式是把任务拆分为...
阅读全文
摘要:1什么是并发问题。 多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发问题。 2java中synchronized的用法用法1public class Test{ public synchronized void print(){ ....; } }某线程...
阅读全文
摘要:Hibernate中常会用到set,bag等集合表示1对多的关系,在获取实体的时候就能根据关系将关联的对象或者对象集取出,还可以设定cacade进行关联更新和删除。这不得不说hibernate的orm做得很好,很贴近oo的使用习惯了。 但是对数据库访问还是必须考虑性能问题的,在设定了1对多这种...
阅读全文
摘要:get和load方式是根据id取得一个记录下边详细说一下get和load的不同,因为有些时候为了对比也会把find加进来。1.从返回结果上对比:load方式检索不到的话会抛出org.hibernate.ObjectNotFoundException异常get方法检索不到的话会返回null2.从检索执...
阅读全文
摘要:与Session相对的是,SessionFactory也提供了相应的缓存机制。SessionFactory缓存可以依据功能和目的的不同而划分为内置缓存和外置缓存。 SessionFactory的内置缓存中存放了映射元数据和预定义SQL语句,映射元数据是映射文件中数据的副本,而预定义SQL语句是在...
阅读全文
摘要:当多个并发的事务同时访问持久化层的缓存中的相同数据时,会引起并发问题,必须采用必要的事务隔离措施。 在进程范围或集群范围的缓存,即第二级缓存,会出现并发问题。因此可以设定以下4种类型的并发访问策略,每一种策略对应一种事务隔离级别。 Hibernate二级缓存的并发访问策略有四种:只读(read-o...
阅读全文
摘要:一、建立webservice服务端: 1、新建一个web service project,名称为webservice_server截图如下,点击finish.2、选择工程,点击右键,选择new->other,选择myelipse中的webservice->Web Service,点击next,此处...
阅读全文
摘要:所谓编程式事务指的是通过编码方式实现事务,即类似于JDBC编程实现事务管理。 Spring框架提供一致的事务抽象,因此对于JDBC还是JTA事务都是采用相同的API进行编程。Connection conn = null; UserTransaction tx = null; try { ...
阅读全文
摘要:不依赖应用服务器的开源JTA事物实现JOTM和Atomikos TransactionsJOTM 即基于Java开放事务管理器(Java Open Transaction Manager),实现JTA规范,能够运行在非应用服务器环境中,Web容器或独立Java SE环境,官网地址: http:...
阅读全文
摘要:Spring框架支持事务管理的核心是事务管理器抽象,对于不同的数据访问框架(如Hibernate)通过实现策略接口PlatformTransactionManager,从而能支持各种数据访问框架的事务管理PlatformTransactionManager接口定义如下:public interf...
阅读全文
摘要:1.导入spring事物管理类库(spring 2.0(*) AOP)点击项目右键->Build Path->Add librarys:打开Add Libraries对话框,然后选定 MyEclipse Libraries:点击Next,找到Spring 2.0 aop Libraries并勾选上,...
阅读全文
摘要:在Hibernate中我们每次进行一个操作的的时候我们都是要先开启事务,然后进行数据操作,然后提交事务,关闭事务,这样做的原因是因为Hibernate默认的事务自动提交是false,它是需要人为的手动提交事务,假如你不想每次都手动提交事务的话,你可以在hibernate.cfg.xml我文件中把...
阅读全文
摘要:使用情况Session对象记载某一特定的客户信息,不同的客户用不同的Session对象来记载 Session对象有效期:默认为20分钟,可设定 Session工作原理:在应用程序中,当客户端启动一个Session时,ASP会自动生成一个SessionID,并将该SessionID回送客户端浏览器,而...
阅读全文
摘要:Java提供了两类主要的异常:runtime exception和checked exception。checked异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自...
阅读全文
摘要:首先在spring.xml中进入beantrue true org.hibernate.cache.EhCacheProvider WEB-INF/classes/ehcache.xml 使用hibernate的缓存插件将ehcache.xml文件放到src下面,并配置e...
阅读全文
摘要:缓存是位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能. Hibernate在查询数据时,首先到缓存中去查找,如果找到就直接使用,找不到的时候就会从物理数据源中检索,所以,把频繁使用的数据加载到缓存区后,就可...
阅读全文
摘要:首先了解hibernate的目录结构.+lib antlr.jar cglib-full.jar asm.jar asm-attrs.jars commons-collections.jar commons-logging.jar ehcache.jar hibernate3.jar...
阅读全文
摘要:Hash ,一般翻译做“ 散列” ,也有直接音译为“ 哈希” 的,就是把任意长度的输入(又叫做预映射, pre-image ),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不 同的输入可能会散列成相同的输出,而不可能从散列值...
阅读全文
摘要:1.排列计算/*【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....*/package cn.com.flywater....
阅读全文
摘要:package org.rut.util.algorithm.support;import org.rut.util.algorithm.SortUtil;public class HeapSort implements SortUtil.Sort{ /* (non-Javadoc) ...
阅读全文
摘要:快速排序也是用归并方法实现的一个“分而治之”的排序算法,它的魅力之处在于它能在每次partition(排序算法的核心所在)都能为一个数组元素确定其排序最终正确位置(一次就定位准,下次循环就不考虑这个元素了)。 快速排序的partition操作按以下逻辑进行,假定本次排序的数组为arr:1)选择...
阅读全文
摘要:归并排序采用的是递归来实现,属于“分而治之”,将目标数组从中间一分为二,之后分别对这两个数组进行排序,排序完毕之后再将排好序的两个数组“归并”到一起,归并排序最重要的也就是这个“归并”的过程,归并的过程中需要额外的跟需要归并的两个数组长度一致的空间,比如需要规定的数组分别为:[3, 6, 8, ...
阅读全文
摘要:希尔排序的诞生是由于插入排序在处理大规模数组的时候会遇到需要移动太多元素的问题。希尔排序的思想是将一个大的数组“分而治之”,划分为若干个小的数组,以gap来划分,比如数组[1, 2, 3, 4, 5, 6, 7, 8],如果以gap = 2来划分,可以分为[1, 3, 5, 7]和[2, 4, ...
阅读全文
摘要:插入排序的基本思想是在遍历数组的过程中,假设在序号i之前的元素即[0..i-1]都已经排好序,本趟需要找到i对应的元素x的正确位置k,并且在寻找这个位置k的过程中逐个将比较过的元素往后移一位,为元素x“腾位置”,最后将k对应的元素值赋为x,插入排序也是根据排序的特性来命名的。 插入排序的工作原...
阅读全文
摘要:冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 实现方法最简单,两层for循环,里层循...
阅读全文
摘要:(转载出处) 选择排序的基本思想是遍历数组的过程中,以i代表当前需要排序的序号,则需要在剩余的[i…n-1]中找出其中的最小值,然后将找到的最小值与i指向的值进行交换。因为每一趟确定元素的过程中都会有一个选择最大值的子流程,所以人们形象地称之为选择排序。 选择排序是一种简单直观的排序方法,每...
阅读全文