`
文章列表
1 在使用Jenkins进行构建的时候,报invocationtargetexception,是因为jenkins的版本 和maven的版本不兼容, maven 3.0.4, maven 3.0.5对当前最新版本的jenkins没有兼容问题,maven 2.2.2和jenkins有兼容性的问题,构建的时候会报invocationtargetexception   2 使用intellij idea提供的maven视图中集成的maven命令,lifecycle整个周期的操作均没有错误,但是在cmd命令下,当前路径为项目根路径,使用mvn clean, mvn compile, mvn p ...
在使用基于注解的spring mvc时,使用情况如下:   @Controller @RequestMapping("/test") public class TestController { @RequestMapping(value="/index/{userId}", params="username") public ModelAndView index(@PathVariable("userId") String userId, ...
不知你是否意识到,围绕着什么才是实现异构的应用到应用通信的“正确”方式,一场争论正进行的如火如荼:虽然当前主流的方式明显地集中在基于SOAP、WSDL和WS-*规范的Web Services领域,但也有少数人用细小但洪亮的声音主张说更好的方式是REST,表述性状态转移(REpresentational State Transfer)的简称。在本文中,我不会涉及争论的话题,而是尝试对REST和RESTful HTTP应用集成做实用性的介绍。以我的经验,有些话题一旦触及就会引来众多的讨论,当涉及到这方面话题的时候,我会深入详细地阐述。 REST关键原则 大部分对REST的介绍是以其正式的定义和 ...
      最近在用aws的s3做云存储,把文件上传上去,在数据库中记录对应的url,下面是示例代码:   public static String uploadToS3(File tempFile, String remoteFileName) throws IOException { PropertiesUtil propertiesUtil = new PropertiesUtil("s3.properties"); //首先创建一个s3的客户端操作对象(需要amazon提供的密钥) AmazonS3 ...
          最近在项目中想使用相对路径存放上传的apk包,所以研究了一下相对路径创建File的相关知识       1 参考以前的代码,写下如下代码:       public static void main(String[] args) throws IOException { File parentFile = new File("/intelStore/apk/test"); if (!parentFile.exists()) { parentFile.mkdir(); } System.out.println(p ...
    喜欢用guava的原因之一就是喜欢guava的编码风格,guava的fluent风格的api使用起来非常清爽,其中内部实现就使用了Builder模式       1 在使用不可变集合ImmutableList时,可以直接初始化:     ImmutableList<String> strings = Im ...
    场景:当在一个方法中, 你需要返回几个对象,这几个对象的类型一致,你可以返回一个数组;如果几个对象的类型不同呢,当然你可以返回一个Object[]数组,可是这样在使用结果数组的时候,就需要强转对象的类型,会导致类型不安全;也可以定义一个dto,当多个场景下需要使用的不同,需要定义多个dto,这样会类爆炸,而且重用率极低;在非常接近Java语言的Scala里有元组的定义:val t = (1, 3.14, "Fred"),就是一个不同类型的数据放到一个线性集合里,在Java里我们可以模拟出一个类似的结构,以适合上面的场景     demo: abstract ...
   对于Java中null的缺点和如何处理,大家讨论了很多遍,guava给出的解决方法是Optional<T>   public static Optional<String> getYourName () { return Optional.of("malone"); } public static void main (String[] args) { Optional<String> result = getYourName(); if (! ...
  最近看别人在谈项目中时间处理的问题,jdk提供的Date好多方法都废弃了,现在基本上都是统一用Calendar来处理,用过Calendar处理日期的想必都有感觉,Calendar是一个笨重的东西,计算时间的时候更是劣势尽显,代码冗余很高,现在推荐一个非常好的时间处理类库:Joda Time  1 使用到的jar包 <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> ...
guava 提供了非常强大的字符串处理操作   1 Joiner    以前肯定遇到过这样的场景,为了sql查询,把一个List<Integer>集合拼接成一个字符串,用逗号隔开,看一下Joiner如何实现的:    public static void main (String args[]) { List<Integer> list = Lists.newArrayList(1,2,3,4,5); Joiner joiner = Joiner.on(",").skipNulls(); ...

Guava Objects

  java中所有的类都继承了Object类,当有需求时, 会重写equals, hashCode, toString方法,guava提供了Objects类简化了这些操作   1 equals     jdk要求对equals的重写要符合一下几点:    1. 自反性reflexive:任何非空引用x,x.equals(x)返回为true;    2. 对称性symmetric:任何非空引用x和y,x.equals(y)返回true当且仅当y.equals(x)返回true;    3. 传递性transitive:任何非空引用x和y,如果x.equals(y)返回true,并且y ...
 最近在学习使用guava, 一个非常优秀的开源项目,是对jdk一个非常有力的补充,我看上guava的是能使代码更简洁,良好的代码风格   首先来介绍一下com.google.common.base包中的常用类   1 Function    guava提供了类函数式的编程 ...
1 原子性    除了long型字段和double型字段外,java内存模型确保访问任意类型字段所对应的内存单元都是原子的。这包括引用其它对象的引用类型的字 段。此外,volatile long 和volatile double也具有原子性 。(虽然java内存模型不保证non-volatile long 和 non-volatile double的原子性,当然它们在某些场合也具有原子性。)(译注:non-volatile long在64位JVM,OS,CPU下具有原子性) 当在一个表达式中使用一个non-long或者non-double型字段时,原子性可以确保你将获得这个字段的初始值或 ...
 1 spring 整合 cxf 服务端      所以jar可以从cxf的lib下面添加所有   首先web.xml配置文件如下:   <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi ...
本文转载自:http://blog.chinaunix.net/uid-122937-id-215995.html 1.中断概述      在多线程编程中经常会遇到需要中止线程的情况,比如启动多个线程去数据库中搜索,如果有一个线程返回了结果,其他线程就可以取消了。中断线程的三个相差函数            1.通过成员方法Thread.interrupt()来设置中断状态为true            2.通过成员方法Thread.isInterrupted()来获取中断状态            3.通过静态方法Thread.interrupted()来获取中断状态,并且清除中断状态( ...
Global site tag (gtag.js) - Google Analytics