我目前正在创建一个返回静态页面的小型HTTP服务器<p>Hello!</p>...我尝试使用Java的套接字:
public static void main(String[] args) throws Exception {
// création de la socket
int port = 1989;
ServerSocket serverSocket = new ServerSocket(port);
System.err.println("Serveur lancé sur le port : " + port);
// repeatedly wait for connections, and process
while (true) {
// on reste bloqué sur l'attente d'une demande client
Socket clientSocket = serverSocket.accept();
System.err.println("Nouveau client connecté");
// on ouvre un flux de converation
BufferedReader in = new BufferedReader(
new InputStreamReader(clientSocket.getInputStream())
);
PrintWriter out = new PrintWriter( …Run Code Online (Sandbox Code Playgroud) 我使用Gson 库将Java对象转换为Json响应...问题是,在JPA请求之后,由于与其他实体的递归关系而无法转换从DB检索的对象(请参阅我之前的问题),例如:
public class Gps implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "IMEI", nullable = false, length = 20)
private String imei;
//some code here...
@OneToMany(cascade = CascadeType.ALL, mappedBy = "gpsImei", fetch = FetchType.LAZY)
private List<Coordonnees> coordonneesList;
public class Coordonnees implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "IDCOORDONNEES", nullable = false)
private Integer idcoordonnees;
//some code …Run Code Online (Sandbox Code Playgroud) 我有这个简单的表(仅用于测试):
create table table
(
key int not null primary key auto_increment,
name varchar(30)
);
Run Code Online (Sandbox Code Playgroud)
然后我执行以下请求:
insert into table values ( null , 'one');// key=1
insert into table values ( null , 'two');// key=2
Run Code Online (Sandbox Code Playgroud)
在这个阶段一切顺利,然后关闭H2控制台并重新打开它并重新执行此请求:
insert into table values ( null , 'three');// key=33
Run Code Online (Sandbox Code Playgroud)
最后,这是所有结果:

我不知道如何解决这个问题,如果这是一个真正的问题...等待作者的回复......
科莫迪亚说:
在Windows 8上使用Modern UI无法进行DLL注入,可以将DLL注入Metro应用程序,但是,您将无法将Winsock流量重定向到localhost.
换句话说,windows metro应用程序工作在沙箱环境中,无法完成DLL注入.
让我们看看Nektra 说的话:
你可以看到Komodia和Nektra说的是一个相互矛盾的信息,我的问题是Windows 8下DLL注入背后的真实情况,我可以照常将我的代码注入Metro应用程序(NT,win9x),就像Nektra所说的那样吗?
我从远程计算机使用H2数据库作为DBMS,因此我启用了从浏览器远程访问,如下所示:
webAllowOthers=true
Run Code Online (Sandbox Code Playgroud)
但是当我尝试从我的java应用程序连接到服务器时,我从H2获得此错误:
remote connections to this server are not allowed
Run Code Online (Sandbox Code Playgroud)
截图:

并且已经在查找代码分析器(错误代码:90117):
REMOTE_CONNECTION_NOT_ALLOWED = 90117
如果不允许远程连接,则尝试从另一台计算机连接到TCP服务器时会引发代码90117的错误.要允许远程连接,请使用选项-tcpAllowOthers启动TCP服务器,如下所示:
java org.h2.tools.Server -tcp -tcpAllowOthers
或者,从应用程序启动服务器时,使用: Server server = Server.createTcpServer(" - tcpAllowOthers"); server.start();
我不明白如何激活tcpAllowOthers,它在.h2.server.properties中不存在?
我有以下代码(使用谷歌地图API V3绘制地图):
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0px; padding: 0px }
#map_canvas { height: 100% ; width:100%;}
</style>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript">
var previousPosition = null;
function initialize() {
map = new google.maps.Map(document.getElementById("map_canvas"), {
zoom: 19,
center: new google.maps.LatLng(48.858565, 2.347198),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
}
if (navigator.geolocation)
var watchId = navigator.geolocation.watchPosition(successCallback, null, {enableHighAccuracy:true});
else
alert("Votre navigateur ne prend pas en compte la géolocalisation HTML5"); …Run Code Online (Sandbox Code Playgroud) 我有4个线程以并发方式运行(在数据库中插入/选择行),我是否必须关心同步访问或H2 Databse是否已经有机制来管理线程之间的访问?
PS:Connection conn变量在线程之间共享,因此连接是一次,因为我使用嵌入模式,因此只允许一个连接.
干杯.
我有以下代码:
NumberFormat nf=NumberFormat.getInstance(Locale.FRANCE);
nf.setMinimumFractionDigits(3);
String s= nf.format(3456.32);
// double d= Double.valueOf(s); error here
System.out.println(s);
Run Code Online (Sandbox Code Playgroud)
此代码显示:
3 456,320
Run Code Online (Sandbox Code Playgroud)
直到现在它都很好,但是想象当我从JFormattedTextField获得相同的格式时,我如何将"3 456,320"转换为字符串为double(3456.32)?
我已经尝试过了:
String s="3 456,320";
double d= Double.valueOf(s);
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误......
编辑:
经过多次测试,我发现代码不是那么健壮,例如:
//this works
String s="3456,6567";
NumberFormat nf1=NumberFormat.getInstance(Locale.FRANCE);
double d = (double) nf1.parse(s);
Run Code Online (Sandbox Code Playgroud)
但是这一个:
String s="3456,0";
NumberFormat nf1=NumberFormat.getInstance(Locale.FRANCE);
double d = (double) nf1.parse(s);
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
线程"main"中的异常java.lang.ClassCastException:java.lang.Long无法强制转换为java.lang.Double
通过利弊,我发现这非常强大:
double d = nf1.parse(s).doubleValue();
Run Code Online (Sandbox Code Playgroud)
我们必须多次测试软件!
我的问题是有点类似于此:我想检索行,其日期不已经与当前日期时间相比,超过20分钟,我的源代码:
EntityManagerFactory emf=Persistence.createEntityManagerFactory("JavaApplication21PU");
CoordonneesJpaController cjc=new CoordonneesJpaController(emf);
Timestamp nd=new Timestamp(System.currentTimeMillis());//now
nd.setMinutes(nd.getMinutes()-20);
EntityManager em = getEntityManager();
Query qr= em.createQuery("SELECT c FROM Coordonnees c WHERE c.date > '"+nd+"'");
java.util.List<Coordonnees> lC=qr.getResultList();
Run Code Online (Sandbox Code Playgroud)
我的实体:
public class Coordonnees implements Serializable {
//some code...
@Basic(optional = false)
@Column(name = "DATE", nullable = false)
@Temporal(TemporalType.TIMESTAMP)
private Date date;
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时:
Exception in thread "main" Local Exception Stack:
Exception [EclipseLink-3002] (Eclipse Persistence Services - 2.3.0.v20110604-r9504): org.eclipse.persistence.exceptions.ConversionException
Exception Description: The object [%2012-04-06 16:19:49.179%], of class [class java.lang.String], from mapping [org.eclipse.persistence.mappings.DirectToFieldMapping[date-->APIGPS.PUBLIC.COORDONNEES.DATE]] …Run Code Online (Sandbox Code Playgroud) 我要刷新Eleve从数据库到Jtable的列表.在Jtable它的自我绑定到一个可观察到的list< Eleve >,所以任何添加/删除列表中会自动更新Jtable.
我的代码解释了它的自我:
EleveJpaController ejc = new EleveJpaController(emf);
java.util.Collection<Eleve> data = ejc.findEleveByNiveauClasseNomPrenom(niv, classe, nom, prenom);
for (Eleve entity : data) {
entityManager.refresh(entity);
}
list.clear();
list.addAll(data);
Run Code Online (Sandbox Code Playgroud)
List <Eleve> findEleveByNiveauClasseNomPrenom(a,v,x,n):
public List<Eleve> findEleveByNiveauClasseNomPrenom(String niv,String classe,String nom, String prenom)
{
EntityManager em = getEntityManager();
Query qr= em.createQuery("SELECT e FROM Eleve e WHERE e.niv.niv like '%"+niv+"%' and e.class1.libelle like '%"+classe+"%' and e.nom like '%"+nom+"%' and e.prenom like '%"+prenom+"%'");
return qr.getResultList();
}
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,它是一个很好的Eleve对象列表..那么为什么抛出这个异常呢?
[EL …Run Code Online (Sandbox Code Playgroud) 全部在标题中,我不明白这次的问题有点不同,我对两个不同的程序使用了相同的对象(列表),但第二次不起作用,请参阅:
private void jMenuItem23ActionPerformed(java.awt.event.ActionEvent evt) {
init_creer_client();
List items = new ArrayList();
items.add("mawren");
items.add("blabla");
items.add("Bonjour");
CL.show(cartes,"creer_client");
}
Run Code Online (Sandbox Code Playgroud)
有关错误的屏幕截图:

缺点是它的工作顺利:
import java.awt.Dimension;
import java.awt.HeadlessException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import org.jdesktop.swingx.autocomplete.AutoCompleteDecorator;
public class Test_swingx extends JFrame {
public Test_swingx(String title) throws HeadlessException {
this.setTitle(title);
JPanel pan=new JPanel();
JTextField jtf=new JTextField();
jtf.setColumns(20);
List items = new ArrayList();
items.add("hello");
items.add("marwen");
items.add("allooo");
AutoCompleteDecorator.decorate(jtf, items,false);
pan.add(jtf);
this.setContentPane(pan);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.setBounds(280, 150, 500, 200);
}
public static void main(String[] args) { …Run Code Online (Sandbox Code Playgroud) 我有一个Swing界面,当我点击一个按钮时,一个线程是在无限远处创建的(属时为(true)...).
我的问题是:当我关闭主进程时,创建的线程会自动关闭吗?
java ×9
h2 ×3
jpa ×2
swing ×2
api ×1
arraylist ×1
concurrency ×1
eclipselink ×1
gson ×1
http ×1
javascript ×1
jdbc ×1
list ×1
recursion ×1
rfb-protocol ×1
sockets ×1
swingx ×1
timestamp ×1
windows ×1