一.相关概念
1.JavaBean
JavaBean泛指java的一些基本组件,类似domain,service,utils等
2.Servlet
Servlet是运行在服务器端可以接收客户端请求并向客户端发送响应的一个Java类,servlet的主要职责有三个,分别是(1)获取请求,接收请求参数;(2)调用业务逻辑;(3)页面导航,返回数据。
3.JSP
JSP是一种使用Java语言在服务器端编写动态页面的技术,其核心思路是在JSP=HTML+Java,即在HTML页面中嵌入Java代码,其文件后缀是.jsp
二.具体实现
实现一个登陆功能,需要验证用户输入的用户名和密码是否与数据库的数据一致,一致则登陆成功,不一致则提示错误。实现用户注册功能需要验证用户输入的名字是否与数据库中原有的数据一致,一致则提示错误,不一致则注册成功。
根据servlet的职责可知,servlet先要接收客户端的请求,这个请求来自JSP页面,然后调用service的业务逻辑,验证之后将结果返回给JSP,登录情况分为登陆成功和登陆失败,登陆成功则跳转页面。
我们需要先将数据库和Java连接起来,在Java里依次编写数据库表的实体类,实体类的mapper类和mapper.xml文件和service。然后编写登录和注册的JSP页面,最后编写控制器。
1.Users实体类,mapper,service
1.1 users实体类
package com.xja.domain;/*
*@描述:
*@author:Wugq
*@date:2023/4/7 5:28
*/
public class Users {
private Integer userId;
private String userName;
private String userPass;
}
1.2 UserMapper接口和UserMapper.xml文件
userMapper
package com.xja.mapper;/*
*@描述:
*@author:Wugq
*@date:2023/4/7 5:30
*/
import com.xja.domain.Users;
import org.springframework.stereotype.Repository;
@Repository("UserMapper")
public interface UserMapper {
public Users selectByName(String userName);
public void insert(Users users);
}
UserMapper.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xja.mapper.UserMapper">
<resultMap id="userMap" type="com.xja.domain.Users">
<id property="userId" column="user_id" javaType="java.lang.Integer" />
<result property="userName" column="user_name" javaType="java.lang.String" />
<result property="userPass" column="user_pass" javaType="java.lang.String" />
</resultMap>
<select id="selectByName" resultMap="userMap">
SELECT * FROM users WHERE user_name = #{userName}
</select>
<insert id="insert">
insert into users (user_name,user_pass) values(#{userName},#{userPass})
</insert>
</mapper>