专栏首页Java探索之路在javaEE中,实现用户登陆功能的实现

在javaEE中,实现用户登陆功能的实现

1、在jsp页面中创建form表单,用el表达式获取登陆失败返回的字符串

2、在相关servlet层创建一个用于登陆的dutyServlet类,继承baseServlet

baseServlet以及复用,代码如下:

package com.bjsxt.servlet;

import java.io.IOException;
import java.lang.reflect.Method;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * 该Servlet不需要进行配置,因为该Servlet从来不需要被直接访问,使用来被继承的
 * 可以定义为abstractclass
 *
 */
public abstract class BaseServlet extends HttpServlet{

	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		//解决post表单中文乱码问题
		request.setCharacterEncoding("utf-8");
		//获取method属性的值(方法名)
		String methodName = request.getParameter("method");
		
		//使用反射调用方法	
		try {
			//获取当前Servlet的Class信息
			Class clazz = this.getClass();//实际访问的Servlet,不是BaseServlet,是BaseServlet的子类比如UserServlet
			//使用反射创建对象
			//Object obj = clazz.newInstance();
			//获取方法
			Method method = clazz.getMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);
			//使用反射执行方法
			method.invoke(this, request,response);
		} catch (Exception e) {
			e.printStackTrace();
		} 
		
		
	}

	
}

3、创建service层以及实现类层,dao层以及实现类层,注意servcie层、dao层实现类的书写

注意:首先要在自己的数据库中创建相关的表,才能执行jdbc操作

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 基于Servlet实现的简单登陆练习

    源码分享: 链接:https://pan.baidu.com/s/1LNtaEn7RgceO1Zez9DyLRA 提取码:w739

    时间静止不是简史
  • JSP+Servlet项目整合

    m:model service层和dao层和实体类层 v:view 视图层jsp页面 c:controller 控制层servlet

    时间静止不是简史
  • 三步让你在Linux中发布SpringCloud项目

    注意 ;直接复制代码出现了错误建议直接先修改好文件,然后上传至虚拟机 ,SpringCloud启动脚本百度云分享

    时间静止不是简史
  • javaWeb idea学习笔记(三)Servlet的配置

    当服务器接收到客户端浏览器的请求后,会解析请求的URL路径,获取访问的servlet资源路径

    逆回十六夜
  • django-数据库之连接数据库

    (1)定位到自己django安装的地方,我的是E:\anaconda2\envs\python36\Lib\site-packages\django

    绝命生
  • MySQL 之分区分表

    1、为什么要分表? 数据库数据越来越大,随之而来的是单个表中数据太多。以至于查询速度变慢,而且由于表的锁机制导致应用操作也搜到严重影响,出现了数据库性能瓶颈。 ...

    小手冰凉
  • MySQL读写分离

      当今MySQL使用相当广泛,随着用户的增多以及数据量的增大,高并发随之而来。然而我们有很多办法可以缓解数据库的压力。分布式数据库、负载均衡、读写分离、增加缓...

    那一叶随风
  • XXE漏洞:DocumentBuilder使用之殇

    xxe这种漏洞无论是在php中还是java中,审计起来应该都是有迹可循的,在php中全局搜索特定函数,在java中需要找解析xml文档的类有没有被使用,所以,我...

    tnt阿信
  • 宅经济、云生活”背后的互联网力量

    春节期间大批北漂返乡过年,北京就已经少了大半的烟火气,新冠疫情的出现再度给社会按下了暂停键。

    数据通20847430
  • vagrant搭建centos环境前言环境准备安装修改配置文件启动与连接常用vagrant命令清空重新导入镜像配置文件 Vagrantfile填坑记录

    macos作为开发环境已经相当方便,有很丰富的工具,如homebrew类似于ubuntu的apt-get和centos的yum,很方便地安装各种开发工具。但终究...

    章鱼喵

扫码关注云+社区

领取腾讯云代金券