小编use*_*690的帖子

使用或运算符进行Morphia查询

我想知道如何使用'或'运算符编写Morphia mongodb查询
我写了这样的mongodb查询这个工作正常

db.Inv.find({$or:[{sug_id:2},{grp_id:2}]})  
Run Code Online (Sandbox Code Playgroud)

但是当我尝试在morphia中写这个时,我感到很困惑,以下查询是错误的,但是如何写出与此类似的东西

List<Inv> invs = ds.find(Inv.class).field("grp_id").hasAnyOf(grpId).or(field("sug_id")).hasAnyOf(grpId).asList();  
Run Code Online (Sandbox Code Playgroud)

谢谢

java mongodb morphia

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

JOOQ未配置连接问题

我正在使用JOOQ向MySql插入一条记录,这是我的代码

if (f.getConnection()!=null) {
    UserRecord us = new UserRecord();
    us.setAccountId(UInteger.valueOf(accountId));
    us.setCode(code);
    us.setEnd(new java.sql.Date(end.getTime()));
    us.setStart(new java.sql.Date(start.getTime()));
    us.setPhoneNumberId(UInteger.valueOf(phnNUmberId));            
    us.store();
}
Run Code Online (Sandbox Code Playgroud)

(f是数据库连接工厂类)

在线程“ main” org.jooq.exception.DetachedException中给出异常:无法执行查询。未配置连接

但是数据库连接没有螺母,这可能是什么原因?
(某些查询使用相同的连接)

java mysql jooq

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

工厂模式与继承

使用继承时,我遇到了Factory模式的问题,

这是我的代码

public class Animal {
  public int numberOfLegs() { return 2 ;}
}

public class Cat extends Animal {
  public String getSound() {return "Maaaw";}
}
public class Dog extends Animal {
  public String getSound() {return "woof";}
}

public class AnimalFactory {
  public Animal getAnimal(String name){
    Animal an= null ;
    if(name=="cat"){an = new Cat();}
    else if(name=="dog"){an=new Dog();}
    return an ;
  }
}

public class FactoryDemo {

  public static void main(String[] args) {
    AnimalFactory anmF=new AnimalFactory();
    Animal anm=anmF.getAnimal("cat") ;
    System.out.println("legs : …
Run Code Online (Sandbox Code Playgroud)

java oop design-patterns

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

日期格式返回错误的日期

我正在尝试格式化Date对象并将格式化的对象转换回Date类型对象
这是我的代码

SimpleDateFormat inputDf = new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss zzz");
System.out.println("before format  "+invoiceDate);
invoiceDate=inputDf.parse(inputDf.format(invoiceDate));
System.out.println("after format "+inputDf.format(invoiceDate));
System.out.println("after parse "+invoiceDate);
Run Code Online (Sandbox Code Playgroud)

从上面的代码输出是

before format : Mon Jan 14 10:55:40 IST 2013
after format  : Mon Jan 14 2013 10:55:40 IST
after parse   : Mon Jan 14 10:55:40 IST 2013
Run Code Online (Sandbox Code Playgroud)

你可以看到我解析日期对象后它转换回原始格式(格式显示格式之前),但我希望Date对象像它出现在第二个打印行(格式化后)的东西是.format方法返回String不是Date对象, 我怎样才能解决这个问题 ?

谢谢

java datetime date date-conversion java.util.date

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

使用mongoDB和Morphia映射Reduce

我用morphia在mongoDB中运行map reduce,这是我的java代码

String map = "function() { emit(this.id,this.cal.charge)}";
String reduce = "function(k, v) {var i, sum = 0;for (i in v) {sum += v[i];}return sum;}";

MapreduceResults<Results> mrRes = ds.mapReduce(MapreduceType.MERGE,ds.createQuery(MyTable.class).field("id").equal(5),map,reduce,null,null,Re.class);   
Run Code Online (Sandbox Code Playgroud)

这工作正常并将结果放到'Re'集合中,但是如何在不插入新集合的情况下将结果作为对象或列表获取?

谢谢

java mapreduce mongodb morphia

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