在我的应用程序中,有4个面板.我需要将它们插入主面板,使用BorderLayout
.4个面板是......
这是我的代码......
add(imageLabel, BorderLayout.NORTH);
add(buttonPanel,BorderLayout.PAGE_START);
add(logScrollPane, BorderLayout.CENTER);
add(about, BorderLayout.PAGE_END);
Run Code Online (Sandbox Code Playgroud)
当我这样做时,buttonPanel
消失了.我怎样才能达到我的需要?
我有一个字符串说:
<encoded:2,Message request>
Run Code Online (Sandbox Code Playgroud)
现在我想提取2
,并Message request
从上面的线.
private final String pString = "<encoded:[0-9]+,.*>";
private final Pattern pattern = Pattern.compile(pString);
private void parseAndDisplay(String line) {
Matcher matcher = pattern.matcher(line);
if (matcher.matches()) {
while(matcher.find()) {
String s = matcher.group();
System.out.println("=====>"+s);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这不会检索它.这有什么问题
有时会发生如此神奇的事情,我会弄清楚编译器的作用.例如在akka中,receive
定义为:
def receive: Receive
type Receive = Actor.Receive
Run Code Online (Sandbox Code Playgroud)
并Receive
定义为:
type Receive = PartialFunction[Any, Unit]
Run Code Online (Sandbox Code Playgroud)
然后我们声明receive
为:
def receive = {
case "a" => //do something
case "b" => //do something
case _ => //default
}
Run Code Online (Sandbox Code Playgroud)
我知道PartialFunction
但我没有得到的是它是如何应用消息的receive
.我们不是想提供apply
而且isDefinedAt
因为receive
返回了PartialFunction
吗?
从语法上讲,它如何应用于receive
消息?做它喜欢message match receive
什么东西吗?
我有一个类,它有一个对象数组作为它的实例变量.每个对象内部包含一个int
和一个struct
.但不知何故,对象被解构了.
即
class AllInput {
public:
int numProducts;
Product * products;
public:
AllInput(int _numProducts, Product * _products);
};
class Product {
public:
int sellingPrice; //Ri
struct DemandDistribution observationDemand; //C2i
public:
Product(
LucyDecimal _sellingPrice, //Ri
LucyDecimal _costPriceAssmbly);
};
Run Code Online (Sandbox Code Playgroud)
然后我有一个创建它的函数:
AllInput* in1() {
struct DemandDistribution * _observationDemand1 =
(DemandDistribution*) malloc(sizeof(DemandDistribution));
// set values
Product * product1 = new Product(165,_observationDemand1);
//initialize product2, product3, product4
Product products[4] = { *product1, * product2, *product3, *product4};
AllInput* all = new AllInput(4, products); …
Run Code Online (Sandbox Code Playgroud) 考虑以下问题:
trait AA {
def children: List[AA]
}
trait BB {
def children: List[BB]
}
class CC extends AA, BB {
override def children: List[AA] & List[BB] = ???
}
Run Code Online (Sandbox Code Playgroud)
当我们覆盖children
in 时CC
,被覆盖的方法是顶级方法的合并实体。因此返回类型List[AA] & List[BB]
是有道理的。
我不明白的是,下面是如何编译的?
class DD extends AA, BB {
override def children: List[AA & BB] = ???
}
Run Code Online (Sandbox Code Playgroud)
List 是协变的,因此(这是证明的来源):
List[AA & BB] <: List[AA] & List[BB]
Run Code Online (Sandbox Code Playgroud)
DD
只能编译如果还 List[AA] & List[BB] <: List[AA & BB]
。这是真的吗?如果是这样,那么不是List[AA] & …
从http://java.sun.com/docs/books/performance/1st_edition/html/JPAppGC.fm.html#99740示例 A3.3 说,它说一个对象可能仍然不可用于垃圾收集,即使它可能超出范围。仅当该方法脱离堆栈时才可用。现在,如果我们考虑以下情况:
void foo(){
Dog a = new Dog();
Dog b = new Dog();
b=a
while(true)//loop for long time
}
Run Code Online (Sandbox Code Playgroud)
引用的对象 b 是否可以立即用于垃圾回收,还是仅在返回 foo() 方法之后。
我有一个界面如下:
/**
* <T> Time format. Can be long, date etc
*/
public interface TimeStamp<T> extends Comparable<TimeStamp<T>>
{
/**
* Returns the timestamp.
* @return
*/
public T getTimeStamp();
}
Run Code Online (Sandbox Code Playgroud)
现在我想要一个列表,它将保存TimeStamp并拥有一些方法,其行为将取决于它所持有的timeStamps.
public class TimeList<TimeStamp<T>> extends ArrayList<TimeStamp<T>>
{
......
}
Run Code Online (Sandbox Code Playgroud)
编译器显示上述语句的错误.这有什么问题?
下面是一个示例代码.它加载6个图像并在屏幕上显示它们.每个图像大小为2.3 MB.所以在加载每个Image时,我会看到每个Image加载的内存消耗大约增加3 MB.但事实证明,它为每个图像加载10 MB.
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import javafx.application.Application;
import javafx.geometry.Orientation;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.ScrollBar;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class Test extends Application {
public static void main(String... args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
ScrollBar bar = new ScrollBar();
bar.setOrientation(Orientation.VERTICAL);
final VBox box = new VBox();
Group root = new Group();
root.getChildren().addAll(box, bar);
Scene scene = new Scene(root);
primaryStage.setScene(scene);
primaryStage.setTitle("Layout Sample");
primaryStage.show();
for (int …
Run Code Online (Sandbox Code Playgroud) 一个简单的问题.::
类不可变的方法List
定义为:
密封抽象类列表[+ A] ...
def :: [B>:A](x:B):列表[B]
假设我说:
class Fruit
class Mango extends Fruit
scala> val d:List[Fruit] = List.empty[Fruit]
d: List[Fruit] = List()
scala> new Mango :: d
res5: List[Fruit] = List(Mango@272d6774)
Run Code Online (Sandbox Code Playgroud)
现在我在这里很困惑.根据::
声明,参数类型应该是逆变的.即在这种情况下任何类>: Fruit
(我理解为什么它是这样的).但我没有得到的是,Mango <: Fruit
为什么编译器不会抛出错误呢?
正在做
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE = "executing";
Run Code Online (Sandbox Code Playgroud)
它包含一列,Id
该列是当前正在运行的所有线程的 ID 号。现在,在我的MySQL
程序中,一开始我希望知道执行它的线程的 ID。什么查询将返回运行该过程的线程的 ID?
其次:我想知道它,因为我的应用程序中的查询运行时间相当长。我想自动化该过程,一旦收到新请求,我的应用程序将取消已经运行的查询Kill query someID
。为此,我需要知道ID
已经运行的程序。Kill query
命令影响稳定性吗?根据文档,它看起来很安全,因为它只设置了一个标志并且连接完好无损。
我花了一天时间,但不明白为什么remember_me
SPring Security无法正常工作.我只使用xml作为配置,没有Java代码:
<http use-expressions="false" auto-config="true">
<intercept-url pattern="/css/**" filters="none" />
<intercept-url pattern="/**" access="ROLE_USER" />
<form-login login-page="/BL/index.html" default-target-url="/BL/main.html"
authentication-failure-url="/BL/index.html?autherror=true"
always-use-default-target='true' />
<logout logout-url="/logout" logout-success-url="/BL/index.html"
invalidate-session="true" />
<remember-me data-source-ref="dataSource"
user-service-ref="jdbcUserService" key="99999989"
token-validity-seconds="86400" />
<access-denied-handler error-page="/BL/index.html?autherror=true" />
</http>
Run Code Online (Sandbox Code Playgroud)
简而言之index.html
就是我的登录页面.当我登录时,我看到一个cookie由名称SPRING_SECURITY_REMEMBER_ME_COOKIE
和值创建V2FrblE1Vlk3cFd6ZDIvZnRjdnlIZz09OndOb2h2NmUvdFlZRHJvRFRPV3lheHc9PQ
.
但如果我现在回到index.html
页面,它会要求我再次登录.我仍然看到相同的cookie值.上面的xml配置中有什么错误?我希望它不应该让我再次登录,但应该重定向到我的主页,因为我已经登录了.
我看到下面的登录服务器.看起来正在将请求作为空字符串发送给用户:
14:16:34,031 DEBUG JdbcUserDetailsManager:155 - 查询返回没有结果用户''14:16:34,031 DEBUG DaoAuthenticationProvider:131 - 用户''未找到14:16:34,031 DEBUG UsernamePasswordAuthenticationFilter:318 - 验证请求失败:org.springframework .security.authentication.BadCredentialsException:错误凭据14:16:34,032 DEBUG UsernamePasswordAuthenticationFilter:319 - 更新了SecurityContextHolder以包含null身份验证14:16:34,032 DEBUG UsernamePasswordAuthenticationFilter:320 - 委托身份验证失败handlerorg.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler @ 6011c7cf 14:16:34,032 DEBUG PersistentTokenBasedRememberMeServices:214 - 交互式登录尝试失败.14:16:34,032 DEBUG PersistentTokenBasedRememberMeServices:300 - 取消cookie …