我正在研究我的第一个基于桌面的Java项目.我实际上有两个问题
1)如何对JOptionPane.showMessageDialog的OK按钮执行操作.我想在单击确定时导航到新的Jframe说x.java.
2)我有一个名为user的表.此表有8列userid(主键),名称,密码,emailid,dob,mobileno,city,date.必须从Jframe x中获取四个列条目,而从其他Jframe y中获取四个列条目.
我写了以下代码
对于第X帧
PreparedStatement stm = con.prepareStatement("insert into user
(userrid,name,password,emailid))values (?,?,?,?) ");
stm.setString(1,id); // id is a public variable
stm.setString(2,name);
stm.setString(3,ps);
stm.setString(4,email);
stm.executeUpdate();
Run Code Online (Sandbox Code Playgroud)
对于帧Y.(userid是主键)
public class Y extends javax.swing.JFrame
{
X o = new X(); // to access id variable from frame X
}
PreparedStatement stm = con.prepareStatement(" update user set dob ='? ', mobileno
='?' ,city='?', date='?' where userid= 'o.id' ");
Run Code Online (Sandbox Code Playgroud)
它不断抛出上述sql查询的异常
java.sql.SQLException:参数索引超出范围(1>参数个数,为0).
我是Java新手.我创建了一个通用的产品类型列表,如何将其添加到数据库中.该列表包含Products的对象,数据库中的列是Products类的字段.即使我通过listvariable.get(0)等分隔列表,我得到的是对象,而不是该对象内的值.
更新:使用for循环插入并获取每个对象的字段.有没有更好的方法
import java.util.*;
public class Products {
public static List <Products> li = new ArrayList<Products> ();
static
{
Products o = new Products (1,"Milky Way",12.0,7); // Static because
Products o1 = new Products (2,"Dairy Milk",50.0,17); // these entries
Products o2 = new Products (3,"Borunville",70.0,27); // are mandatory
Products o3 = new Products (4,"Lindt",1022.0,107);
li.add(o);
li.add(o1);
li.add(o2);
li.add(o3);
}
int ItemCode;
String ItemName;
double UnitPrice;
int AvailableCount;
public int v=3;
Products()
{}
Products (int x,String y, double c, int d) …Run Code Online (Sandbox Code Playgroud) 我有一个静态产品列表类型.当我从Shopowner类填充此列表时,它工作正常,但是当我编译Customer.java时,列表返回空白集.为什么填充的列表没有保留?
class Products {
String name;
int itemcode;
Products(){}
static List <Products> list = new ArrayList<Products>();
Products(String name,int itemcode)
{
this.name=name;
this.itemcode=itemcode;
}
public String toString()
{return (name+""+itemcode);}
}
class Shopowner {
public static void main (String ...at)
{
Products o = new Products("Shamppo",12);
Products.list.add(o);
Products o1 = new Products("choco",1112);
Products.list.add(o1);
System.out.println(Products.list); //prints fine
}
}
class Customer {
public static void main (String args[])
{
System.out.println(Products.list); //prints []
}
}
Run Code Online (Sandbox Code Playgroud)
OutPut(编译Customer.jav时)
[]
Run Code Online (Sandbox Code Playgroud)