分享第二十四篇励志语句
对自己狠一点,逼自己努力,再过五年你将会感谢今天发狠的自己,恨透今天懒惰自卑的自己,既然认准了一条路,那就坚持走下去,命运不会辜负每一个认真而努力的人。
目录
分享第二十四篇励志语句
1 案例需求
2 创建表admin并添加数据
3 创建Web项目
4 database.properties文件
5 DBUtile类代码
6 Admin实体类
7 AdminDao接口
8 AdminDaoImpl实现类
9 AdminService接口
10 AdminServiceImpl实现类
11 HTML页面
11.1 login.html页面
11.2 login.css
11.3 table.css
12 LoginServlet
13 ShowAllAdminServlet
在MySQL中新建一个servletdatabase数据库,专门用来学习servlet操作数据库
实现登录功能,登录成功后显示所有管理员信息,登录失败给出“账号或密码错误,无法登录”提示信息
#创建表admin
CREATE TABLE IF NOT EXISTS `admin`(
`username` VARCHAR(20) PRIMARY KEY,
`password` VARCHAR(20) NOT NULL,
`phone` VARCHAR(11) UNIQUE NOT NULL,
`address` VARCHAR(20) NOT NULL
);
#向admin表中插入数据
INSERT INTO `admin`(`username`,`password`,`phone`,`address`)
VALUES('张三','123456','13112345678','安徽合肥蜀山区');
INSERT INTO `admin`(`username`,`password`,`phone`,`address`)
VALUES('李四','123456','13822334455','安徽合肥高新区');
创建Web项目adminProject01,在项目下创建包目录结构如下,并导入相关jar包及配置文件
com.cxyzxc.www.dao包:数据访问层接口
com.cxyzxc.www.dao.impl包:数据访问层接口实现类
com.cxyzxc.www.entity包:实体类
com.cxyzxc.www.service包:业务逻辑层接口
com.cxyzxc.www.service.impl包:业务逻辑层接口实现类
com.cxyzxc.www.servlet包:Servlet类
com.cxyzxc.www.utils包:工具类
database.properties:数据库连接及连接池配置文件
package com.cxyzxc.www.utils;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import javax.sql.DataSource;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;
public class DBUtils {
// 声明一个连接池对象
private static DruidDataSource druidDataSource;
static {
// 实例化配置文件对象
Properties properties = new Properties();
try {
// 加载配置文件内容
InputStream is = DBUtils.class
.getResourceAsStream("/database.properties");
properties.load(is);
// 创建连接池
druidDataSource = (DruidDataSource) DruidDataSourceFactory
.createDataSource(properties);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
//返回一个数据源
public static DataSource getDataSource(){
return druidDataSource;
}
}
package com.cxyzxc.www.entity;
public class Admin {
private String username;
private String password;
private String phone;
private String address;
public Admin() {
}
public Admin(String username, String password, String phone, String address) {
this.username = username;
this.password = password;
this.phone = phone;
this.address = address;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Admin{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
", phone='" + phone + '\'' +
", address='" + address + '\'' +
'}';
}
}
package com.cxyzxc.www.dao;
import com.cxyzxc.www.entity.Admin;
import java.util.List;
public interface AdminDao {
//查询用户(查询单个)
Admin selectOneByUsernameAndPassword(String username, String password);
//查询所有用户
List selectAll();
}
package com.cxyzxc.www.dao.impl;
import com.cxyzxc.www.dao.AdminDao;
import com.cxyzxc.www.entity.Admin;
import com.cxyzxc.www.utils.DBUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import java.sql.SQLException;
import java.util.List;
public class AdminDaoImpl implements AdminDao {
// 创建QueryRunner对象,并传递一个数据源对象
private final QueryRunner QUERYRUNNER = new QueryRunner(DBUtils.getDataSource());
@Override
public Admin selectOneByUsernameAndPassword(String username, String password) {
String sql = "SELECT * FROM `admin` WHERE `username` = ? AND `PASSWORD`=?;";
Object[] args = {username, password};
try {
return QUERYRUNNER.query(sql, new BeanHandler(Admin.class), args);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
@Override
public List selectAll() {
String sql = "SELECT * FROM `admin`;";
try {
return QUERYRUNNER.query(sql, new BeanListHandler(Admin.class));
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
}
package com.cxyzxc.www.service;
import com.cxyzxc.www.entity.Admin;
import java.util.List;
public interface AdminService {
Admin login(String username, String password);
List selectAllAdmin();
}
package com.cxyzxc.www.service.impl;
import com.cxyzxc.www.service.AdminService;
import com.cxyzxc.www.dao.AdminDao;
import com.cxyzxc.www.dao.impl.AdminDaoImpl;
import com.cxyzxc.www.entity.Admin;
import java.util.List;
public class AdminServiceImpl implements AdminService {
private final AdminDao ADMINDAO = new AdminDaoImpl();
@Override
public Admin login(String username, String password) {
return ADMINDAO.selectOneByUsernameAndPassword(username, password);
}
@Override
public List selectAllAdmin() {
return ADMINDAO.selectAll();
}
}
登录页面
* {
margin: 0;
padding: 0;
}
div {
width: 400px;
height: 100px;
background-color: #ccc;
margin: 30px auto;
padding-top: 30px;
text-align: center;
}
p {
margin-top: 10px;
}
input {
outline: none;
}
*{
margin: 0;
padding: 0;
}
table{
margin: 20px auto;
width: 500px;
height: 100px;
text-align: center;
}
package com.cxyzxc.www.servlet;
import com.cxyzxc.www.service.AdminService;
import com.cxyzxc.www.service.impl.AdminServiceImpl;
import com.cxyzxc.www.entity.Admin;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private final AdminService ADMINSERVICE = new AdminServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
req.setCharacterEncoding("UTF-8");
//获取数据
String username = req.getParameter("username");
String password = req.getParameter("password");
Admin admin = ADMINSERVICE.login(username, password);
resp.setContentType("text/html;charset=UTF-8");
PrintWriter printWriter = resp.getWriter();
if (admin != null) {
printWriter.println("");
printWriter.println("");
printWriter.println("登录成功 ");
printWriter.println("");
printWriter.println("");
printWriter.println("登录成功
");
printWriter.println("");
printWriter.println("");
} else {
printWriter.println("");
printWriter.println("");
printWriter.println("登录失败 ");
printWriter.println("");
printWriter.println("");
printWriter.println("账号或密码错误,无法登录
");
printWriter.println("");
printWriter.println("");
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
doGet(req, resp);
}
}
package com.cxyzxc.www.servlet;
import com.cxyzxc.www.service.AdminService;
import com.cxyzxc.www.service.impl.AdminServiceImpl;
import com.cxyzxc.www.entity.Admin;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
@WebServlet("/ShowAllAdminServlet")
public class ShowAllAdminServlet extends HttpServlet {
private final AdminService ADMINSERVICE = new AdminServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=UTF-8");
PrintWriter printWriter = resp.getWriter();
List adminList = ADMINSERVICE.selectAllAdmin();
if (adminList.size() != 0) {
printWriter.println("");
printWriter.println("");
printWriter.println("所有admin ");
printWriter.println("");
printWriter.println("");
printWriter.println("");
printWriter.println("");
printWriter.println("账号 ");
printWriter.println("密码 ");
printWriter.println("手机号码 ");
printWriter.println("住址 ");
printWriter.println("操作 ");
printWriter.println(" ");
for (Admin admin : adminList) {
printWriter.println("");
printWriter.println("" + admin.getUsername() + " ");
printWriter.println("" + admin.getPassword() + " ");
printWriter.println("" + admin.getPhone() + " ");
printWriter.println("" + admin.getAddress() + " ");
printWriter.println("修改 删除 ");
printWriter.println(" ");
}
printWriter.println("
");
printWriter.println("");
} else {
printWriter.println("");
printWriter.println("");
printWriter.println("所有admin ");
printWriter.println("");
printWriter.println("");
printWriter.println("当前没有用户
");
printWriter.println("");
printWriter.println("");
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
doGet(req, resp);
}
}
好了,这些就是单独查和全部查的全部方法,感谢大家支持