我想知道粘性和非粘性会话之间的区别.从互联网上阅读后我理解的内容:
粘性:只有单个会话对象.
非粘性会话:每个服务器节点的会话对象
JAXBContext context = JAXBContext
.newInstance(CreateExemptionCertificate.class);
Marshaller m = context.createMarshaller();
m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
m.marshal(cc, System.out);
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我将结果发送到控制台(我的意思是XML正在控制台上打印).我想把这个XML变成一个字符串.我没有得到我应该传递给marshal方法的哪个参数来获取String变量中的XML String而不是在控制台上打印它.任何有任何想法的人请分享.
在java中,据说所有类都是由类加载器加载的.
首先,bootstrap类加载器加载所有rt.jar类.
所以我仍然感到困惑,因为Classloader也是一个类,所以谁将加载这个BootStrapClassloader.
请解释一下.
我们的一位培训师在解释CountDownLatch和CyclicBarrier之间的差异时给出了一个例子.
CountDownLatch:假设一块石头可以被10个人抬起,所以你将等待所有10个人来.然后只有你可以抬起石头.
CyclicBarrier:如果你要去野餐,你需要先在一个共同的地方见面,从那里开始你的旅程.
如果有人同意这些意见,请给我一些细节.
我已经阅读了这两个类的sun API.但我还需要一些解释.
现在我将这作为我的JAXB Marshaller的XML输出
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><create></create>
Run Code Online (Sandbox Code Playgroud)
但我希望我的根元素为:
<create xmlns="http://ws.abc.com" xmlns:doc="http://ws.abc.com">
Run Code Online (Sandbox Code Playgroud)
我是否需要使用解析器修改它,或者是否有任何可用的注释.
我对Web服务很陌生.我无法找到JAX-WS和CXF之间的区别.
根据我的理解,JAX-WS是java和CXF提供的规范的实现.
如果我错了,请纠正我.
我希望日志应包含特定时区的日期条目.有没有办法强迫时区log4j.properties?
现在我正在使用JDK 1.5,因为您已经知道JDK 1.5中存在时区错误,该错误在JDK 1.5中被删除.在JDK 1.5的情况下,它默认显示"GMT"时区.我想在Log4j中配置我的特定时区.
我需要创建一个单例类而不保留静态方法.
我怎样才能做到这一点?
Synchronization
Date formats are not synchronized. It is recommended to create separate format instances for each thread. If multiple threads access a format concurrently, it must be synchronized externally
Run Code Online (Sandbox Code Playgroud)
上面的行在SimpleDateFormat类的JavaDoc中提到.
这是否意味着我们不应该将SimpleDateFormat对象创建为Static.
如果我们将它创建为静态,那么无论我们在哪里使用这个对象,我们都需要将它保存在Synchronized Block中.
我有一个名为MySQL表Student有两列Student_id和name.
我使用两个连接对象触发两个查询,它给了我一个例外:
Exception in thread "main" java.sql.SQLException: Lock wait timeout
exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4074)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4006)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2468)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2629)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2713)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2663)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:888)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:730)
at jdbc.ConnectUsingJdbc.main(ConnectUsingJdbc.java:19)
Run Code Online (Sandbox Code Playgroud)
以下是产生错误的代码:
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class ConnectUsingJdbc {
public static void main(String[] args)
throws ClassNotFoundException, SQLException{
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","root");
Connection connection1 = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","root");
connection.setAutoCommit(false);
connection1.setAutoCommit(false);
Statement statement = connection.createStatement(); …Run Code Online (Sandbox Code Playgroud) java ×8
jaxb ×2
classloader ×1
conceptual ×1
concurrency ×1
cxf ×1
jax-ws ×1
jdbc ×1
log4j ×1
mysql ×1
session ×1
singleton ×1
timezone ×1
transactions ×1