вот сам код:
| Код | public class Employee extends HttpServlet {
static final String DB_URL = "jdbc:sqlserver://test:1433;databaseName=test;characterEncoding=UTF-8"; static final String USER = ""; static final String PASS = ""; Connection conn = null; Statement stmt = null; ResultSet rs = null;
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); response.addHeader("Access-Control-Allow-Origin", "*"); PrintWriter out = response.getWriter(); try {
String task = request.getParameter("task"); task = (task == null ? "null" : task); Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn = DriverManager.getConnection(DB_URL, USER, PASS); stmt = conn.createStatement(); String sql; if (task.equals("COMMUNIC")) { String orgId = request.getParameter("org_id"); String lastName = request.getParameter("last_name"); String jobName = request.getParameter("job_name"); String telAts = request.getParameter("tel_ats").replaceAll("-", ""); String value = new String(); sql = "SELECT tab_no, fname+' '+sname+' '+tname as name, posada,isnull(tel1,'')as tel1,isnull(tel2,'')as tel2,isnull(email,'') as email,job,name as job_txt FROM emploe left join tree on job = tree.id" + " where job = '" + orgId + "' or fname LIKE '" + lastName + "%' or posada = '" + jobName + "' or replace(tel1,'-','') like '%" + telAts + "%' or replace(tel2,'-','') like '%" + telAts + "%'"; rs = stmt.executeQuery(sql); while (rs.next()) { String name = rs.getString("name"); String tel1 = rs.getString("tel1"); String tel2 = rs.getString("tel2"); String jobtxt = rs.getString("posada"); String em = rs.getString("email"); String email = "<a href='mailto:" + em + "'>" + em + "</a>"; String tn = rs.getString("tab_no"); String org = rs.getString("job_txt"); String org_id = rs.getString("job"); value += "<tr class='row'><td>"+ name + "</td><td>" + tel1 + "</td><td>" + email + "</td><td>" + jobtxt + "</td></tr>"; } out.println(value);
} else if (task.equals("JOB_POS")) { response.setContentType("text/xml;charset=UTF-8"); String value = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><main>"; sql = "Select posada FROM emploe group by posada"; rs = stmt.executeQuery(sql); while (rs.next()) { value += "<LONG_TEXT>" + rs.getString("posada") + "</LONG_TEXT>"; } value += "</main>"; out.println(value); } else if (task.equals("ORG_UNIT_LIST")) { sql = "SELECT id,name,pdrent_id FROM tree"; rs = stmt.executeQuery(sql); String value = new String(); ArrayList<Item> arr = new ArrayList<Item>(); while (rs.next()) { arr.add(new Item(rs.getString("id"), rs.getString("name"), rs.getString("pdrent_id"))); } value += recurs(3, arr, "0"); out.println(value); } else { out.println("Employee: uncorrect task = " + task); } } catch (SQLException se) { se.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { out.close(); try { if (rs != null) { rs.close(); } } catch (SQLException se2) { se2.printStackTrace(); } try { if (stmt != null) { stmt.close(); } } catch (SQLException se2) { se2.printStackTrace(); } try { if (conn != null) { conn.close(); } } catch (SQLException se) { se.printStackTrace(); } } }
|
|