import javax.servlet.*;
import javax.servlet.http.*;import java.io.*;
import java.util.*;import sun.net.smtp.SmtpClient;import com.wrox.util.*;String message, msgFrom, msgTo, msgSubject;private void getParameters(HttpServletRequest req)
throw ServeletException,IOExcption { StringBuffer tempStringBuffer=new StringBuffer(1024); msgSubject="Tech Suppor Request";
msgTo="[email protected]"; msgFrom=req.getParameter("txtEmail");
tempStringBuffer.append("From:");
tempStringBuffer.append(req.getParameter("txt"First"));
tempStringBuffer.append(" ");
tempStringBuffer.append(req.getParameter("txtLast"));
tempStrigBuffer.append("\n");
tempStrigBuffer.append("Phone ");
tempStringBuffer.append(req.getParameter("txtPhone"));
tempStrigBuffer.append("\n");
tempStrigBuffer.append("Email:");
tempStringBuffer.append(req.getParameter("txtEmail"));
tempStrigBuffer.append("\n\n");
tempStrigBuffer.append("Software ");
tempStringBuffer.append(req.getParameter("ddlb_software"));
tempStrigBuffer.append("\n ");
tempStrigBuffer.append("OS");
tempStringBuffer.append(req.getParameter("ddlb_os"));
tempStrigBuffer.append("\n\n ");
tempStrigBuffer.append("Problem:");
tempStringBuffer.append(req.getParameter("txtProblem"));
tempStrigBuffer.append("\n");
message=tempStringBuffer.toString();
}
privat boolean sendMail(){
PrintStream out;
SmtpClient send;
try {
send =new SmtpClient("mail.xyz.com");
send.from(msgFrom);
send.to(msgTo);
out=send.startMessage();
out.println("From: "+msgFrom);
out.println("To: "+msgTo);
out.printnln("Subject: "+msgSubject);
out.println("\n--------------------\n");
out.println(message);
out.println("\r\n");
out.println("\n-----------------------\n");
out.flush();
out.close();
send.closeServer();
}
catch (IOException e) {
log("Error occerred while send mail", e);
return false;
}
return true
}
import javax.servlet.http.*;import java.io.*;
import java.util.*;import sun.net.smtp.SmtpClient;import com.wrox.util.*;String message, msgFrom, msgTo, msgSubject;private void getParameters(HttpServletRequest req)
throw ServeletException,IOExcption { StringBuffer tempStringBuffer=new StringBuffer(1024); msgSubject="Tech Suppor Request";
msgTo="[email protected]"; msgFrom=req.getParameter("txtEmail");
tempStringBuffer.append("From:");
tempStringBuffer.append(req.getParameter("txt"First"));
tempStringBuffer.append(" ");
tempStringBuffer.append(req.getParameter("txtLast"));
tempStrigBuffer.append("\n");
tempStrigBuffer.append("Phone ");
tempStringBuffer.append(req.getParameter("txtPhone"));
tempStrigBuffer.append("\n");
tempStrigBuffer.append("Email:");
tempStringBuffer.append(req.getParameter("txtEmail"));
tempStrigBuffer.append("\n\n");
tempStrigBuffer.append("Software ");
tempStringBuffer.append(req.getParameter("ddlb_software"));
tempStrigBuffer.append("\n ");
tempStrigBuffer.append("OS");
tempStringBuffer.append(req.getParameter("ddlb_os"));
tempStrigBuffer.append("\n\n ");
tempStrigBuffer.append("Problem:");
tempStringBuffer.append(req.getParameter("txtProblem"));
tempStrigBuffer.append("\n");
message=tempStringBuffer.toString();
}
privat boolean sendMail(){
PrintStream out;
SmtpClient send;
try {
send =new SmtpClient("mail.xyz.com");
send.from(msgFrom);
send.to(msgTo);
out=send.startMessage();
out.println("From: "+msgFrom);
out.println("To: "+msgTo);
out.printnln("Subject: "+msgSubject);
out.println("\n--------------------\n");
out.println(message);
out.println("\r\n");
out.println("\n-----------------------\n");
out.flush();
out.close();
send.closeServer();
}
catch (IOException e) {
log("Error occerred while send mail", e);
return false;
}
return true
}
import javax.servlet.http.*;
import java.io.*;
import java.net.*;
import java.sql.*;
import java.text.DateFormat;
import java.util.Locale;public class test3 extends HttpServlet {
public void init() {
try {
Class.forName("com.imaginary.sql.msql.MsqlDriver").newInstance();
}
catch( Exception e ) {
}
}
//Sign guestbook
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
String server = "factory";
String sid = "COSMOS";
String user = "COSMOS";
String pass = "COSMOS";
String port = "1521";
String url = "jdbc:oracle:thin:@" + server + ":" + port +":" + sid;
ServletOutputStream out = res.getOutputStream();
java.util.Date date = new java.util.Date();
String name, email, commenta;
Connection conn = null;
Exception err = null;
String[] tmp;
//init//accept name
tmp = req.getParameterValues("name");
if( tmp == null || tmp.length != 1 ) {
name = null;
}
else {
name = tmp[0];
}
//accept email
tmp = req.getParameterValues("email");
if( tmp == null || tmp.length != 1 ) {
email = null;
}
else {
email = tmp[0];
}
//accept comments
tmp = req.getParameterValues("commenta");
if( tmp == null || tmp.length != 1 ) {
commenta = null;
}
else {
commenta = tmp[0];
}
//header
res.setContentType("text/html");
printPageHeader(out);
if( name.length() < 1 ) {
out.println("You must specify a valid name!");
printCommentForm(out);
printPageFooter(out);
return;
}
if( email.length() < 3 ) {
out.println("You must specify a valid email address!");
printCommentForm(out);
printPageFooter(out);
return;
}
if( email.indexOf("@") < 1 ) {
out.println("You must specify a valid email address!");
printCommentForm(out);
printPageFooter(out);
return;
}
if( commenta.length() < 1 ) {
out.println("You left no comments!");
printCommentForm(out);
printPageFooter(out);
return;
}
//access to mSQL
try {
Statement statement;
ResultSet result;
conn = DriverManager.getConnection(url,user,pass);
statement = conn.createStatement();
commenta = fixComment(commenta);
statement.executeUpdate("INSERT into comments " +
"( email, name, commenta) "+
"VALUES (" + email +
"', '" + name + "', '" +
commenta + "')");
statement.close();
}
catch( java.sql.SQLException e ) {
e.printStackTrace();
err = e;
}
finally {
if( conn != null ) {
try { conn.close(); }
catch( Exception e ) { }
}
}
if( err != null ) {
out.println("An error occurred on save: " + err.getMessage());
}
else {
printCommentForm(out);
printComments(out);
}
}
//browser the guestbook
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
String server = "factory";
String sid = "COSMOS";
String user = "COSMOS";
String pass = "COSMOS";
String port = "1521";
String url = "jdbc:oracle:thin:@" + server + ":" + port +":" + sid;
ServletOutputStream out = res.getOutputStream();
Connection conn = null;
Exception err = null;
res.setContentType("text/html");
printPageHeader(out);
printCommentForm(out);
printComments(out);
printPageFooter(out); } public String getServletInfo() {
return "Guest Book Servlet v1.0\nCopyright \251 1997 George Reese";
} private void printCommentForm(ServletOutputStream out)
throws IOException {
out.println("<CENTER>");
out.println("<FORM ACTION=\"/examples/servlet/test3\" METHOD=\"POST\">");
out.println("<TABLE>");
out.println("<TR ALIGN=\"LEFT\">");
out.println("<TD>Name:</TD>");
out.println("<TD><INPUT TYPE=\"TEXT\" NAME=\"name\" SIZE=30></TD>");
out.println("<TD><INPUT TYPE=\"SUBMIT\" VALUE=\"Save\"></TD>");
out.println("</TR>");
out.println("<TR ALIGN=\"LEFT\">");
out.println("<TD>Email:</TD>");
out.println("<TD><INPUT TYPE=\"TEXT\" NAME=\"email\" SIZE=30></TD>");
out.println("</TR>");
out.println("<TR ALIGN=\"LEFT\">");
out.println("<TD>Comments:</TD>");
out.println("</TR>");
out.println("<TR ALIGN=\"CENTER\">");
out.println("<TD COLSPAN=3>");
out.println("<TEXTAREA NAME=\"commenta\" COLS=40 ROWS=7>");
out.println("</TEXTAREA></TD>");
out.println("</TR>");
out.println("</TABLE>");
out.println("</FORM>");
out.println("</CENTER>");
} private void printComments(ServletOutputStream out)
throws IOException {
Connection conn = null;
try {
DateFormat fmt = DateFormat.getDateInstance(DateFormat.FULL,
Locale.getDefault());
String server = "factory";
String sid = "COSMOS";
String user = "COSMOS";
String pass = "COSMOS";
String port = "1521";
String url = "jdbc:oracle:thin:@" + server + ":" + port +":" + sid;
Statement stmt;
ResultSet results;
conn = DriverManager.getConnection(url,user,pass);
stmt = conn.createStatement();
results = stmt.executeQuery("SELECT name, email,commenta FROM cosmos.comments ");
out.println("<DL>");
while( results.next() ) {
String name, email, cmt;
java.util.Date date; name = results.getString(1);
if( results.wasNull() ) {
name = "Unknown User";
}
email = results.getString(2);
if( results.wasNull() ) {
email = "user@host";
}
out.println("<DT><B>" + name + "</B> (" + email + ") on " );
}
out.println("</DL>");
}
catch( SQLException e ) {
out.println("dataerr " );
}
if( conn != null ) {
try { conn.close(); }
catch( Exception e ) { }
}
}
private void printPageHeader(ServletOutputStream out)
throws IOException {
out.println("<HTML>");
out.println("<HEAD>");
out.println("<TITLE>?</TITLE>");
out.println("</HEAD>");
out.println("<BODY>");
out.println("<CENTER><H1><B>?</B></FONT></CENTER>");
} private void printPageFooter(ServletOutputStream out)
throws IOException {
out.println("</BODY>");
out.println("</HTML>");
out.flush();
} private String noHTML(String cmt) {
if( cmt.indexOf("<") != -1 || cmt.indexOf(">") != -1 ) {
String tmp = ""; for(int i=0; i<cmt.length(); i++) {
char c = cmt.charAt(i); if( c == '<' ) {
tmp = tmp + "<";
}
else if( c == '>' ) {
tmp = tmp + ">";
}
else {
tmp = tmp + c;
}
}
cmt = tmp;
}
return cmt;
} private String fixComment(String commenta) {
if( commenta.indexOf("'") != -1 ) {
String tmp = "";
for(int i=0; i<commenta.length(); i++) {
char c = commenta.charAt(i);
if( c == '\'' ) {
tmp = tmp + "\\'";
}
else {
tmp = tmp + c;
}
}
commenta= tmp;
}
return commenta;
}
}执行时出错说没有drive
你用的是orcle数据库,应该用orcle的驱动。而且,Class.forName()放在conn = DriverManager.getConnection(url,user,pass);前比较好。