1 首先eclipse(j2ee版)必须连接tomcat服务器。
· eclipse中的window->show view->other->server->server:
在下列就会出现server监视栏:
点击其中的new server wizard....
选择你的tomcat版本,并点击add...
出现下图所示界面,点击Browse;
选择你所安装的tomcat文件路径,点击tomcat文件名,JRE可以选择默认
确定,并结束即可。这是配置完成后的eclipse界面,明显不同的是,在左边任务栏中出现了server文件夹,
而下边监视栏也出现了你所安装的tomcat版本的标示:
如图所示,则配置完成。
2 必须在mysql中建立一个数据库:mydata,mydata数据库中建立表:web119.表中参数有:id int,username varchar(20),password int.
3 下载一个mysql驱动,此驱动必须能够驱动mysql数据库,最好是兼容版本。例如我的mysql是5.0.27,
驱动为mysql-connector-java-3.1.13-bin.jar。
4 在eclipse中建立新文件:new->Dynamic web project,选择project name,next->next->finish。
在package explorer栏中出现新的project ,选择src右键,新建一个类,填入包名,文件名,建立一个类。
程序如下:
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet3 extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//从html获得username和password参数
String username= req.getParameter("username");
String password = req.getParameter("password");
//参数命名
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
PrintWriter out=resp.getWriter();
//mysql语句
String sql = "SELECT count(id) FROM web00 WHERE username=? "
+ "AND password=?";
//连接mysql
try{
//获得mysql驱动路径
Class.forName("com.mysql.jdbc.Driver");
//获得链接
String url="jdbc:mysql:///mydata";
String user="root";
String password1="root";
conn=DriverManager.getConnection(url, user, password1);
//预处理sql语句
ps=conn.prepareStatement(sql);
//把获得的参数输入到sql语句中,其中1是第一个问号赋值,2是第二个问号赋值。
ps.setString(1, username);
ps.setString(2, password);
//执行sql查询语句,语义为:查询符合问号条件的id号,返回结果集
rs=ps.executeQuery();
if(rs.next()){
//返回rs查询的数据表第1列(本表中ID一列)
int count=rs.getInt(1);
//如果id大于零,说明查询到数据表中符合条件的数据
if(count>0){
out.println("hello "+username);
}else{
out.println("sorry "+username);
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
try {
if(rs!=null){
rs.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if(ps!=null){
ps.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if(conn!=null){
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
在Web Content-->WEB-INF 文件夹下,编辑web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<servlet>
<servlet-name>syf1</servlet-name>
<!-- servlet-class为被注册的java主文件地址,包括包名和文件名,
在鼠标放在java主文件名上时,弹出标签中复制即可 -->
<servlet-class>com.syf.cn.LoginServlet3</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>syf1</servlet-name>
<!-- 下面是页面html文件引用的,html文件通过此文件名找到此文件,
再通过此文件映射到servlet-class,通过servlet-class找到java主文件,
此文件名必须有“/” -->
<url-pattern>/servlet3</url-pattern>
</servlet-mapping>
</web-app>
最后是html文件,在WebContent目录下建立,右键->new->HTML->
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- action后面的文件名和web.xml中的映射“/”后的文件名对应,post为访问方式 -->
<form action="servlet3" method="post">
<!-- username为java文件能访问的文件名 -->
username:<input type="text" name="username"/>
password:<input type="password" name="password"/>
<input type="submit" value="submit"/>
</form>
</body>
</html>