Java后台连接数据库----登录
实现登录功能的思路
web前端
-
创建一个登录页面
-
通过登录按钮获取用户信息将信息传递到Java后台
Java后端
-
servlet得到前端数据 六大步骤
-
在service层处理逻辑关系 用户名密码验证码是否正确
-
dao层 将用户信息和数据库里面的信息进行对比
假如前端也已经做好了只做后端,则必须提供给前端一个访问的接口:webservlet
数据的传递
- java后台得到前端的值以后,封装到VO里面去
- java和前端之间相互.通信时通过JSON格式
- 前端可能得到Java后台的值的数据类型有:整型、字符型、对象、数组或者集合,一共四个,前端要求Java后台返回一个统一的格式——JSON
- Java和数据库的对象一一对应,写在model里
- 前端传递到Java的数据写在VO里
- java传递到前端也应该有一个自已的对象dto数据传输对象
service逻辑处理
- 验证码判断 只有验证码正确才查询用户名和密码
- 查询用户名和密码
-
将VO里面的数据复制到model
-
同时将密码加密后存入到model
-
密码加密的方式有很多种,直接用jdk自带的md5就好
- 将查询的结果赋值到一个对象ResultDTO,之后将它发送到前端
dao层逻辑
通过SQL语句去数据库查询,此处用下面这种字符串拼接的方式,之后会有更好的方式
String sql = "select * from user where username = '" + userModel.getUsername() + "' and password = '"+userModel.getPassword()+"'";
然后再调用连接数据库的方法。
这个方法一般写在工具类里面,叫做取名JDBC,关于JDBC下面还会提到。
ResultSet query = JDBC.query(sql);
调用方法得到返回数据库查询的数据,有可能是一条,也有可能没有,这时需要需要解析ResultSet。
JDBC
与数据库有关的操作方法一般都写在JDBC里面,由dao层调用实现Java后台与数据库的连通。
关于JDBC,它的使用也有六大步骤
-
加载驱动 整个项目只加载一次
-
得到数据库链接
-
编译SQL语句
-
执行SQL语句
-
返回结果
-
关闭连接
package com.wanxi.util;
import java.sql.*;
import java.util.List;
/**
* JDBC的书写步骤
* 1.加载驱动 整个项目只加载一次
* 2.得到数据库的连接
* 3.编译sql语句
* 4.执行sql语句
* 5.返回结果
* 6.关闭连接
*/
public class JDBC {