html中用jsp链接数据库,在JSP中链接数据库李老师Web实验10-1(田哲瑞)

这篇文章总字数为:3473 字,有 9 张图存于本站服务器

运行环境:

eclipse或myeclipse,@一定要高版本,低版本做不了!!!

准备工作:

1. 安装好mysql数据库,下载地址: https://dev.mysql.com/downloads/mysql/在官网下载自己想下载的版本,这里用最新的0.20版本,其余版本有问题可自行搜素教程。

c8fe71d77321d45d550341e67799c097.png

将压缩包放入自己想放入的目录里(我设置的目录为:C:\Program Files\MySQL\mysql-8.0.20-winx64)

93767edf14ada3a681b2742876b449e0.png以管理员的身份打开cmd

4322937117fecec63bc915328e0d3d0e.png

在cmd中的具体操作步骤:

进入你所放置的mysql文件中

9319334c0c7e604c5ad4be553b4f716a.png

注意事项:路径放入“”,若需要改盘符直接cd D:即可、

在bin目录下执行代码

mysqld --initialize --console

结果如下,红色部分为数据库的初始密码。

51bec4e5e031d327ff4740c641e7661f.png

由于已安装,用网络图片演示

如出现下图错误则需要微软的运行库

b0390c75e64c84966b44d7319b7afc18.png

ca9cbcc33230306b7ef2af94967ef7c8.png

下载此项

安装mysql并启动

输入命令:mysqld --install [服务名]

77a76dd1bab1b89f0ebd16f3171c2edb.png

服务安装成功之后通过命令

net start mysql

启动MySQL的服务

b179e253eef78d503a60fc63de243b36.png

在mysql的bin目录下 进行数据库连接  输入命令:mysql -u root -p,输入初始密码

888c8788495bc80100ee7e9c4997fac0.png

修改密码命令

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';(新密码处添加自己的密码)

密码修改成功后输入exit退出即可。

(服务名可以不加默认为mysql)

下载好与自己mysql数据库对应的版本即可。

89efd69a3e8bde18029958c7249846a5.png

3. 打开下载好的文件找到文件名为mysql-connector-java-8.0.20.jar的文件,放入项目WEB-INF/lib文件夹中

773e397cc85dc6618fc1639cd61d9e80.png

4. 用mysql数据库先创建一个名为:“学号_student”的数据库,例如:17180099_student,里面至少有一张学生表,在数据库的学生表中有自己的信息,包括自己真实的学号,姓名,性别等信息(可以用Navicat工具创建表单)

详细步骤:

(1)在Navicat中创建连接(需知道mysql的root密码),连接名可以随意起

c281fe4ae80d31f5a7cc684b515333db.png

(2)点击连接测试,出现下图说明连接成功

903cd38b96e12deebecdd3e4475e6e36.png

(3)创建数据库

f0639cc9107a86f5fdc88fed8030fafe.png

(4)创建表中所需要的数据名及其属性

ab9765a2a46983f67950015ff49c7ff0.png

(5)将数据添加进去

8462c8b750d8aec599e46fba2a0f34ee.png

5. 准备工作结束。

连接数据库(JDBC):

创建jdbctest.jsp

源码如下

pageEncoding="UTF-8" import= "java.sql.* " %>

Insert title here

try {

Class.forName("com.mysql.cj.jdbc.Driver");

//mysql8.0以上用代码中的驱动,8.0以下用com.mysql.jdbc.Driver

} catch (ClassNotFoundException e) {

System.out.println("驱动找不到");

e.printStackTrace();

}

Connection conn=null;

//2.获取连接

try {

conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/17180080_student?serverTimezone=UTC", "root", "123456");

//jdbc:mysql://localhost:3306/数据库中的表名

} catch (SQLException e) {

System.out.println("连接获取失败");

e.printStackTrace();

}

String sql=("select * from student");

Statement statement=null;

//3创建一个statement 执行sql语句

try {

statement=conn.createStatement();

} catch (SQLException e) {

System.out.println("创建statement对象出现异常");

e.printStackTrace();

}

//4处理结果集

ResultSet res=null;

try {

res=statement.executeQuery(sql);

//打印

while(res.next()) {

out.println(res.getString("uname")+" "+res.getInt("uno")+" "+res.getString("usex")+" "+res.getString("uhobbie")+"");

//res.get表中名字的类型("表中的名字")

}

} catch (SQLException e) {

e.printStackTrace();

}

finally {

//5jdbc链接关闭,先开启后关闭

try {

if(res!=null) {

res.close();

res=null;

}

if(statement!=null){

statement.close();

statement=null;

conn.close();

}

if(conn!=null){

conn.close();

conn=null;

}

} catch (SQLException e) {

e.printStackTrace();

}

}

%>

运行结果:

0bc587fd4e89fff312e6758b5458c567.png

疑难杂症:

Mysql高版本出现的各种问题的解决方法使用JDBC连接数据库出现Loading class `com.mysql.jdbc.Driver'. This is deprecated.解决方案:0以上用com.mysql.cj.jdbc.Driver驱动数据库,8.0以下用com.mysql.jdbc.Driver

使用JDBC连接数据库出现The server time zone value '??????' is解决方案:在这个后面jdbc:mysql://localhost:3306/17180080_student加?serverTimezone=UTC即可解决(6.0以下版本不用加)

tomcat,mysql,jdk与编译器版本不匹配问题,使用jdk10以上建议用eclipse2019以上及tomcat9与mysql8.0以上

文章作者:

该文章由田哲瑞提供,感谢分享。

文明借鉴,站在巨人肩膀上创造价值。

本文最后更新于2020-5-27,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值