小编Bla*_*dez的帖子

Java api到exiftool

我很有兴趣用java api或类似的东西解析exiftool结果.

我一直在研究,但我没有找到任何例子.例如,我怎样才能在我的java项目中获得这些结果?

ExifTool版本号:8.22

文件名:ExifTool.jpg

目录:t/images文件

大小:24 kB文件修改日期/时间

等等......我正在寻找'如何'或类似的东西.

java exiftool

6
推荐指数
1
解决办法
6444
查看次数

无法从START_OBJECT标记中反序列化java.lang.Class的实例

我无法正确理解运行此代码时出现的错误:

InputStream is = this.getClass().getClassLoader().getResourceAsStream(filename);  
String jsonTxt = IOUtils.toString(is);  
JSONArray json = (JSONArray) JSONSerializer.toJSON(jsonTxt);  
JSONObject metadatacontent = json.getJSONObject(0);   
ObjectMapper mapper = new ObjectMapper();  
mapper.readValue(metadatacontent.toString(), MetadataContentBean.class.getClass());
Run Code Online (Sandbox Code Playgroud)

错误:

org.codehaus.jackson.map.JsonMappingException:不能在[来源反序列化java.lang.Class的实例进行START_OBJECT令牌:java.io.StringReader@e3b895; 行:1,柱:1]在org.codehaus.jackson.map.JsonMappingException.from(JsonMappingException.java:159)在org.codehaus.jackson.map.deser.StdDeserializationContext.mappingException(StdDeserializationContext.java:192)在有机.codehaus.jackson.map.deser.StdDeserializer $ ClassDeserializer.deserialize(StdDeserializer.java:439)在org.codehaus.jackson.map.deser.StdDeserializer $ ClassDeserializer.deserialize(StdDeserializer.java:421)在org.codehaus.jackson .map.ObjectMapper._readMapAndClose(ObjectMapper.java:1588)在org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1116)在com.path.parser.JSon.Parser(JSon.java:65)在COM.

这是什么意思??

也许如果我知道这一点,我可以找出我的错误.

java jackson

6
推荐指数
1
解决办法
4万
查看次数

请求句柄solrconfig.xml拼写检查程序

根据solr文档,我正在尝试设置拼写检查程序.但是当我测试时,我没有任何建议.我的代码如下:

 <searchComponent name="spellcheck" class="solr.SpellCheckComponent">

    <str name="queryAnalyzerFieldType">textSpell</str>

    <lst name="spellchecker">
      <str name="classname">solr.IndexBasedSpellChecker</str>
      <str name="name">default</str>
      <str name="field">name</str>
      <str name="spellcheckIndexDir">./spellchecker</str>
    </lst>
    <str name="queryAnalyzerFieldType">textSpell</str>

  </searchComponent>


 <requestHandler name="/spellcheck" class="solr.SearchHandler">
    <lst name="defaults">
      <str name="echoParams">explicit</str>
      <!-- Optional, must match spell checker's name as defined above, defaults to "default" -->
      <str name="spellcheck.dictionary">default</str>
      <!-- omp = Only More Popular -->
      <str name="spellcheck.onlyMorePopular">false</str>
      <!-- exr = Extended Results -->
      <str name="spellcheck.extendedResults">false</str>
      <!--  The number of suggestions to return -->
      <str name="spellcheck.count">1</str>
    </lst>
    <arr name="last-components">
      <str>spellcheck</str>
    </arr>
  </requestHandler>
Run Code Online (Sandbox Code Playgroud)

我发送给Solr的查询:
q …

solr spell-checking

6
推荐指数
1
解决办法
5540
查看次数

无法创建临时文件

我正在使用这段代码创建一个临时文件:

String tmpDirectoryOp = System.getProperty("java.io.tmpdir");
File tmpDirectory = new File(tmpDirectoryOp);
File fstream = File.createTempFile("tmpDirectory",".flv", tmpDirectory);
FileOutputStream fos = new FileOutputStream(fstream);
DataOutputStream dos=new DataOutputStream(fos);

dos.writeChars("Write something");

fstream.deleteOnExit();

fos.close();
dos.close();
Run Code Online (Sandbox Code Playgroud)

tmpDirectory.flv我的项目文件夹中没有.写句子是一个循环,这需要很长时间才能完成,所以问题不是文件被删除才能看到它.
任何的想法?提前致谢

java temporary-files

5
推荐指数
2
解决办法
7538
查看次数

@JsonPropertyOrder 和超类中的字段

我有以下类层次结构: 编辑

public abstract class A implements Content {
    private long id;
    ....
}

@JsonPropertyOrder({"id"})
public class B extends A{
    private String oderField;
...
}

public interface Content{
   //Some get methods
}

@JsonPropertyOrder({"c"})
public class DefaultContent{
   private Content c;
   private String anotherProperty;
}
Run Code Online (Sandbox Code Playgroud)

通过序列化一个B对象,我在 JSON 中看到的第一个字段是oderField,我想更改它,并id首先获取它。

序列化

public class Serializer{
private Gson gson;
public Serializer(){
GsonBuilder gsonBuilder = new GsonBuilder();
        gsonBuilder.setDateFormat("yyyy-MM-dd HH:mm:ss:SSS");
        gson = gsonBuilder.create();
        gsonParser = new JsonParser();
}

public String serializeMessage(DefaultContent …
Run Code Online (Sandbox Code Playgroud)

java json jackson

4
推荐指数
1
解决办法
1万
查看次数

SimpleDateFormat中的大写字母

执行这段代码:

SimpleDateFormat sdfIn = new SimpleDateFormat("yyyy-MM-dd");
                            Date date = null;
                            try {
                                date = sdfIn.parse(value11);
                            } catch (ParseException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            }

                            SimpleDateFormat sdfOut = new SimpleDateFormat("MMM d, yyyy");

                            System.out.println(sdfOut.format( date ));
Run Code Online (Sandbox Code Playgroud)

我得到这个输出nov 23, 2005而不是Nov 23, 2005更好.
有谁知道怎么改变它?提前致谢

java date simpledateformat

3
推荐指数
1
解决办法
3615
查看次数

Mysql问题:没有mysql.sock

昨天我正在使用安装在我电脑上的MySQL.
我下载了xampp,所以我在my.cnf文件中更改了套接字的路径:

 /opt/lampp/var/mysql/mysql.sock  
Run Code Online (Sandbox Code Playgroud)

那个文件就在那里.今天我想继续努力,我发现文件不再存在,所以我在启动mysql服务器时遇到以下错误:

ERROR 2002 (HY000): 
Can't connect to local MySQL server through socket 
'/opt/lampp/var/mysql/mysql.sock' (2)
Run Code Online (Sandbox Code Playgroud)

以下是我做的一些测试:

mujeresponja@ubuntu:~$ ps -fea | grep mysqld
1000     15707 15615  0 16:28 pts/1    00:00:00 grep --color=auto mysqld
mujeresponja@ubuntu:~$ ps -fea | grep mysql 
1000     15709 15615  0 16:29 pts/1    00:00:00 grep --color=auto mysql
Run Code Online (Sandbox Code Playgroud)

作为一种可能的解决方案,我卸载了xampp并重新安装它,以及一个新的MySQL服务器,以防万一.无论如何,那个文件不再存在了.

编辑 mysql.sock应该在哪里,而是有两个文件mysql_upgrade_info(其中只包含5.5.8)和另一个名为ubuntu.err的二进制文件:

mujeresponja@ubuntu:/opt/lampp/var/mysql$ sudo cat ubuntu.err 
110403 17:28:52 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var/mysql
110403 17:28:52 [Note] Plugin 'FEDERATED' is disabled.
/opt/lampp/sbin/mysqld: Can't find file: …
Run Code Online (Sandbox Code Playgroud)

mysql xampp ubuntu-10.10

3
推荐指数
1
解决办法
2万
查看次数

applicationContext-service.xml问题定义

使用spring,下面是applicationContext-service.xml的代码:

<bean id="mediaObjectService" class="path.MediaObjectServiceImpl">

        <property name="mediaObjectDao" >
            <ref bean="mediaObjectDao"/>
        </property>
        <property name="semanticQuestionDao" >
            <ref bean="semanticQuestionDao"/>
        </property> 
        <aop:scoped-proxy/>
    </bean>
Run Code Online (Sandbox Code Playgroud)

在做测试时,我得到了他的错误:

org.springframework.beans.factory.BeanCreationException:在类路径资源[applicationContext-service.xml]中定义的名称为"scopedTarget.mediaObjectService"的bean创建错误:bean的初始化失败; 嵌套异常是java.lang.NoSuchMethodError:net.sf.cglib.proxy.Enhancer.setInterceptDuringConstruction(Z)V

据我所知,会话范围对象总是有一个名为scopedTarget.bean-id名称的前缀.
所以,如果我是对的,那mediaObjectService就是bean-id,它是正确的声明.
也许我错了,但无论如何,我没有看到我犯的错误.

任何帮助?

提前致谢

java spring

2
推荐指数
1
解决办法
2532
查看次数

单击按钮更改语言

我有一个JSF/RichFaces设置,我找到了本教程.我一步一步地跟着它,但我无法得到它.

另外:教程中提到了language.jsp,有人可以告诉我它有什么特别之处吗?

或者,如果您认为这不是一个合适的教程并且有更好的教程,请告诉我.

jsf richfaces internationalization

2
推荐指数
1
解决办法
1万
查看次数

做一个更好的实现修改ArrayList <HashMap <String,Integer >>

我有一个hashmap列表.一个字段是一个整数,另一个是一个布尔值,它会告诉我该项是否被选中.

最终目的是更改ArrayList,取消选择已选择的旧项目,并标记新项目.我制作了这段代码,但我想知道是否有更好的方法来做到这一点.

VisualizationBean visualizationBean = new VisualizationBean();
ArrayList<HashMap<Boolean, Integer>> resultsPerPage = visualizationBean.getResultsPerPage();
for (Iterator iterator = resultsPerPage.iterator(); iterator.hasNext();) {
  HashMap<Boolean, Integer> hashMap = (HashMap<Boolean, Integer>) iterator.next();
   if(hashMap.containsKey(true)){
     int beforeSelected = hashMap.get("true");
     hashMap.put(false, beforeSelected);
   }
   else{
    if(hashMap.get(false) == number){
      hashMap.put(true, number);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢

java hashmap

2
推荐指数
1
解决办法
378
查看次数

问题arrayList类

列出ArrayList时遇到问题.我的代码:

Iterator<String> iterator = (Iterator<String>) myList.iterator();
while (iterator.hasNext()) {//List tagListAux
        System.out.println("Test -> "+iterator.next());
        if(iterator.next().equalsIgnoreCase(myString)){
        flag = true;
}

 myList.add(myString);
Run Code Online (Sandbox Code Playgroud)

我得到的例外:

java.util.NoSuchElementException
    at java.util.AbstractList$Itr.next(AbstractList.java:350)
    at myFileinJava(myFileinJava.java:148) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么??在我遇到并发问题之前,已经解决了更改迭代器声明的问题.
提前致谢

java arraylist

1
推荐指数
1
解决办法
2810
查看次数