package com.lovo.dao.impl;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import com.lovo.dao.InterEmp;
import com.lovo.util.DBUtil;
import com.lovo.util.XMLUtil;
import com.lovo.vo.EmpVo;
public class EmpDao implements InterEmp {
public static final String SQL_SEARCH_ADVANCE = "searchAdvance";
public static final String SQL_SEARCH_ADVANCE_CUT_PAGE = "searchAdvanceCutPage";
public static final String SQL_COUNT_LINE = "countLine";
public static final String SQL_GET_ALL_JOB = "getAllJob";
public List<EmpVo> getAllJob() throws Exception {
DBUtil db = new DBUtil();
Connection conn = db.getConnection();
String sql = XMLUtil.getSQL(SQL_GET_ALL_JOB);
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery(sql);
List<EmpVo> list = new ArrayList<EmpVo>();
while (rs.next()) {
EmpVo emp = new EmpVo();
emp.setJob(rs.getString("JOB"));
list.add(emp);
}
db.close(rs, sta, conn);
return list;
}
public int count(String sql) throws Exception {
DBUtil db = new DBUtil();
Connection conn = db.getConnection();
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery(sql);
rs.next();
int row = rs.getInt(1);
db.close(rs, sta, conn);
return row;
}
public OutputStream searchAdvance(String sql) throws Exception {
DBUtil db = new DBUtil();
Connection conn = db.getConnection();
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery(sql);
OutputStream out = writeToArray(rs);
// List<EmpVo> list = new ArrayList<EmpVo>();
// while (rs.next()) {
// EmpVo vo = new EmpVo();
// vo.setDeptno(rs.getInt("deptno"));
// vo.setEname(rs.getString("ename"));
// vo.setJob(rs.getString("job"));
// vo.setMgr(rs.getInt("mgr"));
// vo.setComm(rs.getFloat("comm"));
// vo.setDname(rs.getString("dname"));
// vo.setEmpno(rs.getInt("empno"));
// vo.setHiredate(rs.getDate("hiredate"));
// vo.setLoc(rs.getString("loc"));
// vo.setSal(rs.getFloat("sal"));
// list.add(vo);
// }
db.close(rs, sta, conn);
return out;
}
public OutputStream writeToArray(ResultSet rs) throws Exception {
ByteArrayOutputStream out = new ByteArrayOutputStream();
FileInputStream in = new FileInputStream("E:/lovo/emp_search_constitute/WebRoot/WEB-INF/template.xls");
// 工作表(excel文件本身)
HSSFWorkbook wb = new HSSFWorkbook(in);
// 建立电子表 sheet
HSSFSheet sheet = wb.getSheet("Sheet1");
// 在第一行填充数据
ResultSetMetaData msmd = rs.getMetaData();
int count = msmd.getColumnCount();
HSSFRow titleRow = sheet.createRow(1);
for(int i = 0;i<count;i++){
titleRow.createCell((short)i).setCellValue(msmd.getColumnName(i+1));
}
int rowNum = 2;
while(rs.next()){
HSSFRow row = sheet.createRow(rowNum);
row.createCell((short)0).setCellValue(rowNum-1);
for(int i = 0;i<count;i++){
System.out.println(row);
Object value = rs.getObject(i+1);
String valueStr = "";
if(value != null){
valueStr = value.toString();
}
System.out.println(value);
row.createCell((short)i).setCellValue(valueStr);
}
rowNum++;
}
wb.write(out);
rs.close();
return out;
}
public List<EmpVo> searchAdvanceCutPage(String sql, int uprow, int downrow)
throws Exception {
DBUtil db = new DBUtil();
Connection conn = db.getConnection();
PreparedStatement pre = conn.prepareStatement(sql);
pre.setInt(1, uprow);
pre.setInt(2, downrow);
ResultSet rs = pre.executeQuery();
List<EmpVo> list = new ArrayList<EmpVo>();
while (rs.next()) {
EmpVo vo = new EmpVo();
vo.setDeptno(rs.getInt("deptno"));
vo.setEname(rs.getString("ename"));
vo.setJob(rs.getString("job"));
vo.setMgr(rs.getInt("mgr"));
vo.setComm(rs.getFloat("comm"));
vo.setDname(rs.getString("dname"));
vo.setEmpno(rs.getInt("empno"));
vo.setHiredate(rs.getDate("hiredate"));
vo.setLoc(rs.getString("loc"));
vo.setSal(rs.getFloat("sal"));
list.add(vo);
}
db.close(rs, pre, conn);
return list;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
emp_search_constitute.rar (53个子文件)
emp_search_constitute
src
com
lovo
control
ActionServlet.java 2KB
dao
InterDept.java 171B
InterEmp.java 414B
impl
EmpDao.java 4KB
DeptDao.java 880B
WriteDao.java 67B
service
InterService.java 272B
ServiceFactory.java 1KB
impl
GetAllNeedService.java 840B
SearchEmpService.java 3KB
DownloadExcelService.java 2KB
SearchEmpService2.java 2KB
util
XMLUtil.java 1KB
BeanUtil.java 3KB
DBUtil.java 3KB
vo
EmpVo.java 1KB
qo
SearchQo.java 2KB
.project 1KB
WebRoot
META-INF
MANIFEST.MF 39B
WEB-INF
info.xml 449B
web.xml 629B
sql.xml 2KB
classes
com
lovo
control
ActionServlet.class 3KB
dao
InterEmp.class 542B
InterDept.class 264B
impl
DeptDao.class 2KB
WriteDao.class 285B
EmpDao.class 6KB
service
ServiceFactory.class 2KB
InterService.class 292B
impl
DownloadExcelService.class 2KB
GetAllNeedService.class 1KB
SearchEmpService.class 4KB
SearchEmpService2.class 3KB
util
DBUtil.class 5KB
XMLUtil.class 3KB
BeanUtil.class 5KB
vo
EmpVo.class 2KB
qo
SearchQo.class 2KB
template.xls 14KB
lib
dom4j-1.6.1.jar 307KB
standard.jar 384KB
poi-3.0.1-FINAL-20070705.jar 888KB
jstl.jar 20KB
Oracle 10g 10.1.0.5 JDBC_classes12.jar 1.38MB
jaxen-1.1-beta-7.jar 222KB
empList.jsp 5KB
js
Calendar.js 14KB
index.jsp 5KB
error.jsp 793B
search2.jsp 5KB
.mymetadata 336B
.classpath 837B
.myeclipse
共 53 条
- 1
资源评论
- 逍遥o枫2013-09-11可以,借鉴下!
zhaohezhi
- 粉丝: 7
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功