eclipse中的web项目连接MySQL数据库
这篇文章写自本人大三学习Java web,为了连接这个MySQL结果摸了一天,人都连接连麻了
首先是eclipseEE的下载
点此下载
不要点击那个DOWNLOAD,直接点击那个文件,或者使用其他镜像,安装教程可以去其他地方找
然后是MySQL的下载,我使用的是命令行
MySQL :: Download MySQL Community Server
安装教程也可以去找其他博客
下面开始eclipseEE和MySQL的连接
打开eclipse新建Dynamic web project,没有的话点其他在web里面,这也没有就去参考其他博客将模块加进去
然后去MySQL官网找负责连接数据库和eclipse的包
MySQL :: Download Connector/J
一定要找跟你数据库的版本对应的jar包!,我是8.0.27,就用了8.0.27的包
下载第一个,下载完后找到那个包,右键直接复制
然后打开在eclipse中,选择你新建的项目里的src/main/webapp/WEB-INF/lib文件夹,直接粘贴进去
然后右键它,选择构建路径,添加至路径(英文版就是带快捷键B的那个选项),点击就加载OK了
(对,就是这样的一个问题,给我折磨半天)
然后进行连接测试
我采用的是新建了一个JSP页面,代码如下,因为是我作业的代码,所以有一些是和数据库相关可以忽略,这里我也直接把我的作业丢上来,是JSP连接数据库在页面上show表的内容,然后登录跳转弹出登陆人的信息
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.sql.*" pageEncoding="utf-8"%>
<html><body><%Class.forName("com.mysql.cj.jdbc.Driver");//加载MYSQL JDBC驱动程序 Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/javaweb","root","123456");//数据库连接,3306是端口号,javaweb是数据库名称,root是用户,123456是密码Statement stat = connect.createStatement();String sql_2 = "select * from student";ResultSet rs = stat.executeQuery(sql_2);out.println("账号"+" "+"密码 "+" "+"学号 "+" "+"姓名 <br>"); while (rs.next()) { out.println(rs.getString("id")+" "+rs.getString("password")+" "+rs.getInt("XH")+" "+rs.getString("name")+" <br>");}stat.close();connect.close();%><input type="button" value="登录" onClick="window.location.href='login.jsp'"></body>
</html>
这是其中一种的连接方式,要注意其中的close顺序,先开后闭合
Class.forName("com.mysql.cj.jdbc.Driver");//加载MYSQL JDBC驱动程序 Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/javaweb","root","123456");//数据库连接Statement stat = connect.createStatement();
stat.close();connect.close();
login.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>登陆页面</title>
</head>
<body><form id="form1" name="form1" method="post" action="check.jsp">账号:<label><input type="text" name="id" /></label><p>密码:<label><input type="text" name="password" /></label></p><p><label><input type="submit" name="Submit" value="提交" /></label></p>
</form></body>
</html>
check.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.sql.*" pageEncoding="utf-8"%>
<body>
<%String id=new String(request.getParameter("id"));request.getSession().setAttribute("id",id);String password=new String(request.getParameter("password"));try {Class.forName("com.mysql.jdbc.Driver");// 加载数据库驱动,注册到驱动管理器String url = "jdbc:mysql://localhost:3306/javaweb"; // 数据库连接字符串String usename = "root"; // 数据库用户名String psw = "123456"; // 数据库密码Connection conn = DriverManager.getConnection(url,usename,psw); // 创建Connection连接if(conn != null){ // 判断 数据库连接是否为空String sql="select * from student where id='"+id+"' and password='"+ password + "'";Statement stmt = conn.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()){response.sendRedirect("show.jsp"); }else{out.print("用户名或密码错误,请重新输入!");%><a href="javascript:history.back()">返回</a><% } // 关闭数据库连接conn.close();}else{// 输出连接信息out.println("数据库连接失败!"); }} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}
%>
</body>
这里是另一种连接的写法,采用try也可以发现有哪些出错
<%
try {Class.forName("com.mysql.jdbc.Driver");// 加载数据库驱动,注册到驱动管理器String url = "jdbc:mysql://localhost:3306/javaweb"; // 数据库连接字符串String usename = "root"; // 数据库用户名String psw = "123456"; // 数据库密码Connection conn = DriverManager.getConnection(url,usename,psw); // 创建Connection连接if(conn != null){ // 判断 数据库连接是否为空String sql="select * from student where id='"+id+"' and password='"+ password + "'";Statement stmt = conn.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()){response.sendRedirect("show.jsp"); }else{out.print("用户名或密码错误,请重新输入!");%><a href="javascript:history.back()">返回</a><% } // 关闭数据库连接conn.close();}else{// 输出连接信息out.println("数据库连接失败!"); }} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}
%>
然后是最后的show.jsp,这里是实现了一个用账号密码登录后,展示登录者的学号和姓名,也可以根据自己的需求改
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.sql.*" pageEncoding="utf-8"%>
<html><body><%Class.forName("com.mysql.cj.jdbc.Driver");//加载MYSQL JDBC驱动程序 Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/javaweb","root","123456");Statement stat = connect.createStatement();String id = request.getSession().getAttribute("id").toString();PreparedStatement ps = connect.prepareStatement("select XH,name from student where id = ?");ps.setString(1, id); //第一个参数指的是上面执行的sql语句中的第几个参数,第二个是要设置的值ResultSet rs = ps.executeQuery();out.println("登录成功!");out.println("学号 "+" "+"姓名 <br>"); while (rs.next()) { out.println(rs.getInt("XH")+" "+rs.getString("name")+" <br>");}stat.close();connect.close();%></body>
</html>
效果如下
就是这样了,这篇文字仅仅是自己饱受数据库折磨,包括包和代码的问题之后我直接暴走了,希望能对后来初学者有帮助,如果有任何不对的地方也欢迎各位提出意见指出错误 。
eclipse中的web项目连接MySQL数据库相关推荐
- ASP.NET Core Web项目连接MySQL数据库
作者在新建了一个ASP.NET Core Web项目的基础上,想连接本地的Mysql数据库,参考了很多博客,各种各样的说法都有,多少让人有感凌乱!自己最后捣鼓成功了!所以写一篇博客,以便后人查阅! 操 ...
- eclipse中的JSP项目连接mysql报错,找不到jdbc驱动,java项目却没问题
解决方案:把驱动包放到WEB-INF/BIN下面,并build path,解决问题 转载于:https://www.cnblogs.com/yangdm/p/5025632.html
- Intellj IDEA添加MySQL数据库以及项目连接Mysql数据库
添加数据库 View->Tool Windows->datebase->"+"->Data Source->MySQL 输入自己MySQL用户名和密码 ...
- IDEA项目连接MySQL数据库
IDEA项目连接MySQL数据库 一.前提 电脑已经安装好IntelliJ IDEA.MySQL和SQLyog并配置好,博主使用版本: 1)IntelliJ IDEA 2018.2.2 2)MySQL ...
- java maven项目连接mysql数据库
实现maven项目连接mysql数据库 在maven项目下新建class文件,编辑该文件,部分具体代码如下: import java.sql.Connection; import java.sql.D ...
- 【Javaweb学习笔记】在Eclipse中创建Web项目
[Javaweb学习笔记]在Eclipse中创建Web项目 哈喽大家好,这里是Java框架学习笔记专栏第二期 本期内容--在Eclipse中创建Web项目 前期回顾: 第一期--schema约束 笔者 ...
- Java web 服务器连接MySQL数据库代码
文章目录 前言 一,建立工程 二,导入jar包 三,编写DataBase类实现连接数据库与操作数据库 四,效果图 参考文章 前言 经过前面的环境部署,今天我们终于可以来连接数据库了.参考我之前的文章. ...
- eclipse中导入web项目详细配置
前言 在eclipse中导入web项目所需要的操作 一. 导入项目 选择 File 中的 import 选择 svn 中的从 svn 检出项目(本地项目就选 General -> Existin ...
- [转]Eclipse中的Web项目自动部署到Tomcat
原文地址:http://www.cnblogs.com/ywl925/p/3815173.html 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的 ...
最新文章
- 重磅!阿里推出国产开源的jdk!
- 深度学习、机器学习、机器人操作系统、人工智能学习资源
- 计算机总体水平情况,学生信息技术起点水平情况调查分析报告
- 2021年春季学期期末统一考试 金融统计分析 试题(开卷)
- CVPR2021 最佳论文候选—提高图像风格迁移的鲁棒性
- .net程序部署(setupFactory进阶)
- ASP.NET开发51种常用代码
- poj 1657 Distance on Chessboard
- test luasql's postgresql driver performance (not better than pgbench)
- 小米进军欧洲智能手机市场:一面是狂欢,一面是考验...
- 轻松理解 java字节码
- markdown语法测试
- 恒生电子笔试、面试经历
- 华为服务器基本功能介绍 及服务器BMC提供的基本功能
- 这篇能让你搞懂股票买卖系列问题
- 净误差与遗漏为负值的含义_为什么遗漏与误差项为负反映了去向不明的资本外逃?...
- win+G没反应,Xbox game bar按不出来
- Apache Hive 2.1.1 安装配置超详细过程,配置hive、beeline、hwi、HCatalog、WebHCat等组件...
- React实战精讲(React_TS/API)
- 计算机组成原理实验一---运算器 预习报告