问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用java设计一个程序,通过程序将下表中数据存储到记录中

发布网友 发布时间:2022-05-19 01:27

我来回答

2个回答

热心网友 时间:2024-03-02 17:27

你的问题本身就有太多疑问,想帮都帮不上。
1.什么表?是EXCEL的表吗?如果是,等下告诉你如何POI插件实现.
2.存储到什么记录?数据库?什么数据库?SQL SERVER?如果是,同样等下告诉你方法;
3.是纯JAVA实现还是可以JSP实现?因为用JSP实现也挺简单的。

这样吧,我就在一知半解的情况下给出解决办法吧:
1.首先,这个是JSP实现的通过上传EXCEL表然后存储到SQL SERVER中的代码:
(PS:首先要用JXL包)
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.io.*,jxl.*,jxl.write.*,jxl.write.*,jxl.format.*"%>
<%@page import="java.sql.*"%>
<%@page import="java.util.*"%>
<%@ page import="java.awt.*"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ page import="com.jspsmart.SmartFile"%>
<jsp:useBean id="common" class="com.teach.db.commonMethod" scope="page">
</jsp:useBean>
<%//实现EXCEL文件上传,上传之后把EXCEL文件中的内容导入SQL server数据库中

//用smartUpload组件把EXCEL文件上传
com.jspsmart.SmartUpload smartUpload = new com.jspsmart.SmartUpload(); //初始化smartUPload
smartUpload.initialize(pageContext);
smartUpload.service(request, response);
smartUpload.upload();
com.jspsmart.SmartFile file = smartUpload.getFiles().getFile(0); //得到上页输入的文件
//取中文表单参数
String newFileName = "test.xls";
//改名上传
file.saveAs("excel/" + newFileName, smartUpload.SAVE_VIRTUAL);

%>
<%!public String codeToString(String str) {//处理中文字符串的函数
String s = str;
try {
byte tempB[] = s.getBytes("ISO-8859-1");
s = new String(tempB);
return s;
} catch (Exception e) {
return s;
}
}

%>
<html>
<head>
<title></title>
</head>
<body>
<%//得到前页传过来的参数
String courseId=session.getAttribute("courseId").toString();
%>
<%String path = request.getRealPath("\\") + "excel" + "\\"
+ "test.xls";//Excel文件URL
InputStream is = new FileInputStream(path);//写入到FileInputStream
jxl.Workbook wb = Workbook.getWorkbook(is); //得到工作薄
jxl.Sheet st = wb.getSheet(0);//得到工作薄中的第一个工作表

int rsRows = st.getRows(); //得到excel的总行数
for (int i = 1; i < rsRows; i++) {
Cell cell0 = st.getCell(0, i);//得到工作表的第一个单元格,即A1
Cell cell1 = st.getCell(1, i);//得到工作表的第二个单元格,即A1

try {
String content0 = cell0.getContents();//getContents()将Cell中的字符转为字符串
int content1 = Integer.parseInt(cell1.getContents()); //得到条形码

//存入数据库
String sql = "insert into sy_score(courseId,scoreStudentName,score)"
+ "values("
+ courseId
+ ",'"
+ content0
+ "',"
+ content1+")";
System.out.println(sql);
common.Del_Insert(sql); //执行SQL语句
} catch (Exception e) {
//如果EXCEL文件中输入的数据有错,则跳过此行数据
session.setAttribute("message", "有错误,不能导入,请检查您的excel文件");
continue;
}

}
wb.close();//关闭工作薄
is.close();//关闭输入流
response.sendRedirect("insert_done.jsp"); //转到成功页

%>
</body>
</html>

2.如果不是要JSP的,那么来看看用纯JAVA如何实现:

(PS:要用到APACHE的POI)

用Apacher的POI读取Excel,再写入SQL Server就可以
这个是读取的例子 读取分析完后直接写入库中就行
public class ReadExcelToSql
{
private void readExcel(File file)
{
DecimalFormat df = new DecimalFormat("#");

try
{
HSSFWorkbook book=new HSSFWorkbook(new FileInputStream(file));
for(int numSheets=0;numSheets<book.getNumberOfSheets();numSheets++)
{
if(null!=book.getSheetAt(numSheets))
{
//System.out.println("Sheet存在");
HSSFSheet sheet=book.getSheetAt(numSheets);
for(int numRows=0;numRows<=sheet.getLastRowNum();numRows++)
{
if(null!=sheet.getRow(numRows))
{
//System.out.println("Row存在");
HSSFRow row=sheet.getRow(numRows);
for(short numCells=0;numCells<=row.getLastCellNum();numCells++)
{
if(null!=row.getCell(numCells))
{
HSSFCell cell=row.getCell(numCells);
int cellType=cell.getCellType();
switch(cellType)
{
case 0:
System.out.print(df.format(cell.getNumericCellValue()));
break;
case 1:
System.out.print(cell.getRichStringCellValue());
break;
default:break;
}

System.out.print("\t");
}
}
System.out.println();
}
}
}
}
}catch(Exception ex)
{
ex.printStackTrace();
}
}
}
具体表项之间的对应你自己稍微设计一下就可以了。还有不明白的可以给我留言.

热心网友 时间:2024-03-02 17:27

出钱么
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 关于(爱铁路护铁)的优美段落 关于“爱护铁路”的8字名言有哪些? 爱护铁路的作文两百字 链表所表示的元素是否有序?如有序,则有序性体现于何处 急!!!建立两个有序的链表 人教版四年级下册语文意外收获得阅读答案 生成有序链表 爱铁路护铁路为的作文 如何获得有序链表指定节点前一个节点 将长度m和n的有序链表合并为一个个新的有序链表的算法的时间复杂度为? 山东花农商银行贷款种类 求 耳光乐队 狼局长十八摸 mp3 耳光乐队常驻在哪 耳光乐队,十 声笑,有的发。 耳光乐队 獾知县 歌词 耳光乐队的介绍 求 耳光乐队 的 相忘于江湖 吉他谱。 耳光乐队都有什么歌曲 想问问,有个中国的乐队,主唱是男的,留着把小胡子,拿着把扇子来唱歌的。有人知道是叫啥名字吗? 耳光乐队的专辑有哪些? SQL Server某一数据表最多能存储多少条记录 数据记录的详细介绍 以爱护铁路,珍爱生命为题的一句话 铁路护路童谣 初中生爱路护路必知 手机上如何获取115浏览器的100个额度 77华氏度等于多少摄氏度 GPS的经纬度用百度地图匹配与实际位置相差太大! arcgis怎样将地图和经纬度匹配 手机上哪里下《115浏览器》APP?谁找到了告诉我!谢谢! c#匹配度分秒经纬度的正则表达式 excel如何把2组含经纬度的地址匹配最近距离并显示相应地址 excel如何把已知两组经纬度和对应的地址匹配最近的距离并显示相应地址? VBA如何把带经纬度的点匹配到有经纬度(50*50米栅格中心点经纬度)的栅格里? 0摄氏度等于32华氏度,100摄氏度等于212华氏度,求77华氏度等于多少摄氏度?求具体解法 excel数据在两个表中怎么匹配 某日小明从伦敦起飞时温度为77华氏度,回到北京温度为22摄氏度,两地温差为多少摄氏? 如何通过经度和纬度来道路匹配 我想弄个基于单片机的GPS定位,显示屏中的地图如何生成呢?怎么样实现坐标和经纬度的匹配啊~ 如何通过匹配excel的两个表中的两列数据,来获得整合数据?