小编m_v*_*aly的帖子

对于switch的break语句,是否有更好的编程语言?

语法太多,语法相同:

switch (someValue) {

  case OPTION_ONE:
  case OPTION_LIKE_ONE:
  case OPTION_ONE_SIMILAR:
    doSomeStuff1();
    break; // EXIT the switch

  case OPTION_TWO_WITH_PRE_ACTION:
    doPreActionStuff2();
    // the default is to CONTINUE to next case

  case OPTION_TWO:
    doSomeStuff2();
    break; // EXIT the switch

  case OPTION_THREE:
    doSomeStuff3();
    break; // EXIT the switch

}
Run Code Online (Sandbox Code Playgroud)

现在所有人都知道break语句是必需的,因为当语句丢失时,语句switch将继续到下一个语句.我们有一个例子,和.问题是我们只需要非常非常非常需要"跳到下一个案例".而且我们经常在结束时放下休息时间.casebreakOPTION_LIKE_ONEOPTION_ONE_SIMILAROPTION_TWO_WITH_PRE_ACTIONcase

初学者很容易忘记它.我的一位C老师甚至向我们解释过,好像这是C语言中的一个错误(不想谈论:)

我想问一下,我是否还有其他任何语言,我不知道(或忘记)处理这样的开关/案例:

switch (someValue) {

  case OPTION_ONE:  continue; // CONTINUE to next case
  case OPTION_LIKE_ONE:  continue; // CONTINUE to next case
  case OPTION_ONE_SIMILAR:
    doSomeStuff1(); …
Run Code Online (Sandbox Code Playgroud)

c java language-agnostic programming-languages switch-statement

18
推荐指数
3
解决办法
1291
查看次数

在JSF中,输出List <SomeObj>的最短方式是SomeObj的"name"属性的逗号分隔列表

我有一个关于在JSF中输出对象列表作为逗号分隔列表的问题.

让我们说:

public class SomeObj {
  private String name;
  ... constructors, getters and setters ...
}
Run Code Online (Sandbox Code Playgroud)

和列表<SomeObj>:

List<SomeObj> lst = new ArrayList<SomeObj>();
lst.add(new SomeObj("NameA"));
lst.add(new SomeObj("NameB"));
lst.add(new SomeObj("NameC"));
Run Code Online (Sandbox Code Playgroud)

将其作为列表框输出我可以使用此代码:

<h:selectManyListbox id="id1"
                  value="#{listHolder.selectedList}">
  <s:selectItems value="#{listHolder.lst}"
                   var="someObj"
                 label="#{someObj.name}"/>
  <s:convertEntity />
</h:selectManyListbox>
Run Code Online (Sandbox Code Playgroud)

但输出列表的最简单方法是什么,逗号分隔?像这样:

NameA, NameB, NameC
Run Code Online (Sandbox Code Playgroud)

我应该使用JSTL <c:forEach />还是可以使用<s:selectItems />标签?

jsf facelets

14
推荐指数
3
解决办法
6094
查看次数

Google Code Search一样的源代码索引器和可视化工具

我正在寻找一种方法来搜索我们的subversion存储库或只是打包的源代码.

是否有可下载的服务器/工具(如Google Code Search)来索引源代码(最好支持svn等版本控制系统)并允许我们在其中进行搜索?

是否有任何工具可以索引文档?

language-agnostic search indexer code-search-engine

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

T-Mobile G1(品牌HTC Dream)和Google的ADP1(开发者设备)之间有什么区别?

我在互联网上搜索但找不到比较这两者的网站.我有兴趣开发Android平台.G1似乎与ADP1完全相同,但是在开发过程中是否会出现明显的小变化?

第三方软件怎么样?G1中存在哪些T-Mobile软件不属于ADP1捆绑包,反之亦然?

我可以将原始ADP1固件与T-Mobile品牌固件交换吗?据我所知,人们已经可以破解G1来运行ADP1的非品牌固件.

mobile android

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

在Java中,为什么超类方法不能从子类实例访问受保护的或私有的方法/变量?

让我们从另一个行为开始:即使您将方法/变量声明为私有,同一个类的另一个实例也可以访问它.没关系,我可以忍受它.我将这些类称为私有而非实例私有.

现在问题部分:例如,在运行时我希望能够检查this类中的所有String变量是否为null,如果它们为null,则应将它们更改为字符串"NULL".

我可以使用反射来运行变量并获取它们的值.但是如果我扩展我的类并添加私有甚至受保护的变量,我的基类就无法访问它们.setAccessible在使用它们之前,我必须对变量进行处理.

所以请向我解释为什么基类(超类)不能从其子类访问私有/受保护的变量.它是它的子类,所以我不明白.这背后有什么想法?

我知道超类不应该知道它的子类,但在我的例子中它是有意义的,不是吗?

是因为我不能或不应该以这种方式限制我的子类?


更新: 根据答案,我还想知道:为什么不从同一个类访问另一个实例的私有变量被视为违反封装?

java oop inheritance class instance

7
推荐指数
2
解决办法
8624
查看次数

Maven EAR模块和EJB依赖项测试

我们正在使用maven构建我们的EAR和EJB项目.它将构建所有EJB项目,然后将它们用作EAR的依赖项,因此它们最终被打包到EAR文件中.

问题是每个EJB项目都有检查EJB的junit测试.目前这些测试不是很有用,因为它们尝试连接到应用程序服务器(jboss)并从EJB接口执行方法.

有没有什么方法可以构建EJB,构建和部署EAR,然后针对应用程序服务器运行所有EJB的所有测试?

现在我在测试中通过初始EJB实现类和手动"注入"注入(someEJBImpl.em = EntityManager ....)来模拟AP,这非常烦人,因为我们之间有很大的依赖关系,我必须处理我自己做的交易.

有没有其他方法可以针对真正的AP运行EJB测试?可以在每个EJB模块之后使用已构建的EJB模块子集部署EAR吗?但是怎么样?

可以设置为运行所有EJB模块的maven测试作为EAR测试的一部分吗?这该怎么做 ?

ear junit maven-2 unit-testing ejb

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

如何在Java/Swing应用程序中实现多语言?

在Swing应用程序中实现多语言支持的不同方法有哪些?

您是否将ResourceBundle与属性文件一起使用并在每个帧中实现它?它对你有用吗?如果你使用某种GUI编辑器怎么办?还有其他方法吗?

在工作中我们使用Matisse4MyEclipse,每次保存屏幕时都会重新生成代码,因此只使用Externalize Strings在这里不起作用.一种方法是将其定义为每个组件的自定义属性,这非常烦人.另一种方法是在matisse生成的代码之后再次检查多语言组件及其属性,这也是一种痛苦.

java multilingual swing internationalization

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

使用 SMTP 发送邮件到多个地址:将邮件中继到不同的服务器?

我正在向以下收件人发送电子邮件: test@example.com, test1@test.com,test2@test.com

该消息被发送到我的本地 smtp 服务器,该服务器必须将其中继到@example.com@test.com

我的问题是:服务器应该如何做?

  • 保留消息原样并将其转发到更复杂的 smtp 服务器,该服务器将执行其他选项之一

  • 将其分成两条消息,并将一条消息转发给@example,将另外两条消息转发给@test.com一条消息

  • 将其分成三个消息并转发一次 to@example.com和两次 to@test.com

例如,接收服务器如何@example.com知道它不应该@test.com自己发送消息?(有邮件标题吗?)

如果@example.com@test.com由同一台服务器提供服务,它会多次收到消息吗?

我可能遗漏了 SMTP 协议中的某些内容。

email smtp

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

从java运行sqlplus脚本的简单方法

我有sql文件,其中包含sqlplus特定脚本:它包含/或; 作为语句终止符,EXEC执行存储过程等.

我需要从java(jdbc)执行这个脚本而不需要sqlplus.

sql ant task/maven sql插件无法处理不同的终结符或EXEC命令.

你知道如何在不运行sqlplus的情况下做到这一点吗?

java sql oracle jdbc

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

哪个Java XML绑定框架支持循环/循环依赖性?

我有两节课:

public class A {
  B refToB;
}

public class B {
  A refToA;
}
Run Code Online (Sandbox Code Playgroud)

它们没有唯一的ID字段(JAX-B XMLID和XMLIDREF是必需的)。

对象实例:

A a = new A();
B b = new B();
a.refToB = b;
b.refToA = a;
Run Code Online (Sandbox Code Playgroud)

我想a在存储循环/循环依赖项时编组为XML,例如:

<a id="gen-id-0">
  <b>
    <a ref-id="gen-id-0" />
  </b>
</a>
Run Code Online (Sandbox Code Playgroud)

我发现支持此功能的框架之一是XStream:http : //x-stream.github.io/graphs.html

还有哪些其他框架支持此功能?

某些JAX-B实现是否支持它?

java xml jaxb marshalling idref

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