我做的是一个员工信息查询
1.首先在employee.java中实例化字段
package com.systop.rwgl.employee.model;
import java.io.Serializable;
import java.util.List;
public class Employee implements Serializable{
private static final long serialVersionUID = -5469025483066661789L;
private String name;
private String sex;
private String birthday;
private String duty;
private String address;
private String number;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getDuty() {
return duty;
}
public void setDuty(String duty) {
this.duty = duty;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
}
2.在EmployeeDao中进行查询,这个方法将在EmployeeServlet中调用,
//查询所有员工信息
@SuppressWarnings("finally")
public List getEmployee(String no) throws Exception {
Connection conn = null;
PreparedStatement stmt = null;
List employeeList = new ArrayList();
try {
String sql = "select ID,TASK_USER_ID,TASK_DEPT_ID,EM_NO,EM_XM,EM_XB,EM_SR,EM_ZW,EM_ZZ,EM_SFZH from task_employee"; //要执行的SQL
conn = getConn();
stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
Employee e = new Employee();
e.setId(rs.getInt(1));
e.setUserid(rs.getInt(2));
e.setDeptid(rs.getInt(3));
e.setNo(rs.getInt(4));
e.setName(rs.getString(5));
e.setSex(rs.getString(6));
e.setBirthday(rs.getDate(7));
e.setDuty(rs.getString(8));
e.setAddress(rs.getString(9));
e.setNumber(rs.getString(10));
employeeList.add(e);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
conn.close();
}
if (stmt != null) {
stmt.close();
}
return employeeList;
}
}
/**
* 查询一条记录
* @return
* @throws SQLException
*/
public List getOne(int id) throws SQLException
{
String sql = " select ID,TASK_USER_ID,TASK_DEPT_ID,EM_NO,EM_XM,EM_XB,EM_SR,EM_ZW,EM_ZZ,EM_SFZH from task_employee where ID=?";
Connection conn = null;
PreparedStatement stmt = null;
conn = getConn();
stmt = conn.prepareStatement(sql);
stmt.setInt(1, id);
ResultSet rs = stmt.executeQuery();
List employeeOne = new ArrayList();
while (rs.next())
{
Employee em = new Employee();
em.setId(rs.getInt(1));
em.setUserid(rs.getInt(2));
em.setDeptid(rs.getInt(3));
em.setNo(rs.getInt(4));
em.setName(rs.getString(5));
em.setSex(rs.getString(6));
em.setBirthday(rs.getDate(7));
em.setDuty(rs.getString(8));
em.setAddress(rs.getString(9));
em.setNumber(rs.getString(10));
employeeOne.add(em);
}
return employeeOne;
}
3.在EmployeeServlet中调用Dao中的方法
/**
* 查询
*/
EmployeeDao employeeDao = new EmployeeDao();
List employeeList;
try {
employeeList = employeeDao.getEmployee(""); //调用Dao中的方法存到List集合中
/* for(int i = 0; i<employeeList.size();i++) {
Employee employee = (Employee)employeeList.get(i); //for循环用来在控制台输出字段,查看是否能获取到
System.out.println(employee.getName());
}*/
request.setAttribute("employeeList",employeeList); //通过employeeList传到前台
request.getRequestDispatcher("/employee/manager.jsp").forward(request, response); //重定向,设置跳转页面
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//查询一条记录
int id=Integer.valueOf(request.getParameter("id"));
/* System.out.println(id);*/ //可以在控制台判断是否能获取到id
EmployeeDao employeeDao = new EmployeeDao();
try {
List employeeOne = employeeDao.getOne(id);
/* System.out.println(employeeOne.size());*/
request.setAttribute("employeeOne",employeeOne); //通过employeeOne传到前台
request.getRequestDispatcher("/employee/edit.jsp").forward(request, response);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
4.查询所有员工信息的数据都放到employeeList中了,接下来将他显示到jsp页面上就可以啦,查询一条记录也是这样哦
<c:forEach items="${employeeList}" var="i" varStatus="status">
<TBODY>
<TR>
<TD>${status.index+1}</TD>
<TD>${i.no}</TD>
<TD>${i.name}</TD>
<TD>${i.sex}</TD>
<TD>${i.birthday}</TD>
<TD>${i.duty}</TD>
<TD>${i.address}</TD>
<TD>${i.number}</TD>
</c:forEach>