Java自学第8课:电商项目(3) - 重新搭建环境

由于之前用的jdk和eclipse,以及mysql并不是视频教程所采用的,在后面运行源码和使用作者提供源码时,总是报错,怀疑:

1 数据库有问题

2 jdk和引入的jar包不匹配

3 其他什么未知的错误?

所以决定卸载jdk eclipse mysql 推到重来。

1 卸载

1 eclipse

直接删除,在把C:\Users\Name下的.eclipse和.p2删除

2 jdk

从控制面板卸载,再把系统环境变量新增的java_home和path下的java_home/bin删除掉。

3 mysql

首先用管理员打开cmd,关闭mysql服务。

847bc5aa05184de2a88d0f840e001af1.png

这里要注意net stop mysql的mysql是安装时对服务起的默认名字,如果不是这个名字,改为相应的即可。

之后删除mysql服务

8500183df3ce4879b1798becda301044.png

删除后,x掉cmd窗口。

在控制面板,找到mysql,卸载。完成后,查看安装mysql的路径,发现只保留了1个ini文件。

cb89fe1ccdf14079ae4f854ce44681ec.png

这就算成功了。查看环境变量,mysql的路径还保留着。删除即可。

3 安装

1 jdk

安装jdk-8u25-windows-x64.exe

700b54b6fafd45898a099a2cbe8704b0.png

选择路径

43f38eead5f94065971b0b53f0fa8191.png

在指定jre位置

4ed28b473faa47a8ba190cc6a87d033c.png

安装后配置系统环境变量

4779b8b08c0941538bfd651d358b52b3.png

再配置path

6d0e61872f134e2da8b4676587309a4f.png

用cmd+javac验证即可。

2 eclipse

2019-03

下载视频说的2019-06版本jee

2019-06 R | Eclipse Packageshttps://www.eclipse.org/downloads/packages/release/2019-06/r

346M

30bd6425b30147f49b588e0d5996d3c1.png

解压缩到指定路径,打开:

08c6550b7c04441b9ff48be068245c7a.png

指定workspace,进入界面

f74b8ecb036a4c4091ff570ecddaf2c6.png

选择java作为默认项目,而不是java EE

02045a8da6e14f67aa5c5fb699fcd486.png

 再检查jre环境是否正确

57360045253f45d4902def28f764c352.png

再设置tomcat作为服务器。这里我们tomcat没有更换还用9.0.13版

0e5b959103a84005a2ca10a42f24a6c7.png

2b48e119e32a428a94b13a766c44be5d.png

就设置完了

3612fd76864d4f1a943466ebf114321e.png

 新建一个dynamic java web项目,试一试

8f85a22a44ad4a558e9e501b1c270fd6.png

通过了,是可以的。

3 mysql

重新安装mysql

a0dda9dda73b4fb1a12e6f48605cf877.png

之后是配置

43bab776480446198dc7c7f19e9cba73.png

最后配置的时候,总出现一个问题,代号是1045,可能性

3306端口被占用,netstat -aon检查是哪个pid占用了0.0.0.0:3306,从任务管理器一看是mysql,右键停止还停止不了。

管理员cmd 运行 net stop mysql 然后 sc delete mysql 能干掉。之后再重装,还是1045,奇了怪了。

最后发现在C盘下有个隐藏目录叫programData,里面还有个文件夹叫mysql 先删除了。

再重装,好了。

2514c662824b49edb5f49025ca5f9016.png

所以,重点是把programData里隐藏的内荣给删除了。

3 重新构建数据库

下面把之前的课程重新快速走一遍。

第1步先把mysql数据库建好。设计的环节就略过,直接构建数据库。

还是用navicat打开

先建立连接,因为参数没改,所以之前建立的conn1连接还能用。

之后新建数据库 注意字符集的指定

25086d38be4f4e3bb6630e62f0550d4d.png

之后运行sql文件

73f9f6e75afc4f49a85d6efbbd680bf7.png

 

成功了

6dd5c69e8bcd44119ffa910dfe8ad5f3.png

刷新一下,可以看到表

e8bf4671389447af95e0f6d7222a8e19.png

也可以逆向到模型

af21bf20794a41db8750ce8f296e5075.png数据也都有了

7e4091abe9bf4b5eb40807b6a52fdaef.png

到这一步,数据库就搞好了。

4 重新建立Eclipse工程。

接下来就开始新建工程。

460dcfbf8b374af9a6045f539f6359c0.png

 工程建好后,检查biuld path也是正确的,就在tomcat上部署,结果出来还是有问题

854044dfab6f460580063fca4b01c32c.png

主要问题是:jsp网页上没有显示数据库的内容。

分析可能原因

  • 数据库没连接成功
  • JSP网页代码有误。

5 测试数据库连接的正确性

先测试第一点,那么就运行util里的main方法,发现数据库链接成功。

为了进一步验证这一点,专门建立1个工程,专门写1个链接数据库的java类

package test1;import java.sql.*;public class Gradation { static Connection con; static Statement sql; static ResultSet res; public Connection getConnection() { try {Class.forName("com.mysql.jdbc.Driver");con = DriverManager.getConnection("jdbc:mysql:"+ "//127.0.0.1:3306/ebuys", "root", "1234");} catch (Exception e) {e.printStackTrace();}return con; }public static void main(String[] args) { Gradation c = new Gradation(); con = c.getConnection();try {sql = con.createStatement(); res = sql.executeQuery("select * from t_tag");while (res.next()) { String id = res.getString("id"); // ��ȡ������"id"��ֶ�ֵֶ�ֵString name = res.getString("name");System.out.print(id); // ����ֵ���System.out.print(name);}} catch (Exception e) {e.printStackTrace();}}
}

这是专门用来连接并打开tag表做select查询的,显示如下:

303c6f6305854a3aa6f799deba1a8fa7.png

说明java连接和查询都没问题。数据库也是没问题的。

jsp网页能显示,说明tomcat也是没问题的。

所以最大的问题可能就是jsp中使用了taglib,这里可能有问题。

就是c:foreach之类的吧。

这个问题就不好解决了,毕竟jsp也不怎么会。所以接下来还是让我们先学习一下jsp,再学习el和jstl,之后再判断问题出在哪里。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/169374.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Transformer架构的ChatGPT:三步带你了解它的工作原理

作者:Insist-- 个人主页:insist--个人主页 梦想从未散场,传奇永不落幕,博主会持续更新优质网络知识、Python知识、Linux知识以及各种小技巧,愿你我共同在CSDN进步 目录 一、Transformer架构 1. 自注意力层 2. 前馈神…

基于机器学习的 ICU 脑血管疾病死亡风险智能预测系统

温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 重症患者或重大手术后的患者在重症监护室(ICU)内通过多种生命支持系统以维持生理功能。患者在ICU 内会被频繁持续的记录生命体征和实验室测量等多种数据。由于高频…

vmware开启ipv6

说明 在 ipv4 基础上配置ipv6网络。 分享 大数据博客列表开发记录汇总个人java工具库 项目https://gitee.com/wangzonghui/object-tool 包含json、string、集合、excel、zip压缩、pdf、bytes、http等多种工具,欢迎使用。 vm开启ipv6 设置vmware 打开vmware点击编…

C# PaddleInference.PP-HumanSeg 人像分割 替换背景色

效果 项目 VS2022.net4.8OpenCvSharp4Sdcb.PaddleInference 包含4个分割模型 modnet-hrnet_w18 modnet-mobilenetv2 ppmatting-hrnet_w18-human_512 ppmattingv2-stdc1-human_512 代码 using OpenCvSharp; using Sdcb.PaddleInference; using System; using System.Col…

贝锐蒲公英智慧运维方案:实现远程网络监控、管理、维护工业设备

为了提升运维效率,能够及时发现和响应设备的故障、异常和潜在问题。 越来越多的企业都在搭建“集中式”的远程智慧运维体系,以提高运维效率和降低成本。 但是,受限于网络,将不同地域的资源和信息进行整合,实现统一管理…

开发者测试2023省赛--UnrolledLinkedList测试用例

测试结果 官方提交结果 EclEmma PITest 被测文件UnrolledLinkedList.java /** This source code is placed in the public domain. This means you can use it* without any restrictions.*/package net.mooctest;import java.util.AbstractList; import java.util.Collectio…

Java通过JNI技术调用C++动态链接库的helloword测试

JNI调用原理 原理就不细说了&#xff0c;其实就是写个库给Java调&#xff0c;可以百度一下Java JNI&#xff0c;下面是HelloWorld代码测试 编写一个本地测试类 package com.my.study.cpp_jni;/*** 测试Java调用C库* <p>使用命令javac -h . NativeTest.java自动生成C头…

Django的ORM操作

文章目录 1.ORM操作1.1 表结构1.1.1 常见字段和参数1.1.2 表关系 2.ORM2.1 基本操作2.2 连接数据库2.3 基础增删改查2.3.1 增加2.3.2 查找2.3.4 删除2.3.4 修改 1.ORM操作 orm&#xff0c;关系对象映射&#xff0c;本质翻译的。 1.1 表结构 实现&#xff1a;创建表、修改表、…

Reeds-Shepp曲线

汽车都有一个最小转向半径&#xff0c;Reeds-Shepp曲线由几段半径固定的圆弧和一段直线段拼接组成&#xff0c;而且圆弧的半径就是汽车的最小转向半径。从起始点到目标点的路径长度是指汽车中心运动轨迹的长度&#xff0c;也就是所有圆弧的弧长和直线段的长度之和。 当环境中…

GoF之代理模式

2023.11.12 代理模式是GoF23种设计模式之一&#xff0c;其作用是&#xff1a;为其他对象提供一种代理以控制对这个对象的访问。在某些情况下&#xff0c;一个客户不想或者不能直接引用一个对象&#xff0c;此时可以通过一个称之为“代理”的第三者来实现间接引用。代理对象可以…

一键创建PDF文档,高效管理您的文件资料

在繁忙的工作中&#xff0c;您是否曾为处理PDF文件而感到烦恼&#xff1f;现在&#xff0c;我们为您推荐一款全新的高效PDF文档管理工具——一键创建PDF文档&#xff0c;让您的工作效率瞬间提升&#xff01; 首先&#xff0c;在首助编辑高手的主页面板块栏里&#xff0c;选择“…

华为ensp:ppp+CHAP认证

如果一头开启了认证&#xff0c;如果对面没有输入认证则双方无法通信 开启ppp r1和r2在系统视图模式进行同样的操作 interface Serial 1/0/0 link-protocol pppquit 开启ppp R1 去r1设置chap认证用户和密钥 进入系统视图 interface Serial 1/0/0 ppp authentication-m…