首页 > 编程语言 >java学习9.19

java学习9.19

时间:2024-09-19 20:34:42浏览次数:8  
标签:java 9.19 resp 学习 session org import servlet

结合前端,在本地运行实现登陆操作。

将在输入框的数据传给服务器,服务器再通过调用数据库的数据进行对比,实现简单的判断逻辑

到这里的我就感觉内容多了起来,在之前连接数据库,数据库操作的时候,跟着教程走,只是知道简单的用法也能在之后自行配置
这里的话数据库等操作变成了一个环节,还有其他很多新的操作,一下子不好上手的servlet等去花时间去学

简单实现servlet

package org.example.servlet;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.SneakyThrows;
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 org.example.entity.User;
import org.example.mapper.UserMapper;

import java.io.IOException;
import java.util.Arrays;
import java.util.Map;

@WebServlet("/login")
public class LoginServlet extends HttpServlet {

    SqlSessionFactory factory;
    @SneakyThrows
    @Override
    public void init() throws ServletException {
        factory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader("mybatis-config.xml"));
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //首先设置一下响应类型
        resp.setContentType("text/html;charset=UTF-8");
        //获取POST请求携带的表单数据
        Map<String, String[]> map = req.getParameterMap();
        //判断表单是否完整
        if(map.containsKey("username") && map.containsKey("password")) {
            String username = req.getParameter("username");
            String password = req.getParameter("password");
            try(SqlSession session = factory.openSession(true)) {
                UserMapper userMapper= session.getMapper(UserMapper.class);
                User user = userMapper.getUser(username,password);
                if(user != null) {
                    resp.getWriter().write("用户"+username+"登录成功");
                }
                else
                {
                    resp.getWriter().write("您登录的用户密码错误或者账户不存在");
                }



            }
            //权限校验(待完善)
        }else {
            resp.getWriter().write("错误,您的表单数据不完整!");
        }




    }

}
```java

标签:java,9.19,resp,学习,session,org,import,servlet
From: https://www.cnblogs.com/zangbotao/p/18421281

相关文章

  • Java开发环境搭建:JDK与Eclipse的完美组合
    摘要:本文简述了Java开发环境的搭建,包括JDK的安装、环境变量配置,以及EclipseIDE的设置。提供了详细的步骤指导,帮助Java初学者快速搭建开发环境并运行第一个项目。Java的跨平台特性与环境需求我们写C/C++时,直接下载VisualStudio,然后在里面直接写代码就可以了。但是Java不行。这不是......
  • Springboot基于JAVA技术的旅游信息交互系统6mj9s--程序+源码+数据库+调试部署+开发环
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容随着旅游业的蓬勃发展,游客对于旅游信息的获取与交互需求日益增长。为了提升旅游体验,促进旅游资源的有效整合与利用,本项目拟设计并实现一个基于JAVA......
  • Springboot基于Java对运动心跳数据分析系统设计与实现455j4(程序+源码+数据库+调试部署
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义随着健康意识的提升,运动已成为现代人生活的重要组成部分。心跳数据作为反映人体健康状态的重要指标,在运动过程中尤为重要。然而......
  • 力扣42 接雨水 Java版本
    文章目录题目描述代码1题目描述给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例1:输入:height=[0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释:上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接......
  • centos789手动无脑用sh脚本安装Java8
    #老师给的文件是jdk1.8版本,所以我这边写的也是8的脚本输入命令:mkdir–p/export/data#放置相关的数据文件输入命令mkdir–p/export/servers#软件的安装目录输入命令:mkdir–p/export/software上传文件jdk-8u241-linux-x64.tar.gz到/export/software目录然后写一个安装......
  • 全面系统的AI学习路径,帮助普通人也能玩转AI
    前言现如今AI技术和应用的发展可谓是如火如荼,它们在各个领域都展现出了巨大的潜力和影响力。AI的出现对于我们这些普通人而言也是影响匪浅,比如说使用AI工具GPT来写文档查问题、使用AI辅助编程工具帮助我们写代码、并且可是使用AI来实现人工客服等。那么普通人如何学习AI呢?别再当别......
  • 【第十二章:Sentosa_DSML社区版-机器学习回归】
    【第十二章:Sentosa_DSML社区版-机器学习回归】12.1 线性回归1.算子介绍        线性回归模型(BuildLRNode)是一个非常经典有效的回归模型,它假设所有特征变量和目标变量之间存在线性关系。通过训练来求得各个特征的权重以及截距。同时可以通过L1,L2正则化来减少模型......
  • java的二维数组
    二维数组的初始化 二维数组的进行for循环时的判断条件怎么确定的呢?  因为在二维数组是特殊的一维数组,c语言中二维数组首元素的代表的是地址,而首元素代表的是一组一维数组,计算首元素的长度也就是计算二维数组的行下标为0的一维数组的长度所以判断数组名的长度也就是判断......
  • centos789手动无脑用sh脚本安装Java8
    #老师给的文件是jdk1.8版本,所以我这边写的也是1.8的脚本输入命令:mkdir–p/export/data#放置相关的数据文件输入命令mkdir–p/export/servers#软件的安装目录输入命令:mkdir–p/export/software上传文件jdk-8u241-linux-x64.tar.gz到/export/software目录然后写一个安......
  • JAVA 序列化和反序列化
    序列化:把对象转换为字节序列的过程称为对象的序列化反序列化:把字节序列转换为对象的过程称为对象的反序列化对象序列化的作用1)把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中2)在网络上传送对象的字节序列ObjectOutputStream代表对象输出流,它的writeObject(Obje......