如何将jsp 中的数据导入到excel表格 中

如何将jsp 中的数据导入到excel表格 中,第1张

可以用servlet实现跳转redirectnameExcelxls就行了。

//拼凑excel文件名字

String filename = StringvalueOf(year)+StringvalueOf(month)+StringvalueOf(day)+h+mise+"xls";

String path = getServletContext()getRealPath("excelexport");

Systemoutprintln("path:"+path);

try{

FileOutputStream fos = new FileOutputStream(path+"/"+filename);

// 创建新的Excel 工作簿

HSSFWorkbook wb = new HSSFWorkbook();

// 在Excel 工作簿中建一工作表

HSSFSheet s = wbcreateSheet();

String sheetName = year+"-"+month+"-"+day;

wbsetSheetName(0, sheetName);

//在索引0的位置创建行(第一行)

HSSFRow row = screateRow((short)0);

HSSFCell cell0 = rowcreateCell((short) 0);// 第一列

HSSFCell cell1 = rowcreateCell((short) 1);

HSSFCell cell2 = rowcreateCell((short) 2);

HSSFCell cell3 = rowcreateCell((short) 3);

HSSFCell cell4 = rowcreateCell((short) 4);

HSSFCell cell5 = rowcreateCell((short) 5);

HSSFCell cell6 = rowcreateCell((short) 6);

// 定义单元格为字符串类型

cell0setCellType(HSSFCellCELL_TYPE_STRING);

cell1setCellType(HSSFCellCELL_TYPE_STRING);

cell2setCellType(HSSFCellCELL_TYPE_STRING);

cell3setCellType(HSSFCellCELL_TYPE_STRING);

cell4setCellType(HSSFCellCELL_TYPE_STRING);

cell5setCellType(HSSFCellCELL_TYPE_STRING);

cell6setCellType(HSSFCellCELL_TYPE_STRING);

cell0setEncoding(HSSFCellENCODING_UTF_16);

cell1setEncoding(HSSFCellENCODING_UTF_16);

cell2setEncoding(HSSFCellENCODING_UTF_16);

cell3setEncoding(HSSFCellENCODING_UTF_16);

cell4setEncoding(HSSFCellENCODING_UTF_16);

cell5setEncoding(HSSFCellENCODING_UTF_16);

cell6setEncoding(HSSFCellENCODING_UTF_16);

// 在单元格中输入数据

cell0setCellValue("科室名");

cell1setCellValue("版组");

cell2setCellValue("注册名");

cell3setCellValue("问题题目");

cell4setCellValue("问题内容");

cell5setCellValue("发表时间");

cell6setCellValue("Status");

KSuser ks =new KSuser();

HSSFRow[] rows = null;

if(list != null && listsize()>0){

rows = new HSSFRow[listsize()];

}

int j = 1;

for(int k=0;k <listsize();k++){

ks =listget(k);

//设置行从第二行开始

rows[j-1] =screateRow((short)(j));

String[] str =new String[7];

str[0]=ksgetKeshi();

str[1]=ksgetBanzu();

str[2]=ksgetReg_name();

str[3]=ksgetSubject();

str[4]=ksgetText();

str[5]=ksgetRe_day()toString();

str[6]=ksgetStatus();

for(int i=1;i <8;i++){

HSSFCell cell =rows[j-1]createCell((short)(i-1));

cellsetEncoding(HSSFCellENCODING_UTF_16);

cellsetCellType(HSSFCellCELL_TYPE_STRING);

cellsetCellValue(str[i-1]);

}

j++;

}

wbwrite(fos);

fosclose();

}catch(Exception e){

eprintStackTrace();

outprintln(" <script>alert('异常 *** 作,文件可能正保护中\\n请重试!');historygo(-1); </script>");

}

String urlname = requestgetRequestURI();

urlname = urlnamereplaceAll("excel", "excelexport");

urlname = urlname+"/"+filename;

Systemoutprintln("urlname:"+urlname);

//requestgetSession()setAttribute("excelfile", urlname);

responsesendRedirect(urlname);

分两步,1得到服务器端的String字符串,二、将字符串转成Double:

1、var str = "<%=ServerSideStringValue %>";

2、var double_var = Number(str);

你的是不是显示这句啊

orgapachejasperJasperException: javalangNullPointerException

这是空指针异常。

就是说你的文本框还没输入内容呢就已经执行了

String x=requestgetParameter("text1");

int ca=IntegerparseInt(x);//x什么都没有当然会空指针了(还有一种可能性就是jsp在执行的时候先执行脚本再执行页面,这种情况的的话就相当于你没有定义text1了,这样也可能会是空指针)

这两句了,建议你不要写这种脚本的格式

用EL表达式和jstl的组合

两种方法:1还是java代码。在jsp页面中,利用在这里面写代码。2jstl标签。首先你要在你的jsp头文件里面引用jstl标签库。其实也是java代码,只不过java封装了里面的代码。

首先在JSP页面的数据库处理部分使用:try {statement();}catch(SQLException e) {1、像上面的语句中,我不知道是复制过来的还是写错了:String sql=insert into tb_member values('+income+');很明显右边少了一个引号:String sql=insert into tb_member values('+income+');2、抛出异常中可能说明是违反主键约束:查看数据库表,将次主键约束暂时删除。3、抛出异常可能说明字符串被截断,说明你定义的char类型太短,一般向这样的字段保持定义在varchar(20)左右。4、本来还有可能是类型不匹配或指定参数太多或不够等,但就你题目中描述,只有一个字段就能出现这样的异常了。出于个人开发经验的一点点建议:以后连接数据库不要这样去连接,尽量使用Bean去完成,不然程序很混乱,以后维护非常困难。对数据库的 *** 作不要显示地去指定参数和表,尤其是参数,可以使用预处理方式,多步骤连贯 *** 作,可以使用事务来达到数据 *** 作的原子性,当然某些也可以通过数据库的事务去完成。多步骤的非连贯信息的 *** 作可以使用JDBC 30提供的批处理方式去完成以提高对数据库的批量访问成10倍得提高效率。像在做通用模板的时候,对数据库的表的指定的动态赋予的,当然对其某些字段的 *** 作也是动态的,那么数据库类型和参数的个数也是动态的,如果用上述过程去完成非常困难。尤其还要对一些数据库内部的空值异常进行处理。1、公司数据没有改变,就改变报表的样式。2、公司报表总数没有变,某些报表数据有增加或删除的现象。3、公司的报表有增加。

如果你没有使用框架,那就用html语言和<%%> scriptlet来处理。

类似这样子

<%

List list= 数据List;//你的数据

%>

<table border="1">

<tr>

<td>ID</td>

<td>名字</td>

<td>年龄</td>

</tr>

<%

for(int i=0;i<listsize();i++){

%>

<tr>

<td><%=(Data)listget(i)id%></td>

<td><%=(Data)listget(i)name%></td>

<td><%=(Data)listget(i)age%></td>

</tr>

<%

}

%>

</table>

-----------------------------------------------------

你参考下我今天上课了的读数据库写法就行了,记得引包。

-----------------------------------------------------

请参考下面的资料,struts标签用法参考,查看optgroup章节

方法:

requestgetParameter("")得到的是String类型的数据:

应该是Sting age = requestgetParameter("age");

如果想转化为int类型的,再进行转化:int int_age = IntIntegerparseInt(age

以上就是关于如何将jsp 中的数据导入到excel表格 中全部的内容,包括:如何将jsp 中的数据导入到excel表格 中、javascript中使用jsp从数据库读取的String类型数据,并将String转换成duouble.、JSP 数据类型转换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10165256.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存