EXCEL数据如何通过WEB页面导入到数据库中
发布网友
发布时间:2022-05-01 18:07
我来回答
共2个回答
热心网友
时间:2022-04-10 03:37
数据库中的表:
和javaBean中对应
javaBean:
public class mainpart {
private int id;
private String name;//名称
private String spid;
private String specification;//规格
private String suppid;
private String suppname;//供应商名称
private String authenticatedMarks;//认证标志
private String standard;//标准
private String parameter;//参数
private Integer modelId;
public Integer getModelId() {
return modelId;
}
public void setModelId(Integer modelId) {
this.modelId = modelId;
}
public String getAuthenticatedMarks() {
return authenticatedMarks;
}
public void setAuthenticatedMarks(String authenticatedMarks) {
this.authenticatedMarks = authenticatedMarks;
}
public String getStandard() {
return standard;
}
public void setStandard(String standard) {
this.standard = standard;
}
public String getParameter() {
return parameter;
}
public void setParameter(String parameter) {
this.parameter = parameter;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSpid() {
return spid;
}
public void setSpid(String spid) {
this.spid = spid;
}
public String getSpecification() {
return specification;
}
public void setSpecification(String specification) {
this.specification = specification;
}
public String getSuppid() {
return suppid;
}
public void setSuppid(String suppid) {
this.suppid = suppid;
}
public String getSuppname() {
return suppname;
}
public void setSuppname(String suppname) {
this.suppname = suppname;
}
}
上传调用:思想是读取excel中的每一行数据,从第1行起(第0列为表头),每列的数据转换为string类型的,在通过sql语句
依次插入数据库(插入,更新的两个函数就不再贴出了)
�1�3�1�3public class MainPartimportBean {
private static Logger log = Logger.getLogger(SampleBean.class);
public void insertDB(InputStream fp,String modelId) {
try {
HSSFWorkbook workbook = new HSSFWorkbook(fp);// 创建工作薄
HSSFSheet sheet = workbook.getSheetAt(0);// 得到工作表
HSSFRow row = null;// 对应excel的行
HSSFCell cell = null;// 对应excel的列
String Var="";
row = sheet.getRow((short)0);
int totalRow = sheet.getLastRowNum();// 得到excel的总记录条数
int modelId2 = Integer.valueOf(modelId);
String name = "";//名称
String specification = "";//规格
String suppname = "";//供应商名称
String parameter = "";//参数
String standard = "";//标准
String authenticatedMarks = "";//认证标志
for (short i = 1; i <=totalRow; i++) {
mainBean mb = new mainBean();
mainpart mp1 = new mainpart();
row = sheet.getRow(i);
cell = row.getCell((short)0);
if(cell!=null)
name = cell.getRichStringCellValue().toString();
mp1.setName(name);
cell = row.getCell((short)1);
if(cell!=null)
specification =cell.getRichStringCellValue().toString();
mp1.setSpecification(specification);
cell = row.getCell((short)2);
if(cell!=null)
suppname = cell.getRichStringCellValue().toString();
mp1.setSuppname(suppname);
cell = row.getCell((short)3);
if(cell!=null)
parameter = cell.getRichStringCellValue().toString();
mp1.setParameter(parameter);
cell = row.getCell((short)4);
if(cell!=null)
standard = cell.getRichStringCellValue().toString();
mp1.setStandard(standard);
cell = row.getCell((short)5);
if(cell!=null)
authenticatedMarks = cell.getRichStringCellValue().toString();
mp1.setAuthenticatedMarks(authenticatedMarks);
mp1.setModelId(modelId2);
if(mb.isEmptymainpart(authenticatedMarks))
mb.updataMainBymainpart(mp1);//防止数据重复
else
mb.newMainUpdata(mp1);//插入数据
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
热心网友
时间:2022-04-10 04:55
在SQL2000中有一个从EXCEL中读取数据的函数,具体忘记了。你在那个帮助里面找找一定有的,由于现在的电脑上没有安装,所以没有办法找。你把那个函数变通一下,采用SELECT ... INTO ...的方式可以实现数据的读取和插入,换句话说就是你所说的上传了