我知道这可能是一个新手问题,但我在设置Log4J时遇到问题:
我想运行一个log4j演示,这是我的代码:
import org.apache.log4j.Logger;
import org.apache.log4j.BasicConfigurator;
public class HelloLOG4j {
private static final Logger logger = Logger.getLogger(Hello.class);
public static void main(String argv[]) {
BasicConfigurator.configure();
logger.debug("Hello world.");
logger.info("What a beatiful day.");
}
}
Run Code Online (Sandbox Code Playgroud)
我在System和User var中设置了我的Classpath:C:\ Users\Adel\Downloads\apache-log4j-1.2.17\log4j-1.2.17.jar

但是当我运行我的程序时,我仍然会得到
errors found:
File: C:\Users\Adel\Desktop\various_topics\JavaProjects\HelloLOG4j.java [line: 2]
Error: package org.apache.log4j does not exist
Run Code Online (Sandbox Code Playgroud)
我知道我设置了classpath - 如果我运行cmd行:
C:\Program Files\Java\jdk1.6.0_20>print %LOG4J_HOME%
C:\Users\Adel\Downloads\apache-log4j-1.2.17\log4j-1.2.17.jar is currently bein
g printed
Run Code Online (Sandbox Code Playgroud) 我对听众课程的作用感到困惑.例如,在这个项目中有一个如下引用的监听器类:
<listener>
<listener-class>com.sun.javaee.blueprints.petstore.model.CatalogFacade</listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)
顾名思义,只是听取行动吗?
我正在研究这个SQL语句:
SELECT * FROM Customers
ORDER BY Country,CustomerName;
Run Code Online (Sandbox Code Playgroud)
它是如何按国家和客户名称订购的?在我看来,它似乎并不直观,即您按国家或客户名称订购,但不能同时订购
此代码编译,但在TOAD中它不会显示"hi wo"输出
CREATE OR REPLACE PROCEDURE AdelTest IS
tmpVar NUMBER;
BEGIN
DBMS_OUTPUT.ENABLE(100: in INTEGER);
DBMS_OUTPUT.PUT_LINE('hi wo');
tmpVar := 0;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
WHEN OTHERS THEN
--consider logging error then r-raise
RAISE;
END AdelTest;
Run Code Online (Sandbox Code Playgroud)
如何显示输出(类似于println如何在Java中使用控制台)?
我刚刚在网上看到MariaDB(SQLZoo使用的)基于MySQL.所以我认为我可以使用ROW_NUMBER()函数
但是,当我在SQLZoo中尝试此函数时:
SELECT * FROM (
SELECT * FROM route
) TEST7
WHERE ROW_NUMBER() < 10
Run Code Online (Sandbox Code Playgroud)
然后我收到这个错误:
错误:FUNCTION gisq.ROW_NUMBER不存在
假设我们在Java中有一个简单的Echo客户端/服务器对.据我所知,一旦插座的一侧断开,整个连接就消失了.
但是,如果我想要一个可以永远保持活着的服务器,即使客户端死亡,该怎么办呢?我希望能够恢复断开的连接.
回声服务器:
import java.net.Socket;
import java.net.ServerSocket;
public class EchoServer {
public static void main(String[] args) throws Exception {
// create socket
int port = 4444;
ServerSocket serverSocket = new ServerSocket(port);
System.err.println("Started server on port " + port);
// repeatedly wait for connections, and process
while (true) {
// a "blocking" call which waits until a connection is requested
Socket clientSocket = serverSocket.accept();
System.err.println("Accepted connection from client");
// open up IO streams
In in = new In (clientSocket);
Out out …Run Code Online (Sandbox Code Playgroud) 我昨天发现你可以创建一个看起来像这样的Java for循环
for (int j = 0; j < myArray.length; System.out.println(j), j++ ) {
/* code */
}
Run Code Online (Sandbox Code Playgroud)
这对我来说真的很不寻常.何时编码可接受/有用?
我正在研究Java JMX和JConsole.我很好奇JConsole的内存管理能力.例如,"内存"选项卡中有一个"执行GC"按钮:
假设我有一个简单的Java应用程序来占用内存,如下所示:
public class MemoryEater
{
public static void main(String[] args)
{
Vector v = new Vector();
while (true)
{
byte b[] = new byte[1048576];
v.add(b);
Runtime rt = Runtime.getRuntime();
System.out.println( "free memory: " + rt.freeMemory() );
}
}
}
Run Code Online (Sandbox Code Playgroud)
是否有办法配置JConsole以防止此应用程序消耗X大量内存?或者我需要通过JMX创建一个新的MBean?谢谢
我有一个原始ID列表,我应该放入临时表.我不确定它在SQL Server中是如何工作的:
我知道一般格式:
select PID into #myPIDs
from ... ?
Run Code Online (Sandbox Code Playgroud)
我已经有一个大约30个PID的列表,我将使用它.他们看起来像这样:
'U388279963',
'U388631403',
'U389925814'
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?谢谢!