栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Javaweb - 实例功能(上) - 用户登录界面实现(mybatis、maven、mysql、tomcat、servlet)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Javaweb - 实例功能(上) - 用户登录界面实现(mybatis、maven、mysql、tomcat、servlet)

文章目录

用户登录

流程说明准备环境

1-1.新建Maven web项目1-2.写表单页面

注意 2-1.准备SQL表2-2.创建User实体类3-1.导入MyBatis坐标、MySQL驱动坐标4-1.创建mybatis-config.xml核心配置文件4-2.创建UserMapper接口4-3.resources目录下建立mapper包映射4-4.resources - mapper包下创建UserMapper.xml 开始编写代码

注解实现select语句

注意 编写loginServlet

注意 运行测试

500报错测试成功

用户登录

流程说明
    用户填写用户名密码,提交到LoginServlet在LoginServlet使用 MyBatis查询数据库,验证用户名密码是否正确如果正确,响应“登录成功”,如果错误,响应“登录失败”
准备环境
    写静态页面到webapp目录下创建servlet数据库,创建tb_user表,创建User实体类导入MyBatis坐标,MySQL驱动坐标创建mybatis-config.xml核心配置文件,UserMapper.xml映射文件,UserMapper接口
1-1.新建Maven web项目

手把手教程

Javaweb - tomcat入门简介、安装配置,到idea配置tomcat并使用_鬼鬼骑士的博客-CSDN博客




  4.0.0

  org.example
  User_demo1
  1.0-SNAPSHOT
  war

  
    
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.2
      
    
  





1-2.写表单页面

webapp包下




    
    
    
    document



Username:

Password:    
注意

表单标签一定要用"name"命名,不然怎么识别

2-1.准备SQL表

数据库使名称为mybatis

drop table if exists tb_user;

Create table tb_user(
	id int primary key auto_increment,
	`username` varchar(20) unique,
	password varchar(32)
);

insert into tb_user(username,password) values('zhangsan','123'),('lisi','234');

select * from tb_user;
2-2.创建User实体类

User实体类在com.taotao.pojo下

package com.taotao.pojo;

public class User {
    private Integer id;
    private String username;
    private String password;

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + ''' +
                ", password='" + password + ''' +
                '}';
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

3-1.导入MyBatis坐标、MySQL驱动坐标



  4.0.0

  org.example
  User_demo1
  1.0-SNAPSHOT
  war

  
    
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.2
      
    

  

  

    
      org.mybatis
      mybatis
      3.5.5
    

          
    
      mysql
      mysql-connector-java
      5.1.32
    
  


4-1.创建mybatis-config.xml核心配置文件

文件放入到resources目录下

Mybatis - Mybatis简介到完善Idea配置Mybatis、以及idea连接Mysql数据库方法_鬼鬼骑士的博客-CSDN博客




    
        
            
            
                
                
                
                
            
        
    
    

        

    


4-2.创建UserMapper接口

package com.taotao.mapper;

public interface UserMapper {

}

4-3.resources目录下建立mapper包映射

注意创建目录使用 /

4-4.resources - mapper包下创建UserMapper.xml






开始编写代码 注解实现select语句

编写UserMapper接口方法

package com.taotao.mapper;

import com.taotao.pojo.User;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

public interface UserMapper {
    
    @Select("select * from tb_user where username = #{username} and password = #{password}")
    User select(@Param("username") String username, @Param("password") String password);
}

注意

此步骤要先连接数据库,点右侧dase

编写loginServlet

写在web包下

package com.taotao.web;


import com.taotao.mapper.UserMapper;
import com.taotao.pojo.User;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;

@SuppressWarnings({"all"})
@WebServlet("/test1")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        //1.接收用户名和密码
        String username = req.getParameter("username");
        String password = req.getParameter("password");

        //2.调用MyBatis完成查询
        //2.1获取SqlSessionFactory对象
        String resource = "mybatis.config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

        //2.2获取SqlSession对象
        SqlSession sqlSession = sqlSessionFactory.openSession();

        //2.3获取Mapper
        UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

        //2.4调用方法
        User user = userMapper.select(username, password);

        //2.5释放资源
        sqlSession.close();

        //获取字符输出流,并设置content type
        resp.setContentType("text/html;charset=utf-8");

        PrintWriter writer = resp.getWriter();
        //3.判断user释放为null
        if(user != null){
            //登录成功
            writer.write("

login successfully肥肥!!

"); }else{ //登录失败 writer.write("login failed.."); } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }
注意

继承HttpServlet时,需要导入servlet工具类

编写pom.xml

    
      javax.servlet
      javax.servlet-api
      3.1.0
    
运行测试

500报错

看自己javaBug笔记解决

测试成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781293.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号