📄 csengineerimpl.java
字号:
import java.net.*;
import java.util.*;
import java.io.*;
import hp.chaiserver.*;
import java.sql.*;
public class CSEngineerImpl implements ICSEngineer, IChaiServer {
public void initWorkerArgs(String name, IDaemon daemon, ArgVector args) {
System.out.println("What is sysLogComand\t" + Utils.getSysLogCmd() + "\n");
}
// CSEngineerRetrieve is an implementation of the method defined in ICSEngineer
public void CSEngineerRetrieve(String retFormat, ArgVector args, Environment env) {
// The next two lines obtain utility objects from the environment
// retStat is used to return status information
// html is used to stream HTML data back to client
HTMLStatus retStat = env.getErrResponder();
HTMLHelper html = (HTMLHelper) env.getHTMLHelper();
// The following lines extract an argument from the ArgVector
// The CSEngineerString argument contains the String entered into the
// form.
// If CSEngineerString is null then an error is sent to the client
String cseid = args.getArg("CSEID");
String dd = args.getArg("DD");
String mm = args.getArg("MM");
String yyyy = args.getArg("YYYY");
if(cseid == null) {
//retStat.send400("Not enough arguments");
retStat.sendError(400, "Not enough arguments");
return;
}
// The following lines check the return format specified by
// client. This implementation supports HTML and Text.
// An error is sent to the client if return format is not supported
try {
if(retFormat.equalsIgnoreCase("html")) {
// startHTMLDoc sends the Header information to the client
html.startHTMLDoc();
// send a <HR> Tag
html.startTag("HR");
// send a <CENTER> Tag
html.startTag("CENTER");
// send contents of CSEngineerString formated as H1 in a paragraph
//html.appendSimpleHTMLPara(CSEngineerString, "H1");
// send a </CENTER> Tag
html.endTag("CENTER");
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.sql.Connection conn = DriverManager.getConnection("jdbc:odbc:test2000");
Statement st = conn.createStatement();
String name=null;
try{
ResultSet rs1= st.executeQuery("select name from csed where cseid like '"+cseid+"'");
while(rs1.next())
{
name = rs1.getString(1);
}
rs1.close();
}catch(Exception e)
{ html.appendSimpleHTMLPara(" No CS Engineer found with ID "+cseid, "H3"); }
html.startTag("CENTER");
html.appendSimpleHTMLPara(name+"'s Schedule on "+dd+"/"+mm+"/"+yyyy, "H2");
html.endTag("CENTER");
ResultSet rs = st.executeQuery("select adatetime,cname,address,support from csett,csd where csett.tno = csd.tno and datepart(dd,adatetime)= '"+dd+"' and datepart(mm,adatetime)= '"+mm+"' and datepart(yyyy,adatetime)= '"+yyyy+"' and csett.cseid like '"+cseid+"'");
while(rs.next())
{
String str1 = rs.getString(1);
String str2 = rs.getString(2);
String str3 = rs.getString(3);
String str4 = rs.getString(4);
html.appendSimpleHTMLPara(" "+str1.substring(11)+" "+str2+" "+str3+" "+str4, "H3");
System.out.print(str1.substring(11));
System.out.print(str2);
System.out.print(str3);
System.out.println(str4);
}
rs.close();
st.close();
conn.close();
}catch(Exception e) {
html.appendSimpleHTMLPara(" No CS Engineer found with ID "+cseid, "H3");
}
// send a <HR> Tag
html.startTag("HR");
// send a sequence of tags to create a link to
// this server's homepage
html.sendHomeLink();
// send the end of document tags
html.endHTMLDoc();
} else if(retFormat.equalsIgnoreCase("txt")) {
// send the MIME header for a text document and
// append the contents of CSEngineerString to the document
html.sendText(cseid);
} else {
//retStat.send400("Return type " + retFormat + " not supported");
retStat.sendError(400, "Return type" + retFormat + "not supported");
}
}catch(IOException IO){}
}
// homePage is an implementation of a method declared in hp.chaiserver.IChaiServer
public void homePage(OutputStream out, Environment env){
// get HTMLHelper object from Environment. Used for streaming HTML
HTMLHelper html = (HTMLHelper) env.getHTMLHelper();
//System.out.println("What is sysLogComand\t" + Utils.getSysLogCmd() + "\n");
try {
// send HTML document header
html.startHTMLDoc();
// send <CENTER> Tag
html.startTag("CENTER");
// send Heading String
//html.appendSimpleHTMLPara("CSEngineer Object", "H1");
html.appendSimpleHTMLPara("CSEngineer ChaiService", "H1");
// send </CENTER> Tag
html.endTag("CENTER");
// send <HR> Tag
html.startTag("HR");
// send Tag sequence to start a form
html.startForm("GET", "/this.csengineer");
// send <P> Tag
html.startNewHTMLParagraph();
// add Hidden field called CSEngineerRetrieve
// Note this represents the Method name to be
// called when the form is submitted. See the
// CSEngineerRetrieve method above.
html.addHiddenField("CSEngineerRetrieve", "html"); // Method and return type
// add a Text field called CSEID
// Note this represents the argument CSEID
// accessed in the CSEngineerRetrieve method above.
html.appendSimpleHTMLPara("CSE ID: ", "H3");
html.addTextField("CSEID", 30, null);
html.startNewHTMLParagraph();
html.appendSimpleHTMLPara("Date: ", "H3");
html.addTextField("DD", 2, "DD");
html.addTextField("MM", 2, "MM");
html.addTextField("YYYY", 4, "YYYY");
// send <P> Tag
html.startNewHTMLParagraph();
// add a Submit button and reset button
html.addSubmitButton("Submit");
html.addResetButton();
// send the </FORM> tag
html.endForm();
// send <HR> Tag
html.startTag("HR");
// send a sequence of Tags for a link to
// the home page of the local server
html.sendHomeLink(); // send end of document Tags
html.endHTMLDoc();
}catch (IOException io){}
}
// Export is an implementation of a method declared in hp.chaiserver.IChaiServer
public void exportMethods(OutputStream out, String str, Environment env) {
// get HTMLHelper object from Environment. Used for streaming HTML
HTMLHelper html = (HTMLHelper) env.getHTMLHelper();
if(str.equalsIgnoreCase("html")) {
try {
// send HTML document header
html.startHTMLDoc();
// send <CENTER> Tag
html.startTag("CENTER");
// send Heading String
html.appendSimpleHTMLPara("CSEngineer ChaiService", "H1");
// send </CENTER> Tag
html.endTag("CENTER");
// send <HR> Tag
html.startTag("HR");
html.appendSimpleHTMLPara("Method support: CSEngineerRetrieve", "H3");
html.appendSimpleHTMLPara("Argument: CSEngineerString", "H3");
html.sendHomeLink(); // send end of document Tags
html.endHTMLDoc();
}catch(IOException io) {}
} else if(str.equalsIgnoreCase("txt")) {
try {
html.sendText("Method: CSEngineerRetrieve\nArgument: CSEngineerString");
} catch(IOException io) {}
} else {
HTMLStatus retStat = env.getErrResponder();
retStat.sendError(400);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -