「java调用ctp」java调用dll动态库
今天给各位分享java调用ctp的知识,其中也会对java调用dll动态库进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java程序相关
- 2、在Java的ctp中,客户端文件上传到服务端时候,老是出现connected rest异常,为什么。代码如下:
- 3、java怎么写带复选框的表格
- 4、java怎么调用thostftdctraderapi.h
java程序相关
哥们你弄得咋那么难啊,嗨,有那么好的 数据库你应该直接用数据库来实现。看我的,
{String sq="select * from 用户 where name='"+user.getText()+"' and mima='"+pas+"'";
try {
String sss=(new DBconnection()).getnumber(sq);
if(sss.equals("null"))
JOptionPane.showMessageDialog(null,"用户名不正确或密码错误!");
else
{
f.setVisible(false);
new Selctapart(f);}
这是其中一段代码。new DBconnection()).getnumber(sq)
这是一个方法
String getnumber(String str) throws ClassNotFoundException, SQLException
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection
("jdbc:odbc:"+Source,"","");
st=con.createStatement();
rs=st.executeQuery(str);
rs.next();
int bo=rs.getRow();
String s="";
if(bo!=0)
s=rs.getString(1);
else s="null";
rs.close();
st.close();
con.close();
return s;
}
看看吧。这样用起来会很简单的,以后就会更简单的。
在Java的ctp中,客户端文件上传到服务端时候,老是出现connected rest异常,为什么。代码如下:
client中的out.flush()有问题。不能再循环内out.flush,它会向Server将你的OutputStream发送过去,然后你的服务器取读了一句话就写入了一句话关闭了。下一个循环你再向服务器推送数据就会发现连接关闭了。不知道正不正确。
关于使用Socket的flush过去无法readLine得到的问题
原因是这样的:
flush方法只是将字符刷新过去。
readLine方法读取一行数据,注意:一行数据是以\r\n作为终止条件的。
flush过去的数据一般是没有换行符的,所以就无法读取。
为什么有时候我们flush过去的却能够得到呢?有些时候,我们flush之后就没有代码了,然后代码执行完自动将流close调,所以给它加上了换行符过去,所以readLine可以读取到。
close方法也会刷新缓存流,并且会在数据结尾加上换行符。
这个很关键!
你可以尝试在flush之前使用BufferedWriter的newLine();方法,这样你会发现flush刷新过去的在服务器端是可以读取到的,不一定需要shutdownInputStream或者shutDownOutputStream。
newLine
public void newLine()
throws IOException
写入一个行分隔符。行分隔符字符串由系统属性 line.separator 定义,并且不一定是单个新行 ('\n') 符。
抛出:
IOException - 如果发生 I/O 错误
close
public abstract void close()
throws IOException
关闭此流,但要先刷新它。在关闭该流之后,再调用 write() 或 flush() 将导致抛出 IOException。关闭以前关闭的流无效。
指定者:
接口 Closeable 中的 close
抛出:
IOException - 如果发生 I/O 错误
flush
public void flush()
throws IOException
刷新该流的缓冲。
指定者:
接口 Flushable 中的 flush
指定者:
类 Writer 中的 flush
抛出:
IOException - 如果发生 I/O 错误
readLine
public String readLine()
throws IOException
读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行。
返回:
包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null
java怎么写带复选框的表格
是j2se的代码吧。
//JCheckBoxTest.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JCheckBoxTest extends JApplet implements ItemListener{
//变量定义
int sum=0, a=0, b=0, c=0, d=0;
Container ctp=getContentPane();
JTextField tf=new JTextField(10);
JLabel lb=new JLabel("总价:");
JCheckBox cb1,cb2,cb3,cb4;
JButton btn=new JButton("清除");
//初始化小程序
public void init(){
ctp.setLayout(new FlowLayout());
cb1=new JCheckBox("显示器1350",false);
cb1.addItemListener(this);
ctp.add(cb1);
cb2=new JCheckBox("内存780",false);
cb2.addItemListener(this);
ctp.add(cb2);
cb3=new JCheckBox("硬盘1100",false);
cb3.addItemListener(this);
ctp.add(cb3);
cb4=new JCheckBox("CPU410",false);
cb4.addItemListener(this);
ctp.add(cb4);
ctp.add(lb);
ctp.add(tf);
ctp.add(btn);
btn.addActionListener(new koListener());
}
//选项的选择
public void itemStateChanged(ItemEvent e){
JCheckBox cbx=(JCheckBox)e.getItem();
if (cbx==cb1) a=1350;
if (cbx==cb2) b=780;
if (cbx==cb3) c=1100;
if (cbx==cb4) d=410;
sum=a+b+c+d;
tf.setText(String.valueOf(sum)+"元");
}
//计算
class koListener implements ActionListener{
public void actionPerformed(ActionEvent e){
cb1.setSelected(false);
cb2.setSelected(false);
cb3.setSelected(false);
cb4.setSelected(false);
a=0; b=0; c=0; d=0;
sum=a+b+c+d;
tf.setText(String.valueOf(sum)+"元");
}
}
}
试试这个。
java怎么调用thostftdctraderapi.h
这个是c/c++的头文件,java无法直接调用。
如果要开发ctp,其原生接口是c/c++的,建议用c/c++来开发,而不是java。
java调用ctp的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java调用dll动态库、java调用ctp的信息别忘了在本站进行查找喔。
发布于:2022-12-06,除非注明,否则均为
原创文章,转载请注明出处。