public class EventController extends MouseAdapter implements ActionListener {
private EventModel model;
private EventView view;
String tableClick;
Events events;
/** Constructor */
public EventController(EventModel myModel, EventView myView){
model = myModel;
view = myView;
}
public void setUpListeners() {
this.view.addEventButton.addActionListener(this);
this.view.addEventMenuItem.addActionListener(this);
this.view.editEventMenuItem.addActionListener(this);
this.view.tableEvent.addMouseListener(this);
}
@Override
public void actionPerformed(ActionEvent e){
Object button = e.getSource();
if(button==this.view.addEventButton) {
setEventDetails();
}
}
@Override
public void mouseClicked(java.awt.event.MouseEvent event) {
int rowSelected = view.tableEvent.getSelectedRow();
//blahblahblah
view.changeDisplay(events);
}
Run Code Online (Sandbox Code Playgroud)
我如何覆盖keyPressedKeyListener类的方法,就像我已经完成的那样mouseClicked,ActionPerformed我真的不想覆盖keyTyped它keyReleased,只是 …
这个问题可能听起来有点怪,但是,我如何在java中调用常量?问题是我正在玩AlertDialog android类.由于这个类有受保护的构造函数,我无法在我创建对话框的活动类中调用它们.所以我创建了一个子AlertDialog类并使其构造函数公开,如下所示:
public class TestAlert extends AlertDialog {
public TestAlert(Context context) {
super(context);
}
public TestAlert(Context context, int theme) {
super(context, theme);
}
}
Run Code Online (Sandbox Code Playgroud)
然后我创建了这样的对话框:
TestAlert ta = new TestAlert(con, AlertDialog.THEME_DEVICE_DEFAULT_DARK);
ta.setMessage("Hello");
ta.show();
Run Code Online (Sandbox Code Playgroud)
这里奇怪的是这段代码是错误的:AlertDialog.THEME_DEVICE_DEFAULT_DARK
我不知道为什么.
从关于AlertDialog类的Android开发者页面,我们可以清楚地看到这些主题是常量.(公共,静态,最终).由于它们是静态的,因此应使用类名调用,后跟一个点.他们也是公开的,所以应该没有问题.但奇怪的是我不能那样做.但是,如果我传递数字而不是常量名称,它的工作方式如下:
new TestAlert(con, 2);
Run Code Online (Sandbox Code Playgroud)
ps:我知道我应该用它AlertDialog.Builder来构建对话.但我们称之为"探索".
帮助appriciated.
考虑一个典型的任务,当我们必须通过滚动数据库中的适当结果来构建巨大的文件报告时。ORM 框架是Hibernate. 我们知道,有 3 种方法可以避免OutOfMemoryException这种模式:
使用session.evict(...):
ScrollableResults customers = session.createQuery("from Customers order by id").scroll(ScrollMode.FORWARD_ONLY);
while (customers.next()) {
Customer customer = (Customer) customers.get(0);
addDataToReport(customer);
session.evict(customer);
}
Run Code Online (Sandbox Code Playgroud)使用session.clear():
ScrollableResults customers = session.createQuery("from Customers order by id").scroll(ScrollMode.FORWARD_ONLY);
int i = 0;
while (customers.next()) {
Customer customer = (Customer) customers.get(0);
addDataToReport(customer);
if ( ++i % 1000 == 0) session.clear();
}
Run Code Online (Sandbox Code Playgroud)使用CacheMode.IGNORE:
ScrollableResults customers = session.createQuery("from Customers order by id").setCacheMode(CacheMode.IGNORE).scroll(ScrollMode.FORWARD_ONLY);
while (customers.next()) {
Customer customer …Run Code Online (Sandbox Code Playgroud)@Bean
public JavaMailSender mailSender() {
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setDefaultEncoding("UTF-8");
mailSender.setHost("smtp.googlemail.com");
mailSender.setPort(465);
mailSender.setUsername("XXXXXXXXX@gmail.com");
mailSender.setPassword("XXXXXXXXXXXXXXX");
Properties properties = new Properties();
properties.put("mail.smtp.auth", true);
properties.put("mail.smtp.starttls.enable", true);
mailSender.setJavaMailProperties(properties);
return mailSender;
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用javamailsender发送邮件,因为我使用注释配置了上面的代码,之后我得到了" java.lang.NoClassDefFoundError: org/springframework/core/type/AnnotatedTypeMetadata"异常任何建议appriciate.
问题是如何JRE为Apache tomcatin 指定自定义路径Intellij IDEA(从启动应用程序时IDEA)?
似乎只是jvm.dll在Apache Tomcat监视器中配置其路径(路径)没有帮助.有任何其他想法或方法如何做到这一点?
我如何获得sha-1指纹,如下所示:
// A.T. C.
{ { { 0xf9, 0xb5, 0xb6, 0x32, 0x45, 0x5f, 0x9c, 0xbe, 0xec, 0x57,
0x5f, 0x80, 0xdc, 0xe9, 0x6e, 0x2c, 0xc7, 0xb2, 0x78, 0xb7 } },
{"1.3.6.1.4.1.34697.2.1", ""}, },
Run Code Online (Sandbox Code Playgroud)
来自Chromium来源(net / cert / ev_root_ca_metadata.cc)。如果是加密货币?
当我尝试时,我总会得到这个
04:A0:56:A9:87:64:BB:DC:96:BF:6D:B0:49:FA:80:81:ED:06:8A:1E
Run Code Online (Sandbox Code Playgroud)
我可以使用哪个程序以及该命令的名称是什么来以加密方式获取?
我将在Firefox / Chrome中添加EV证书。
我WAR在openshift tomcat7弹药筒下部署了我的应用程序.
在我的应用程序中我使用log4j.我log4j.properties看起来像:
log4j.rootCategory=info, A1, A2
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A2=org.apache.log4j.FileAppender
log4j.appender.A2.File=myapp.log
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d %p (%t) [%c] - %m%n
log4j.appender.A1.encoding=UTF-8
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d %p (%t) [%c] - %m%n
log4j.appender.A2.encoding=UTF-8
Run Code Online (Sandbox Code Playgroud)
问题是$OPENSHIFT_LOG_DIR我的openshift应用程序中的文件夹中只有两个日志文件:
[myapp.rhcloud.com logs]\> ls
jbossews.log postgresql.log
Run Code Online (Sandbox Code Playgroud)
在jbossews.log我看到只有与catalina.out本地运行应用程序相关的日志行Tomcat 7.更具体地说,在jbossews.log我看到一般错误信息,如:
INFO: Deploying web application archive /var/lib/openshift/54...1d/app-root/runtime/dependencies/jbossews/webapps/myapp.war
Mar 05, 2015 12:00:02 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Mar 05, 2015 12:00:02 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/myapp] startup …Run Code Online (Sandbox Code Playgroud) 考虑以下课程:
public void method() {
test(() -> { });
}
void test(Runnable a) {
System.out.println("Test 1");
}
void test(A a) {
System.out.println("Test 2");
}
interface A extends Runnable {
}
Run Code Online (Sandbox Code Playgroud)
调用方法method()将导致Test 2输出.这意味着,lambda表达式() -> { }被隐式转换为A.为什么?
如何使用 FileWriter 和 PrintWriter 在文本文件中的特定行上书写?我不想每次都创建一个新文件。
编辑:我可以循环遍历文件,在指定的行号处获取字符串的长度,然后在到达该行后使用该长度退格(删除字符串),然后写入新数据?
public static void setVariable(int lineNumber, String data) {
try {
// Creates FileWriter. Append is on.
FileWriter fw = new FileWriter("data.txt", true);
PrintWriter pw = new PrintWriter(fw);
//cycles through file until line designated to be rewritten is reached
for (int i = 1; i <= lineNumber; i++) {
//TODO: need to figure out how to change the append to false to overwrite data
if (i == lineNumber) {
pw.println(data);
pw.close();
} else {
// …Run Code Online (Sandbox Code Playgroud) 我读过这篇文章:Java 8 lambdas和匿名内部类之间的性能差异并提供了文章
它说:
Lambda调用的行为与匿名类调用完全相同
"好的"我说并决定编写我自己的基准测试,我已经使用过jmh,这里是下面的(我还添加了方法参考的基准).
public class MyBenchmark {
public static final int TESTS_COUNT = 100_000_000;
@Benchmark
public void testMethod_lambda() {
X x = i -> test(i);
for (long i = 0; i < TESTS_COUNT; i++) {
x.x(i);
}
}
@Benchmark
public void testMethod_methodRefernce() {
X x = this::test;
for (long i = 0; i < TESTS_COUNT; i++) {
x.x(i);
}
}
@Benchmark
public void testMethod_anonymous() {
X x = new X() {
@Override …Run Code Online (Sandbox Code Playgroud) java ×8
java-8 ×2
lambda ×2
tomcat ×2
android ×1
events ×1
filewriter ×1
fingerprint ×1
firefox ×1
hibernate ×1
jakarta-mail ×1
keylistener ×1
logging ×1
openshift ×1
openssl ×1
overloading ×1
performance ×1
printwriter ×1
sha1 ×1
spring-mvc ×1
ssl ×1
swing ×1
windows ×1