`
lzw0286
  • 浏览: 33440 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论
文章列表

Java, Spring

通过不同的string文本来生成/获取不同的service。 有的时候我们需要通过客户端传入的文本,例如actionCode,来调用不同的service, 在没有使用spring之前,一般是创建一个工厂,然后通过不同的string来创建不同的service。 例如   if(actionCode.equals(A)){ new AServiceImpl(); }else if(actionCode.equals(B)){ new BServiceImpl(); }  注意AServiceImpl和BServiceImpl都实现相同的接口IService。 上 ...
DCEVM To reload java classes use DCEVM (Dynamic Code Evolution VM) Get dcevm-0.2-win.jar file from attachment and run it with java -jar dcevm-0.2-win.jar. Program window will be opened and you will see a list of JDK installed on your PC.     Select Java which you use with your Tomcat and pres ...

Maven聚合和继承

一. 聚合 1. 聚合的目的:一次构建多个模块和项目。 2. 聚合的packaging为POM,聚合下的module的值都是一个当前POM的相对目录。 3. 对于聚合模块来说,它知道哪些被聚合的模块,但是那些被聚合的模块并不知道聚合模块的存在。 聚合的例子如下: <groupId>com.account</groupId> <artifactId>accout-aggregator</artifactId> <packaging>pom</packaging> <name>testName< ...

泛型总结

    博客分类:
  • Java
1. 为什么要使用泛型   因为   1)使用泛型意味着编写的代码可以被很多个不同类型的对象所重用。   2)使用泛型之后可以减少类型转换的风险   2.泛型类  1) 类定义中的类型变量指定了方法的返回类型以及域和局部变量 ...

仓库镜像(mirror)

1. 什么是镜像     如果仓库X可以提供仓库Y存储的所有内容,那么可以认为X是Y的一个镜像。镜像文件是在Maven的setting文件中设置的。可以设置多个镜像。 2.为什么要使用镜像。     使用镜像来代替对原有仓库的访问,有的时候可以提高访问速度。例如如果有某一个仓库位于国外,但是在国内有该仓库的镜像,那么配置国外仓库的镜像,之后在访问和下载构件的时候可能或获得更高的速度。 3.一般情况下镜像是与私服结合使用的。  

Maven仓库

1.某个构件在仓库中的位置: groupId/artifactId/version/artifactId-version.packaging 2.maven仓库种类只有2种,本地仓库和远程仓库。注意,私服属于远程仓库。maven中央仓库是配置在M2_HOME/lib/maven-2.2.1-uber.jar中,具体位置为该jar的:org/apache/maven/model/pom-4.0.0.xml中。 3.部署构件到远程仓库。 部署构件到远程仓库,需要在pom中增加<distributionManagement>元素:如<distributionManagemen ...
1.所有的依赖坐落于<dependencies>元素的<dependency>中,dependencies可以包含多个dependency。 2.dependency元素可以包含的子元素有:   groupId,artifactId,version,type,scope,optional,exclusions,其中groupId,artifactId,version是依赖的基本坐标,必不可少。type是依赖的类型,对应于maven坐标的packaging。 3.依赖范围 3.1. maven的3种classpath       maven在编译项目主代码的时候需要使用 ...

Maven坐标

1.maven坐标组成   世界上的任何一个构件都可以使用maven坐标唯一标示,maven坐标的元素包括groupId,artifactId,version,packaging,classifier,其中groupId,artifactId,version是必须定义的。packaging是可以选的,默认是jar。而classifier是不能直接定义的。classifier的作用是帮助定义构建输出的一些附属构件,如xxx-javadoc.jar,xxx-source.jar 2.项目构件的文件名是与坐标相对应的,一般的规则为artifactId-version[classifier].pack ...
一. 什么是QName 1.来历:qname是qualifiedname的简写2.构成:由名字空间(namespace)前缀(prefix)以及冒号(:),还有一个元素名称构成3.举例: <wsdl:definitions name="Helloworld" targetNamespace="http://server.com/" xmlns:ns1="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/ws ...
   AOP(Aspect Oriented Programming)书面解释是面向切面编程。是spring核心之一。经常被用来处理事务,日志和其他一些不是主要业务逻辑的需求中。 下面使用一个简单的场景来说明Aop。该场景是这样的,在一个系统中,对于用户的某些操作需要记录日志,例如,用户删除,修改某些敏感数据。 一. 为什么使用Aop    想一想如果我们不使用Aop会怎么处理呢?一般情况下,我们会新建一个类LogHandler,然后在该类中新建一个方法,暂且叫做logDetail方法,然后在需要进行写日志的地方调用该方法。这样做的后果是在具体的业务方法中会到处充斥着不是正常业务逻辑的logDe ...
   工作也快5年了,最近在工作中遇到的一些问题,用到的一些技术,以前曾经遇到过,解决过,也使用过。因为有段时间没有用了,之前的处理方法已经忘记了,现在还是得像以前一样去分析,去处理,这样真的很浪费时间。感觉以前的经验对我的帮助不是很大,只是现在处理问题的要比以前快了点,但是不清楚是因为我以前处理过类似的问题,使我头脑中有点印象,还是说因为工作时间长了,处理问题的方式改进了。不管怎么说,我现在感觉这种处理以前遇到过的问题的方式肯定是不好的。     最近在看李笑来的《把时间当作朋友》,有不少触动。我遇到以前似曾相识的问题,总是感叹自己的记性差,从书中看来并不是我记性差,更大的原因是因为“好记性不 ...
当创建一个对象或者调用一个类的static方法时,类的初始化顺序是: 1.调用父类static的成员的初始化。 2.调用子类static的成员的初始化 3.调用父类普通成员变量的初始化 4.调用父类的构造器 5.调用子类普通成员变量的初始化 6.调用子类的构造器 这种初始化顺序都是为了能保证对象在创建之前,所有的成员变量都能得到初始化。
1.当创建一个子类的对象时,该子类对象会包含一个基类对象的子对象,这个基类子对象与你用基类直接创建的对象是一样的。二者的区别在于,后者是来于外部(手动new),而父类子对象被包装在子类对象内部。 2.子类的构造器中会默认插入对父类构造器的调用,如果父类没有默认的构造器,只有代参的构造器,那么需要在子类构造器中显式调用。 并且在创建子类对象时,父类构造器总是会被先调用。调用父类构造器必须是子类构造器做的第一件事。 3.慎用继承。要使用继承一个最清晰的判断方法就是问一问自己是否需要从新类向父类向上转型(使用多态)。
Global site tag (gtag.js) - Google Analytics