Servlet+jsp+javabean+连接数据库


转自http://blog.csdn.net/eventys/article/details/7431553#comments

技术:Servlet+jsp相关知识,(有些代码直接从网上拿的,如有冒犯请通知!多谢!)

源码放在了http://download.csdn.net/detail/eventys/4209979

工具 Myeclise,tomcat,jdk1.6

开始:

Myeclise新建一个Web Project

index.jsp代码:

        <form action="servlet/loginServlet" method="post"><!-- 此处action是新建Servlet时 自动在web.xml中生成的可修改 -->
            <div>
                Name
                <input type="text" name="name" />
                <br />
                Password
                <input type="text" name="pas" />
                <br />
                <input type="submit" value="Login" />
                <input type="hidden" value="login" name="typeId" />
            </div>
        </form>

按照图

建包DBUtile--里面建类 DBConnection.java

内容 :

package DBUtile;

import java.sql.Connection;
import java.sql.DriverManager;

public class DBConnection {

    private static Connection conn;// 数据库连接对象

    /**
     * 获取MySql数据库连接
     * 
     * @author yu
     * @return
     */
    public static Connection getMySqlConnection() {
        String driverClass = "com.mysql.jdbc.Driver";// 驱动名称
        String url = "jdbc:mysql://localhost:3306/test_servlet";// 数据库名simple
        String user = "root";// MySQ帐号
        String password = "root";// MYSQL密码
        try {
            Class.forName(driverClass).newInstance();
            conn = DriverManager.getConnection(url, user, password);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return conn;
    }

    /**
     * 获取SqlServer数据库连接
     * 
     * @author yu
     * @date 2012-4-5 下午04:45:39
     * @return
     */
    public Connection getSqlServerConnection() {
        return conn;
    }

    /**
     * 获取Orcal数据库连接
     * 
     * @author yu
     * @date 2012-4-5 下午04:46:19
     * @return
     */
    public Connection getOrcalConnection() {
        return conn;
    }

    /**
     * 关闭连接
     * 
     * @author yu
     */
    public void dbClose() {
        try {
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

建包login--里面建类 

1.右键new Servlet 名称 LoginServlet 内容:

package login;

import java.io.IOException;
import java.sql.Connection;
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;

import DBUtile.DBConnection;

import com.mysql.jdbc.Statement;

public class LoginServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public LoginServlet() {
        super();
    }

    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doPost(request, response);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");// 设置响应的MIME类型。
        java.io.PrintWriter out = response.getWriter();

        String type = request.getParameter("typeId");
        if (type.trim().equals("login")) {
            String name = request.getParameter("name");// 获取视图里的name
            String pas = request.getParameter("pas");// 获取视图里的password
            Model newModel = new Model();// 调用模型
            newModel.setName(name);
            newModel.setPas(pas);
            String user = "";
            String pass = "";
            Connection conn = DBConnection.getMySqlConnection();
            Statement stmt;
            try {
                stmt = (Statement) conn.createStatement();
                String sql = "SELECT * FROM login";// 表名book
                ResultSet rs = stmt.executeQuery(sql);
                while (rs.next()) {
                    user = rs.getString("user");
                    pass = rs.getString("password");
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            if (newModel.login(user, pass)) {
                out.print("<script Lanuage='JavaScript'>window.alert('登录成功!')</script>");
                out.print("用户输入:<br>");
                out.print("用户名:" + name + "<br>");
                out.print("密码:" + pas + "<br>");
                out.print("数据库查询:<br>");
                out.print("用户名:" + user + "<br>");
                out.print("密码:" + pass + "<br>");
            } else {
                out.print("<script Lanuage='JavaScript'>window.alert('登录失败!')</script>");
                out.print("用户输入:<br>");
                out.print("用户名:" + name + "<br>");
                out.print("密码:" + pas + "<br>");
                out.print("数据库查询:<br>");
                out.print("用户名:" + user + "<br>");
                out.print("密码:" + pass + "<br>");
            }
        }
    }

    /**
     * Initialization of the servlet. <br>
     * 
     * @throws ServletException
     *             if an error occurs
     */
    public void init() throws ServletException {
        // Servlet初始化代码
    }

}

2.New Class 名称 Model  内容:

package login;


public class Model {

    private String name = null;
    private String pas = null;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setPas(String pas) {
        this.pas = pas;
    }

    public String getPas() {
        return pas;
    }

    /**
     * 
     * @author yu
     * @date 2012-4-5 下午04:05:20
     * @return
     */
    public boolean login(String user, String pass) {

        if ((name.trim().equals(user)) && (pas.trim().equals(pass))) {
            return true;
        } else {
            return false;
        }
    }
}

web.xml 内容为:

    <servlet>
        <servlet-name>loginServlet</servlet-name><!-- Servlet名称 -->
        <servlet-class>login.LoginServlet</servlet-class><!-- 对应的类 包名.类名 -->
    </servlet>

    <servlet-mapping>
        <servlet-name>loginServlet</servlet-name><!-- 需要访问的Servlet名称 -->
        <url-pattern>/servlet/loginServlet</url-pattern><!-- 访问地址 如http://localhost/Servlet_Test/servlet/loginServlet -->
    </servlet-mapping>


到此为止编码写好了

开始测试吧   

启动tomcat 

输入网址:http://localhost/Servlet_Test/index.jsp

关于mysql的安装:请看文档:http://download.csdn.net/detail/eventys/4204821

mysql的连接数据库驱动jar包,自己去官网下载 放入项目lib中就行了

后期将在此基础上添加新功能,例如:过滤器,国际化,分页 等!

在后 会有struts2.x hibernate,spring ext,ajax,jqery 等等技术,一起分享学习

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值