📄 yuangong.java
字号:
package pmsys.dy;
import java.io.File;
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.PreparedStatement;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.sql.DataSource;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.upload.FormFile;
import org.apache.struts.actions.DispatchAction;
import com.jspsmart.upload.*;
import pmsys.UserForm;
public class YuanGong extends DispatchAction
{
//添加员工前进行数据库查询,并显示在(/manage/addyg.jsp)上
public ActionForward chaXun(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
{
ArrayList jlist = new ArrayList();
ArrayList jlist1 = new ArrayList();
ArrayList jlist2 = new ArrayList();
ArrayList jlist3 = new ArrayList();
ArrayList jlist4 = new ArrayList();
ArrayList jlist5 = new ArrayList();
try
{
DataSource ds = (DataSource)this.getDataSource(request,"oracledb");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
Statement stmt1 = conn.createStatement();
Statement stmt2 = conn.createStatement();
Statement stmt3 = conn.createStatement();
Statement stmt4 = conn.createStatement();
Statement stmt5 = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM nations");
ResultSet rs1 = stmt1.executeQuery("SELECT * FROM xuelis");
ResultSet rs2 = stmt2.executeQuery("SELECT * FROM states");
ResultSet rs3 = stmt3.executeQuery("SELECT * FROM departments");
ResultSet rs4 = stmt4.executeQuery("SELECT * FROM zhichengs");
ResultSet rs5 = stmt5.executeQuery("SELECT * FROM zhiwus");
while (rs.next())
{
UserForm uf = new UserForm();
uf.setDeptno(rs.getString("nation_name"));
jlist.add(uf);
}
while (rs1.next())
{
UserForm uf = new UserForm();
uf.setDname(rs1.getString("xue_name"));
jlist1.add(uf);
}
System.out.println(jlist1.size());
while (rs2.next())
{
UserForm uf = new UserForm();
uf.setLoc(rs2.getString("states_name"));
jlist2.add(uf);
}
while (rs3.next())
{
UserForm uf = new UserForm();
uf.setDate(rs3.getString("dep_name"));
jlist3.add(uf);
}
while (rs4.next())
{
AdForm ad = new AdForm();
ad.setAa(rs4.getString("zhicheng_name"));
jlist4.add(ad);
}
while (rs5.next())
{
AdForm ad = new AdForm();
ad.setBb(rs5.getString("zhiwu_name"));
jlist5.add(ad);
}
conn.close();
}
catch (Exception e)
{
e.printStackTrace();
}
request.setAttribute("jlist",jlist);
request.setAttribute("jlist1",jlist1);
request.setAttribute("jlist2",jlist2);
request.setAttribute("jlist3",jlist3);
request.setAttribute("jlist4",jlist4);
request.setAttribute("jlist5",jlist5);
return mapping.findForward("add");
}
//添加新员工信息到数据库表中
public ActionForward addYg(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception
{
UploadForm uploadForm = (UploadForm) form;
// Process the FormFile
FormFile myFile = uploadForm.getJianli();
String contentType = myFile.getContentType();
String fileName = myFile.getFileName();
int fileSize = myFile.getFileSize();
byte[] fileData = myFile.getFileData();
System.out.println("contentType: " + contentType);
System.out.println("File Name: " + fileName);
System.out.println("File Size: " + fileSize);
//String u =
//request.getSession().getServletContext().getRealPath("/");//得到访问资源的硬盘绝对路径
FileOutputStream out = new FileOutputStream(new File("c:\\" + fileName));
out.write(fileData);
out.close();
//-------------------------
HttpSession session = request.getSession();
session.setAttribute("contentType", contentType);
session.setAttribute("fileName", fileName);
session.setAttribute("fileSize", Integer.valueOf(fileSize));
String name1 = request.getParameter("name");
String sex1 =request.getParameter("sex");
String date1 = request.getParameter("date");
String nation1 = request.getParameter("nation");
String xueli1 = request.getParameter("xueli");
String dept1 = request.getParameter("dept");
String zhiwu1 = request.getParameter("zhiwu");
String zhicheng1 = request.getParameter("zhicheng");
String state1 = request.getParameter("state");
//String jianli1 = request.getParameter("jianli");
String shenfen1 = request.getParameter("shenfen");
String shehui1 = request.getParameter("shehui");
int tuizi = Integer.parseInt(request.getParameter("tuizi"));
String tuishi1 = request.getParameter("tuishi");
try {
String name = new String(name1.getBytes("iso-8859-1"),"gbk");
String sex = new String(sex1.getBytes("iso-8859-1"),"gbk");
String date = new String(date1.getBytes("iso-8859-1"),"gbk");
String nation = new String(nation1.getBytes("iso-8859-1"),"gbk");
String xueli = new String(xueli1.getBytes("iso-8859-1"),"gbk");
String dept = new String(dept1.getBytes("iso-8859-1"),"gbk");
String zhiwu = new String(zhiwu1.getBytes("iso-8859-1"),"gbk");
String zhicheng = new String(zhicheng1.getBytes("iso-8859-1"),"gbk");
String state = new String(state1.getBytes("iso-8859-1"),"gbk");
String shenfen = new String(shenfen1.getBytes("iso-8859-1"),"gbk");
String shehui = new String(shehui1.getBytes("iso-8859-1"),"gbk");
String tuishi = new String(tuishi1.getBytes("iso-8859-1"),"gbk");
System.out.println(xueli);
DataSource ds = (DataSource)this.getDataSource(request,"oracledb");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
Statement stmt1 = conn.createStatement();
Statement stmt2 = conn.createStatement();
Statement stmt3 = conn.createStatement();
Statement stmt4 = conn.createStatement();
Statement stmt5 = conn.createStatement();
String sql = "SELECT xue_id FROM xuelis WHERE xue_name='"+xueli+"'";
String sql1 = "SELECT dep_id FROM departments WHERE dep_name='"+dept+"'";
String sql2 = "SELECT states_id FROM states WHERE states_name='"+state+"'";
String sql3 = "SELECT nation_id FROM nations WHERE nation_name='"+nation+"'";
String sql4 = "SELECT zhicheng_id FROM zhichengs WHERE zhicheng_name='"+zhicheng+"'";
String sql5 = "SELECT zhiwu_id FROM zhiwus WHERE zhiwu_name='"+zhiwu+"'";
ResultSet rs = stmt.executeQuery(sql);
ResultSet rs1 = stmt1.executeQuery(sql1);
ResultSet rs2 = stmt2.executeQuery(sql2);
ResultSet rs3 = stmt3.executeQuery(sql3);
ResultSet rs4 = stmt4.executeQuery(sql4);
ResultSet rs5= stmt5.executeQuery(sql5);
rs.next();
rs1.next();
rs2.next();
rs3.next();
rs4.next();
rs5.next();
System.out.println("5555555555");
System.out.println(rs1.getInt("dep_id"));
int xue_id = rs.getInt("xue_id");
int dep_id = rs1.getInt("dep_id");
int states_id = rs2.getInt("states_id");
int nation_id = rs3.getInt("nation_id");
int zhicheng_id = rs4.getInt("zhicheng_id");
int zhiwu_id = rs5.getInt("zhiwu_id");
Statement stmt0 = conn.createStatement();
String sql0 = "SELECT max(emp_id) m FROM employees";
ResultSet rs0 = stmt0.executeQuery(sql0);
rs0.next();
int m = rs0.getInt("m")+1;
String sql6 = "INSERT INTO employees VALUES(?,?,?,?,?,?,?,to_date(?,'yyyy-mm-dd'),?,?,?,?,to_date(?,'yyyy-mm-dd'))";
PreparedStatement stmt6 = conn.prepareStatement(sql6);
stmt6.setInt(1,m);
stmt6.setInt(2,xue_id);
stmt6.setInt(3,dep_id);
stmt6.setInt(4,states_id);
stmt6.setInt(5,nation_id);
stmt6.setString(6,name);
stmt6.setString(7,sex);
stmt6.setString(8,date);
stmt6.setString(9,"c:\\" + fileName);
stmt6.setString(10,shenfen);
stmt6.setString(11,shehui);
stmt6.setInt(12,tuizi);
stmt6.setString(13,tuishi);
stmt6.executeUpdate();
Statement stmt7 = conn.createStatement();
String sql7 = "INSERT INTO emp_zhich VALUES("+m+","+zhicheng_id+")";
int rs7 = stmt7.executeUpdate(sql7);
Statement stmt8 = conn.createStatement();
String sql8 = "INSERT INTO emp_zhiwu VALUES("+m+","+zhiwu_id+")";
int rs8 = stmt8.executeUpdate(sql8);
conn.close();
}
catch (Exception e) {
e.printStackTrace();
}
return mapping.findForward("yuangong");
}
//公用的方法:未执行操作前,全部信息查询(某一状态下)
public void yuangCha (HttpServletRequest request)
{
HttpSession session = request.getSession();
ArrayList jlist = new ArrayList();
int id = Integer.parseInt(request.getParameter("state_id"));
session.setAttribute("sid", id+"");
String dep_name1 = request.getParameter("depn");
try {
String dep_name = new String(dep_name1.getBytes("iso-8859-1"),"gbk");
session.setAttribute("sname",dep_name);
DataSource ds = (DataSource)this.getDataSource(request,"oracledb");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String sql = "select count(*) as rowcounts from empsys WHERE states_id="+id+" AND dep_name='"+dep_name+"'";
ResultSet rs = stmt.executeQuery(sql);
rs.next();
int totalRecord = rs.getInt(1);
//request.setAttribute("totalRecord",totalRecord);
int pageSize = 3;
int totalPage = 1;
int tmpPage = 0;
tmpPage = totalRecord % pageSize;
if (tmpPage == 0) {
totalPage = totalRecord / pageSize;
} else {
totalPage = (int) (Math.floor(totalRecord / pageSize) + 1);
}
if (totalPage == 0) {
totalPage = 1;
}
request.setAttribute("totalPage",totalPage+"");
String page = request.getParameter("Page");
int Page = 1;
if (page == null || page.equals("")) {
Page = 1;
} else {
Page = Integer.parseInt(page);
}
if (Page <= 0) {
Page = 1;
}
if (Page > totalPage) {
Page = totalPage;
}
request.setAttribute("Page",Page+"");
String queryPageSQL = "SELECT * FROM (SELECT row_.*,rownum rownum_ FROM "
+ "(SELECT * FROM empsys WHERE states_id="+id+" AND dep_name='"+dep_name+"' ORDER BY emp_id) row_ WHERE rownum<=?) WHERE rownum_>?";
int start = (Page - 1) * pageSize;
int end = Page * pageSize;
if (end > totalRecord)
end = totalRecord;
ResultSet rs1 = null;
PreparedStatement pstmt = conn.prepareStatement(queryPageSQL);
pstmt.setInt(1, end);
pstmt.setInt(2, start);
rs1 = pstmt.executeQuery();
while (rs1.next())
{
AdForm ad = new AdForm();
ad.setAa(rs1.getString("emp_name"));
ad.setBb(rs1.getString("emp_sex"));
ad.setCc(rs1.getString("emp_birth").substring(0, 10));
ad.setDd(rs1.getString("emp_jianli"));
ad.setEe(rs1.getString("emp_shenfen"));
ad.setFf(rs1.getString("emp_baozhang"));
ad.setGg(rs1.getString("emp_tuizi"));
ad.setHh(rs1.getString("emp_tuishi").substring(0, 10));
ad.setIi(rs1.getString("xue_name"));
ad.setJj(rs1.getString("dep_name"));
ad.setKk(rs1.getString("nation_name"));
ad.setLl(rs1.getString("zhicheng_name"));
ad.setMm(rs1.getString("zhiwu_name"));
ad.setNn(rs1.getInt("emp_id")+"");
request.setAttribute("name", rs1.getString("states_name"));
jlist.add(ad);
}
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
request.setAttribute("jlist",jlist);
}
//公用的方法:未执行操作前,模糊信息查询(某一状态下)
public void moHuCha (HttpServletRequest request)
{
HttpSession session = request.getSession();
ArrayList jlist = new ArrayList();
int id = Integer.parseInt(request.getParameter("state_id"));
String mohunames = request.getParameter("mohuname");
session.setAttribute("sid", id+"");
String dep_name1 = request.getParameter("depn");
try {
String dep_name = new String(dep_name1.getBytes("iso-8859-1"),"gbk");
String mohuname = new String(mohunames.getBytes("iso-8859-1"),"gbk");
session.setAttribute("sname",dep_name);
session.setAttribute("mname",mohuname);
DataSource ds = (DataSource)this.getDataSource(request,"oracledb");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String sql = "select count(*) as rowcounts from empsys WHERE states_id="+id+" AND dep_name='"+dep_name+"' AND emp_name LIKE '%"+mohuname+"%'";
ResultSet rs = stmt.executeQuery(sql);
rs.next();
int totalRecord = rs.getInt(1);
//request.setAttribute("totalRecord",totalRecord);
int pageSize = 3;
int totalPage = 1;
int tmpPage = 0;
tmpPage = totalRecord % pageSize;
if (tmpPage == 0) {
totalPage = totalRecord / pageSize;
} else {
totalPage = (int) (Math.floor(totalRecord / pageSize) + 1);
}
if (totalPage == 0) {
totalPage = 1;
}
request.setAttribute("totalPage",totalPage+"");
String page = request.getParameter("Page");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -