使用java+eclipse+servlet+mysql实现登录功能

一:前期准备

java环境,mysql,eclipse要安装好,这个网上都能找到教程。
本文章默认你已经完成必要准备~

二:开始上手

我对其中的底层原理也不是特别清楚,只是做了出来,参考的这个链接。
https://www.cnblogs.com/huyangyang/p/7930476.html
他这里面的内容没啥错的,就是链接数据库(jdbc)的语句有点久了会报错。
需要修改为:
修改:public static String db_url= “jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT”;
修改:Class.forName(“com.mysql.cj.jdbc.Driver”);

然后就能实现登录功能啦

三:其他功能

当你走完整个流程也差不多知道他是怎么实现的了,他是返回了一个flag判断能不能登陆成功,比较常见的问题是读数据库内容并在前端显示,类似的你可以另外写一个函数用来读数据库的其他内容,比如用户id,比如姓名地址这种任何数据库的数据并返回,然后利用session保存就可以显示在前端了,虽然有点复杂但功能是可以实现的。

另外完成登录之后只需要修改sql语句就可以实现增删改查操作啦,只需要写出对应的函数。

以下内容(显示内容功能)仅供参考:
我是在userdao包里加了一个功能
public String userid(String username,String password)
{
Connection conn = DBUtil.getConn();
Statement state =null;
ResultSet rs = null;
String userid=null;
try
{
String sql = “select * from test where name = '”+username+"’";
state = conn.createStatement();
rs=state.executeQuery(sql);
if(rs.next())
{
if(rs.getString(“password”).equals(password))
{
userid=rs.getString(“id”);
System.out.println(“userid”+userid);
}
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
DBUtil.close(rs, state, conn);
}
return userid;
}
这个的功能就是返回userid,当然你可以把它换成任意数据库的数据

然后修改userservlet
int flag = userdao.login(username, password);·
String userid = userdao.userid(username, password);
HttpSession session2 = req.getSession();
session2.setAttribute(“userid”, userid);
这样就把user保存到了session中,使用session记得要把需要的包import一下

四:总结

上面的方法肯定不是最优解,但他确实可以实现需要的功能,希望对正好要实现这个功能的人提供帮助。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值