欢迎任何形式的转载,但请务必注明出处。

该教程较全,从软件的安装以及相关的环境配置我都放置了相关教程的链接,读者可直接点击进入。自己写电商网站作业时查找了很多资料,但都不是很全,所以趁着寒假写了这份教程,也对自己所学的内容总结总结。如果一些地方读者看不懂,可以自行翻阅我的其他教程内容或私信我,我可能忘放链接了。还有一些专业名词请问度娘。

必做:

本节内容

  • 新建项目
  • 结构图
  • 数据库MySQL
  • 登录页面Login.jsp
  • java类编写
  • xml编写
  • 完善Login.jsp
  • 效果展示

一、新建项目

Dynamic WEB项目 “MyWeb”

点击进入教程3 实例部分

二、结构图

新建JSP页面"Login"里面的各项,保证红框部分都没丢

三、数据库

数据库的编写我略掉了,读者自己编写时请和我的数据库名称以及表名一致。或者在Connsql中修改代码(Eclipse连接Mysql我前面有具体文章)

四、登录页面Login.jsp

servlet完成后此块还要完善

 <%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <title>登录</title>
 </head>
 <body>
    <form method="" action="" >
        <!-- 用户名-->
        <label for="userName">用户名</label>
        <input type="text" name="userName"/><br>

        <!-- 密码-->
        <label for="passWord">密 码</label>
        <input type="password" name="passWord" /><br><br>

         <!-- 登录 -->
        <input type="submit" value="Sign Up"></input>
    </form>
 </body>
 </html>

五、java类编写

 package com.entity;

 public class Customer {
     private String cusname;
     private String cuspassword;

     public Customer(String cusname,String cuspassword){
         this.cusname = cusname;
         this.cuspassword = cuspassword;
     }

     //会员名字
     public String getCusname() {
         return cusname;
     }
     public void setCusname(String cusname) {
         this.cusname = cusname;
     }
     //会员密码
     public String getCuspassword(){
         return cuspassword;
     }
     public void setCuspassword(String cuspassword){
         this.cuspassword = cuspassword;
     }
 }
 package com.function;

 import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;

 import com.entity.Customer;
 import com.mysql.jdbc.Connection;
 import com.mysql.jdbc.PreparedStatement;

 public class Connsql {
     /**************连接数据库部分********************/
     public static Connection conn(){
         Connection conn = null;

         String driver = "com.mysql.jdbc.Driver";
         String url = "jdbc:mysql://localhost:3306/demo?characterEncoding=utf-8&useSSL=false";
         String username="root";
         String pw = "111111";

         try {
             Class.forName(driver);//加载MySql的驱动类
             System.out.println("成功加载驱动程序!!!!");
             conn = (Connection) DriverManager.getConnection(url,username,pw);//创建数据库的连接
         } catch (Exception e) {
             // TODO: handle exception
             System.out.println("找不到驱动程序类 ,加载驱动失败!");
             e.printStackTrace();
         }
         return conn;
     }

     /**************用户登录********************/
     public boolean cusLogin(Customer customer){
         Connection conn = conn();
         PreparedStatement pstmt = null;//创建一个Statement
         ResultSet rs = null;           //创建结果集
         String sql = "select * from user where username = ? and userpass= ? ";//创建SQL语句
         boolean bl = false;

         try{
             pstmt = (PreparedStatement) conn.prepareStatement(sql);
             pstmt.setString(1, customer.getCusname());    //设置'?'值
             pstmt.setString(2, customer.getCuspassword());//设置'?'值

             rs = pstmt.executeQuery();  //执行SQL语句 

             if(rs.next()){           //处理结果
                 System.out.println("用户名密码正确");
                 bl = true;
             }

             rs.close();     //关闭记录集
             pstmt.close();  //关闭声明
             conn.close();   //关闭连接对象
         }catch(SQLException e){
             e.getStackTrace();
         }
         return bl;
     }
 }
 package com.servlet;

 import java.io.IOException;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

 import com.entity.Customer;
 import com.function.Connsql;

 public class CusLogin extends HttpServlet {
     private static final long serialVersionUID = 1L;

     public CusLogin() {
         super();
         // TODO Auto-generated constructor stub
     }

     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
         try{
         request.setCharacterEncoding("UTF-8");
         response.setCharacterEncoding("UTF-8");        

         //表单数据获取
         String name = request.getParameter("userName");
         String password = request.getParameter("passWord");
         Customer customer = new Customer(name, password);

         //数据库部分
         Connsql sql = new Connsql();          //新建数据库连接
         boolean bl =sql.cusLogin(customer);   //检查用户名

         if(bl){   //登录成功
             response.sendRedirect("Login.jsp?loginerror=no");  //将失败响应传递给Login.jsp
             System.out.printf("success");
         }else{   //登录失败
             response.sendRedirect("Login.jsp?loginerror=yes");  //将失败响应传递给Login.jsp
             System.out.printf("faild");
         }
     }catch(Exception ex){
         ex.printStackTrace();
     }
     }

     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
         // TODO Auto-generated method stub
         doGet(request, response);
     }

 }

六、编写web.xml

打开web.xml在内容里添加如下代码

   <servlet>
     <servlet-name>CusLogin</servlet-name>
     <servlet-class>com.servlet.CusLogin</servlet-class>
   </servlet>
   <servlet-mapping>
     <servlet-name>CusLogin</servlet-name>
     <url-pattern>/CusLogin</url-pattern>
   </servlet-mapping>

七、完善Login.jsp

1.于<form>中补充action

<form method="get" action="CusLogin" 

2.于</html>底部增加<script>,接受响应

<script>
//取出传回来的参数error并与yes比较
  var error ='<%=request.getParameter("loginerror")%>';
  if(error=="yes"){
   alert("用户名或密码错误!");    //弹框:登陆失败
  }
  else if(error=="no"){
      alert("登陆成功!");      //弹框,登陆成功
  }
</script>

八、效果展示

(详细)Eclips+jsp+servlet+mysql+登录实例+源代码的更多相关文章

  1. JSP+servlet简单登录实例

    一个简单的jsp+servlet实例,实现简单的登录 转载▼ http://blog.sina.com.cn/s/blog_5c5bc9070100z7wb.html     开发环境myeclips ...

  2. jsp+servlet+mysql 实现简单的银行登录转账功能

    jsp+servlet+mysql 实现简单的银行登录转账功能 [前期的准备] html(登录界面),servlet(处理业务逻辑),jsp(主要实现界面),mysql(实现与数据库的简单的交互)先从 ...

  3. 一个简单的JSP 连接MySQL使用实例

    一.软件环境 下载并安装MySQL,Tomacat,JDBC.MyEclipse或其他IDE. 二.环境配置 将其环境变量配置好之后,下载Java 专用的连接MySQL的驱动包JDBC,有人会发现在一 ...

  4. jsp/servlet/mysql/linux基本概念和操作

    一.什么是OOP编程? 面向对象,以结果为导向,并封装整个过程,并尽可能地增加代码的复用性和可扩展性...... 二.Junit? JUnit是一个java语言的单元测试框架.Junit测试时程序员测 ...

  5. 学生成绩管理系统3.0(JSP+Servlet+MySQL)

    源代码:戳这里! (2019-01-08 更新 惊讶于这么久了还有人看这个项目 于是把代码传到 github 了(辣鸡CSDN) https://github.com/G-lory/StudentAc ...

  6. JSP+Servlet+mysql简单示例【图文教程】

    下载MYSQL:http://dev.mysql.com/downloads/ 下载安装版的 然后安装(安装步骤就不详细说了) 安装好之后,点击托盘图标,打开管理工具 创建一个数据库   数据库的名字 ...

  7. Jsp+servlet+mysql搭建套路

    1.建立数据库根据需求建立相应的数据库确立数据库的字段.属性.主键等2.建立javaweb项目,搭建开发环境在开发环境的/WebRoot/WEB-INF下建立lib文件夹,存放需要使用的jar包常用的 ...

  8. jsp+servlet+mysql增删改查

    用的IntelliJ IDEA开发的,jdk1.8 1 首先是项目结构,如下图所示 2看各层的代码 首先是web.xml <?xml version="1.0" encodi ...

  9. jsp+servlet+mysql简单实现用户登陆注册

    原码,项目中遇到的错误,解决方法,文章最后有链接可以获取 项目简介 *有的网友说在修改和删除时会触发error,建议各位不要去把用户名命名为中文! 功能描述 登陆,注册,用户一览表,修改,删除,添加, ...

随机推荐

  1. Python3基础 内置函数 hash

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  2. stl中map的四种插入方法总结

    stl中map的四种插入方法总结方法一:pair例:map<int, string> mp;mp.insert(pair<int,string>(1,"aaaaa&q ...

  3. win10网上邻居看不到别的共享电脑怎么样办

    https://jingyan.baidu.com/article/4853e1e5b714aa1909f72600.html

  4. 【warning】set the environment variable MXNET_CUDNN_AUTOTUNE_DEFAULT to 0 to disable

    前言 运行mxnet程序的时候出现这个warning信息,但是不影响整个程序的运行,不过宝宝喜欢将warning信息尽量也clear,强迫症嘛?!哈哈哈哈 问题描述 [::] src/operator ...

  5. shell脚本双引号、大括号、if语句注意事项

    1.双引号的问题 变量用双引号括起来的意义 如果变量不用双引号括起来,比如echo $a,那么隐含的意义就是,把$a变量的字符串,按照空格.制表符.换行符等符号来分割开.然后把这些分割后的每一项再按 ...

  6. consui(二)集群配置

    consul集群搭建:一.软件安装Linux 环境下载zip包然后直接解压,然后把解压的文mv consul /bin检验安装是否成功,查看版本[root@node1 ~]consul -vConsu ...

  7. layui开关switch显示不全问题

    先看效果: 开关显示不全,高度也不对称. 解决: 在所用到的html/jsp中自己加css .layui-form-switch { width: 52px; height: 23px; } 再看效果 ...

  8. 使用IDEA打开工程未显示左侧工程目录栏

    1. 重启IDEA2. 删除要打开的项目文件夹下的.idea文件夹3. open打开项目即可 注意: 是重启IDEA,不是只关闭IDEA的单个窗口 参考: https://blog.csdn.net/ ...

  9. BGP 实验

    一.环境准备 1. 软件:GNS3 2. 路由:c7200 二.实验操作 实验要求: 1. 掌握 BGP 的基本配置方法. 2. 掌握如何查看 BGP 的各种配置信息. 3. 掌握基于回环口的 BGP ...

  10. python selenium学习

    selenium是一个python模块,具有自动化模拟浏览器的功能 selenium的中文文档地址:http://selenium-python-zh.readthedocs.io/en/latest ...