Maven项目 cityFileFK02数据库连接(课外完成)
这篇文章是接着上面的 Maven项目 cityFileFK01课后完成的作业,上课可能要重新写,仅供参考。
文章目录
- 1.数据库设计如下图:
- 2.文件目录分类如下:
- 3.DBUtil类
- 4.resources下的db.properties
- 5.dao下的UsersCDao类
- 6.controller下的LoginServlet类
- 7.login.jsp
- 8.index.jsp
- 9.error.jsp
- 10.运行结果:
1.数据库设计如下图:
2.文件目录分类如下:
3.DBUtil类
package util;/*连接数据的类*/import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;public class DBUtil {private static String username;private static String password;private static String url;private static String driver;static {try {InputStream in = DBUtil.class.getClassLoader().getResourceAsStream("db.properties");// FileInputStream in=new FileInputStream("db.properties");System.out.println("in:" + in);Properties p = new Properties();p.load(in);username = p.getProperty("db.username");password = p.getProperty("db.password");url = p.getProperty("db.url");driver = p.getProperty("db.driver");System.out.println(username);System.out.println(password);System.out.println(url);System.out.println(driver);} catch (IOException e) {e.printStackTrace();}}//封装一个连接方法public static Connection getConn() {Connection conn = null;try {//加载驱动Class.forName(driver);conn = DriverManager.getConnection(url, username ,password);System.out.println("...........................");System.out.println(conn);} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}return conn;}
4.resources下的db.properties
db.username=root
db.password=123456
db.url=jdbc:mysql://localhost:3306/citylifefk?characterEncoding=utf8
db.driver=com.mysql.jdbc.Driver
5.dao下的UsersCDao类
package dao;import util.DBUtil;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class UsersCDao {private String username;private String password;public UsersCDao(String username, String password) {this.username = username;this.password = password;}public Integer selectStudent() throws SQLException {//获得连接Connection connection= DBUtil.getConn();//编辑数据库语句String sql="select role from tb_admin_user where uname=\""+username+"\"and pwd=\""+password+"\"";//建立statement对象和resuleset结果对象Statement statement=null;ResultSet resultSet=null;try {int role=-1;int count=0;statement=connection.createStatement();resultSet=statement.executeQuery(sql);//用ResultSet的next方法判断是否有下一个while (resultSet.next()){//将相关的属性值引出来 并且存入到student对象中role=resultSet.getInt("role");count++;}if (count!=1){return -1;}return role;} catch (SQLException throwables) {throwables.printStackTrace();}finally {resultSet.close();statement.close();connection.close();}return -1;}
}
6.controller下的LoginServlet类
package controller;import dao.UsersCDao;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 java.io.IOException;
import java.sql.SQLException;/*登录*/
@WebServlet(urlPatterns = "/toLogin")
public class LoginServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//当前servlet默认编码为ISO8859-1不支持中文,应先设置中文编码格式req.setCharacterEncoding("utf-8");//接受参数(接收用户填写的信息)String username = req.getParameter("username");String password = req.getParameter("password");//根据用户名和密码查询当前用户信息是否存在,在dao里写//定义一个变量存储结果Integer result = null;UsersCDao usersCDao=new UsersCDao(username,password);try {//将查询结果返回给resultresult=usersCDao.selectStudent();} catch (SQLException throwables) {throwables.printStackTrace();}//根据查询结果值不同进入不同页面,在这里只是原理演示,如果result等于0或1或2则分别为超级用户、普通用户、管理员用户if (result == 0){//使用重定向的方法 跳转到对应的页面resp.sendRedirect("index.jsp");}else if (result==1){resp.sendRedirect("index.jsp");}else if (result==2){resp.sendRedirect("index.jsp");}else {//如果查询结果不为0、1、2,则表明在用户名错误或者密码错误,返回错误提示界面resp.sendRedirect("error.jsp");}}}
7.login.jsp
前端 login.jsp 页面提交用户名和密码
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@page isELIgnored="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=request.getContextPath()%>/"/><title>用户登录</title><link type="text/css" rel="stylesheet" href="/css/style.css;">
</head>
<body bgcolor="#E7ECEF"><center><form action="/toLogin" method="post"><table border="0" cellspacing="0" cellpadding="0" style="margin-top:130px"><tr><td><img src="/images/logon_top.gif"></td></tr><tr height="180"><td background="/images/logon_middle.gif" align="center" valign="top"><table border="0" width="90%" cellspacing="0" cellpadding="0"><tr height="50"><td colspan="2"></td></tr><tr height="30"><td align="right" width="40%">用户名: </td><td style="text-indent:5px"><input type="text" name="username" size="30px" value="" id="log_Login_action_user_userName"/><span>${error}</span></td></tr> <tr height="30"><td align="right">密 码: </td><td style="text-indent:5px"><input type="password" name="password" size="30px" id="log_Login_action_user_userPassword"/></td></tr><tr height="60"><td></td><td><input type="submit" id="" value="登录"/><input type="reset" value="重置"/><a id="log_Login_action_" href="/view/indextemp.jsp">[返回首页]</a></td></tr></table></td></tr><tr><td><img src="/images/logon_end.gif"></td></tr></table></form></center>
</body>
</html>
8.index.jsp
用户名密码正确进入的页面 index.jsp
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>
9.error.jsp
用户名密码错误进入的页面 error.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body >
<img src="/images/1.png"></body>
</html>
10.运行结果:
运行tomcat,进入 http://localhost:8066/login
效果:
若用户名密码输入正确,进入http://localhost:8066/index.jsp
若用户名密码输入错误,进入http://localhost:8066/error.jsp
Maven项目 cityFileFK02数据库连接(课外完成)相关推荐
- idea搭建maven项目关于数据库连接jar包版本问题解决方案
SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required 将mysql-connector-java由5.1.34升级到了6 ...
- springmvc+spring+mybatis+maven项目集成shiro进行用户权限控制【转】
项目结构: 1.maven项目的pom中引入shiro所需的jar包依赖关系 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ...
- Maven项目SSM整合中mysql8.0.11对应Druid版本问题以及pom.xml写法
场景 本地:mysql 8.0 Maven项目:mysql驱动 8.0.11 Maven项目:Druid1.1.10 此前Druid为版本1.0.20,项目会报 java.sql.SQLExcepti ...
- executequery方法_在IDEA的maven项目中连接使用MySQL8.0方法教程
首先看一下我的基本的开发环境: 操作系统:MacOS 10.13.5编辑器:IDEA 2018.3其他:MySQL8.0.15.Maven 3.3.9.JDK 1.8 好,下面就正式开始: 第一步:在 ...
- Maven项目无法加载jdbc.properties
Maven项目无法加载jdbc.properties(java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecog) ...
- Mybatis在Maven项目中使用
Mybatis概览 ORM是什么? ORM是Object Realtion Mapping的缩写,顾名思义,即对象关系映射. ORM是一种以面向对象的方式来进行数据库操作的技术.Web开发中常用的语言 ...
- javax maven项目缺少_教育平台项目后台管理系统:介绍与搭建
项目架构 项目介绍 教育后台管理系统是提供给相关业务人员使用的一个后台管理系统,业务人员可以在这个后台管理系统中,对课程信息.讲师信息. 学员信息等数据进行维护. 课程管理模块 课程管理 新建课程 条 ...
- 在普通maven项目应用中使用MQ
新人学习,本文从B站学习借鉴而来,链接:https://www.bilibili.com/video/BV14A411q7pF/?p=9 本文会介绍maven项目创建,通过项目介绍简单模式Simple ...
- 在Maven项目中使用tk-mybatis(不结合SpringBoot)
什么是tk-mybatis 通用 Mapper4(tk-mybatis) 是一个可以实现任意 MyBatis 通用方法的框架,项目提供了常规的增删改查操作以及Example 相关的单表操作.通用 Ma ...
- springboot+vue+java台球厅会员和设备管理系统maven项目源码
台球厅是近些年开始发展的,发展势头很猛,尽管内部管理系统已趋于完善,但网上管理以及会员客户的网上服务还不普及,大多数台球厅多为人工现场操作,为了能够提高客户效率,并且能够提供更为便捷周到的服务,有必要 ...
最新文章
- 【matlab】2019.5.10第一节上机课练习
- 计算机书籍-机器学习预测分析java神经网络算法与实现
- 数据库mysql中delimiter的作用和用法
- 关于安装oracle 11G R2 for Windows X64问题
- LR中url和html两种录制模式
- 【vue2.0进阶】用axios来实现数据请求,简单易用
- 树状数组相关应用之区间包含问题
- MFC字符串CString分割函数 简洁 C++
- BN、LN、IN、GN和SN
- Linux readelf命令
- java dwg转pdf_CAD处理控件Aspose.CAD转换功能演示:使用Java将DWG和DXF文件转换为PDF...
- 2021-07-28 cad贱人工具箱5.8
- 三种常用的数字数据编码方式
- Ubuntu 缩减磁盘空间
- 读《春秋》有感之十九:晋之霸业衰落
- LDA模型中需要输入的数据格式
- Apache Hadoop
- interrupt、interrupted 、isInterrupted、InterruptedException
- 条码软件如何自定义条码二维码的样式
- 【财富空间】人品,是最好的底牌
热门文章
- 求圆外一点做圆切线的切点坐标(算法)
- windows安装gem和fastlane
- CenterNet( Keypoint Triplets for Object Detection) 学习笔记
- 电脑开的热定手机连不上解决方法
- 408计算机组成原理学习笔记——存储系统
- 【Flutter小记3】Android打开前置或广角摄像头的同时打开闪光灯方案
- [UOJ#405/LOJ#2863][IOI2018]组合动作(交互)
- 规则引擎相关开源项目总结
- dos皇帝攻略_dos游戏皇帝
- 如何在Windows 8中将项目添加到新的Win + X菜单