小编arj*_*soh的帖子

在自定义窗口小部件中实现ClickHandler

我正在GWT中创建一个自定义小部件,扩展Composite并实现ClickHandler.我已经实现了onClick方法,但是clickEvent不起作用.为了使clickEvent工作,我还应该在类中另外实现什么方法?可能是HandlerRegistration?怎么样?

gwt

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

如何在角度2中使用Factory Provider

我需要将一个服务注入到Angular 2应用程序中的另一个服务中.在阅读了我推断的文档之后,最好的方法是使用Factory Provider.但是出现了两个问题:

1)文档建议创建一个HeroServiceProvider包含两个"代码段"的类:

let heroServiceFactory = (logger: Logger, userService: UserService) => {
  return new HeroService(logger, userService.user.isAuthorized);
};

export let heroServiceProvider =
  { provide: HeroService,
    useFactory: heroServiceFactory,
    deps: [Logger, UserService]
  };
Run Code Online (Sandbox Code Playgroud)

我的问题是这个班级应该怎么样?应该在哪里添加上述代码段?

2)如何/可以使用这家工厂?我明白了,它应该导入为:

import { heroServiceProvider } from './hero.service.provider';

@Component({
  selector: 'my-selector',
  template: `
  `,
  providers: [heroServiceProvider]
})
Run Code Online (Sandbox Code Playgroud)

那么如何才能检索和访问所需的参数化服务?

dependency-injection typescript angular

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

创建的对象的ID生成器

我需要一个创建对象的类,为每个创建的对象分配一个ID.此ID通常是类的int属性.我想每次创建一个Object时增加这个值(ID),然后从1开始分配给该对象.我觉得我需要一个静态int属性.

如何初始化此静态属性?

我应该创建一个单独的方法来增加在构造函数中调用的ID(作为ID生成器)吗?

一般来说,最有效和最精心设计的方式是什么?

java constructor object

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

Jboss适合初学者

我知道那种问题通常是不可取的,但我仍然认为我可以依靠你的帮助.我希望有一个体面的Jboss教程/文档的说明,引用它的基本和广泛的应用程序以及一些简单的例子.到目前为止我一直在努力寻找,但是我找不到任何令我满意的东西.

jboss web-applications application-server

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

Hibernate saveOrUpdate vs update vs save/persist

我正在努力理解hibernate方法之间的细微差别

saveOrUpdate - update - save/persist.

我知道网站上有一些类似的问题:

Hibernate中不同的保存方法有什么区别?

save和saveOrUpdate方法之间的区别是hibernate

但是看过它们之后,我没有注意到答案涵盖了在任何情况下使用这些方法产生的所有问题.我想提一下我创建的测试示例:我有一个带有记录的表USER:

id     |      company



1             Company1

2             Company2
Run Code Online (Sandbox Code Playgroud)

然后执行代码:

 Session session = HibernateUtil.getSessionFactory().getCurrentSession();
 Transaction tx = session.beginTransaction();

 User user1 = (User) session.load(User.class, Integer.valueOf(1));
 user1.setCompany("Company3");
 User user2 = (User) session.load(User.class, Integer.valueOf(2));
 user2.setCompany("Company4");
 session.persist(user1);
 session.save(user2);

 tx.commit();
Run Code Online (Sandbox Code Playgroud)

我在数据库中看到:

id     |      company



 1             Company3

 2             Company4
Run Code Online (Sandbox Code Playgroud)

我注意到save并且persist在这种情况下执行与saveOrUpdate或相同的任务.update因此,我的问题是什么是它们之间的差异以及何时saveOrUpdateupdate必要.我说得对,与savepersist不更新相关的对象,即使使用Cascade

database persistence hibernate

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

NumberFormat setMaximumFractionDigits方法

我正在尝试类的方法和功能,NumberFormat我已经达到了一个奇怪的结果.我编译并运行以下程序:

public static void main(String[] args) {

Locale loc = Locale.US;
    NumberFormat nf = NumberFormat.getInstance(loc);
    System.out.println("Max: "+nf.getMaximumFractionDigits());
    System.out.println("Min: "+nf.getMinimumFractionDigits());
    try {
        Number d = nf.parse("4527.9997539");
        System.out.println(d);
        // nf.setMaximumFractionDigits(4);
        System.out.println(nf.format(4527.999753));
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}
Run Code Online (Sandbox Code Playgroud)

输出是:

Max: 3
Min: 0
4527.9997539
4,528
Run Code Online (Sandbox Code Playgroud)

这意味着它没有考虑任何分数.如果我取消注释该行:

nf.setMaximumFractionDigits(4);
Run Code Online (Sandbox Code Playgroud)

输出是:

Max: 3
Min: 0
4527.9997539
4,527.9998
Run Code Online (Sandbox Code Playgroud)

换句话说,它运作正常.方法实际发生了什么setMaximumFractionDigits(),并没有在第一种情况下带来包含3位数的数字?

java number-formatting

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

如何在ManagedBean中注入CDI Bean?

我想在ManagedBean中使用注释@Inject或@Produce注入CDI Bean.我使用的CDI Bean是:

@Named
@Startup
@ApplicationScoped
public class BaseBean {

private List<String> custs;

public List<String> getCusts() {
    return custs;
}

public void setCusts(List<String> emps) {
    this.custs = emps;
}

public BaseBean(){

}

@PostConstruct
void init() {
    custs = new ArrayList<String>();
    custs.add("Cust1");
    custs.add("Cust3");
    custs.add("Cust2");
    custs.add("Cust4");
}

}
Run Code Online (Sandbox Code Playgroud)

我想要注入CDI Bean的ManagedBean是:

@SessionScoped
@ManagedBean
public class Hello implements Serializable {

@Inject
private BaseBean dBean;

private static final long serialVersionUID = 1L;
private List<String> customers;
private List<String> customersSelect;

public Hello() {
}

@PostConstruct
void init() …
Run Code Online (Sandbox Code Playgroud)

jsf ejb java-ee cdi java-ee-6

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

测量时间并不能确认LinkedList的优势

我正在阅读之间的不同之处ArrayListLinkedList指出何时使用LinkedList而不是ArrayList?.我开发了一个小的示例applcation来测试一个主要的优点LinkedList但是我获得的结果没有证实,这LinkedList超过ArrayList了操作的性能:

ListIterator.add(E element)
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

public static void main(String[] args) {

        int number = 100000;

        long startTime1 = System.currentTimeMillis();
        fillLinkedList(number);
        long stopTime1 = System.currentTimeMillis();

        long startTime2 = System.currentTimeMillis();
        fillArrayList(number);
        long stopTime2 = System.currentTimeMillis();

        System.out.println(" LinkedList needed: "+ (stopTime1 - startTime1));
        System.out.println(" ArrayList needed: "+ (stopTime2 - startTime2));

    }


    public static void fillLinkedList(int number){

        LinkedList<Integer> list = new LinkedList<Integer>();
        ListIterator<Integer> it = list.listIterator();
        int i = 0;
        while(i++<number){
            it.add(i);
        } …
Run Code Online (Sandbox Code Playgroud)

java linked-list arraylist listiterator

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

android studio找不到drawable图标

我正在尝试在MAC上的android-studio中开发,我遇到了一个问题.在活动代码中,我不能引用位于mipmap文件夹中的图像.特别是我已经创建了一个通知:

...

Notification notify = new NotificationCompat.Builder(this)
    .setContentTitle(title)
    .setContentText(body)
    .setSmallIcon(R.drawable.ic_launcher)
    .setContentIntent(startPendingIntent)
    .build();

...
Run Code Online (Sandbox Code Playgroud)

我收到错误"无法解析符号ic_launcher".奇怪也是问题,我无法将图标复制粘贴到空的drawable文件夹中.我应该在哪里以及如何放置图标以便在android studio的代码中可见?

android image android-studio

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

正则表达式查找特定字符是否在String中存在奇数次

有没有办法regular expression在Java中编写一个查找a是否String包含奇数个特定字符的方法,即"a"?我已经完成了编写更详细的代码,使用以下方法:

public static boolean hasEvenNumber(String s) {
        int count = 0;

        Pattern p = Pattern.compile("(^a)*(a)");
        Matcher m = p.matcher(s);
        while (m.find())
            count++;

        if (count % 2 != 0)
            return true;
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

例如,如果将String "jsadaajaaikadjasl"作为参数传递,则它返回true,因为它包含7 "a".是否有一种更优雅的方式来实现它只使用a regex并检查它:

Pattern p = Pattern.compile(...);
Matcher m = p.matcher(s);
if(m.matches())
   return true;  
Run Code Online (Sandbox Code Playgroud)

java regex string

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