[主要参考博客]
https://blog.csdn.net/qq_36098284/article/details/79826004
JDMall开发流程
1.首先写数据库连接工具类。要有一个jdbc驱动的连接。然后再写一个抽象函数,每次连接数据库的时候,只需要生成那个抽象函数的对象就可以连接数据库,不需要在写驱动
package com.carrmee.Utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
/**
* 数据库连接类
*
*/
public class JDBConnection {
private static final String DBDRIVER = "com.mysql.jdbc.driver";
private static final String DBURL = "jdbc:mysql://localhost:3306/test";
private static final String DBUSER = "root";
private static final String DBPASSWD = "";
private Connection conn;
/**
* 构造函数注册数据库驱动
*/
public JDBConnection(){
try {
Class.forName(DBDRIVER);
this.conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWD);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
* 获得数据库连接
* @return
*/
public Connection getConn(){
return this.conn;
}
/**
* 数据库关闭
*/
public void close(){
if (this.conn!=null){
try {
this.conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
- 新建目录Model,主要放数据库表的封装类–JAVABean
package com.carrmee.model;
import java.util.Date;
public class Users {
private int uid;//用户id
private String uname;//用户名
private String passwd;//用户密码
private String email;//用户的Email
private Date lastLogin;//最后的登录时间
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Date getLastLogin() {
return lastLogin;
}
public void setLastLogin(Date lastLogin) {
this.lastLogin = lastLogin;
}
}
之后在DAO目录中
PS:记录一下,这几天一直做这个项目,但却遇到最简单的登录验证都没有做出来,经过几天的调试,终于发现是注解还有路径的问题。。。。
所以做了几个测试用例,如下:
登录失败jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%=request.getAttribute("info")%><br>
<a href="index.jsp">返回</a>
</body>
</html>
登录成功jsp
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>登录成功!</h1><br>
<a href="index.jsp">返回首页</a>
</body>
</html>
主页面
<head>
<title>JD(京东商城)</title>
</head>
<body>
<form action="loginServlet" method="post">
<p>用户名:<input name="username" type="text"></p>
<p>密 码:<input name="password" type="password"></p>
<p><input type="submit" value="提交"/> <input type="reset" value="重置"></p>
</form>
</body>
</html>
loginservlet
package com.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sound.midi.SoundbankResource;
import java.io.IOException;
@WebServlet("/loginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
String info = null;
if (username.equals("admin")&& password.equals("123")){
info = "欢迎来到京东商城!" + username+"!";
request.getRequestDispatcher("/success.jsp").forward(request,response);
}else {
info = "用户名或密码不正确";
request.setAttribute("info",info);
request.getRequestDispatcher("/failed.jsp").forward(request,response);
}
}
}