1.下载
mysql-installer-community-8.0.20.0下载:
https://pan.baidu.com/s/1JowAkm1O5O7iLn1H-072Zw
提取码:yf69
navicat 下载
https://pan.baidu.com/s/17_z76E9DgIlCBwY81maSVQ
提取码:1hdt
ecplise
自行在官网下载,安装
mysql-connector-java-5.1.46-bin 用于数据库的连接
https://pan.baidu.com/s/19UtMM4TzlicRkEPuv7hyzw
提取码:ovhx
下载包链接如上,具体安装请查询CSDN
2.数据库的准备
2.1建立连接
打开Navicat——点击连接——MySQL
连接名——自拟
用户名,密码——与MySQL下载时保持一致
先连接测试确认成功后再按确定
2.2建立数据库
双击 连接名 得到:
以上4个数据库请不要随意使用
右键 连接名 新建数据库
数据库名——自拟
如果使用的数据库内包含中文字符,最好
字符集使用gb2312或者utf8
对应的排序规则(我不清楚有什么特别的规定,我的习惯是:)
对应的是gb2312_chinese_ci utf8_unicode_ci
2.3例子:
双击数据库得到如下:
右键 表 新建表
开始设置字段的 名 类型 长度 小数点 ,,,,
设置结束后 点击保存
得到弹窗 输入表名即可
2.4转储数据库
右键 数据库名 转储SQL文件结构和数据
选择地址
即得到这个数据库的SQL文件
2.5运行SQL文件
右键连接名 运行SQL文件
找到文件的地址
编码与文件编码对应即可,例如:建立此数据库时采用gb2312,那么打开时也这么使用
2.6 可能遇到的问题
2.6.1无法通过 右键 连接名 运行SQL文件 的方式打开此文件
解决方案:自己创立一个数据库后,点击 表 右键 运行SQL文件
2.6.2运行SQL文件失败
Debug方法,只需观察报错信息的第一行,查询错误代码对应的意义,针对性的de
如果爆语法错误,可能是因为MySQL的版本不太统一造成的。
3.ecplise上web项目的创建和连接数据库
3.1创建项目
File-new-Dynamic Fragment-Project
Project name 项目名 自拟
服务器 我使用的是tomcat9
版本 注意!!!! 请使用2.5
原因:2.5的会自动在创建servlet时更行web.xml,非常方便!!!
3.2补充没有的jar
右键 项目名Build Path
点击Add External JARS 连接mysql-connector-java-5.1.46-bin这个jar包
点击Apply and Close结束
所有的添加tomcat和jre没有的jar包的方式都是这样
3.3文件书写的结构(仅用来记录个人习惯)
Java Resources内的src中
创建Ja包内写入JAVA文件
创建Se包内写入SERVLET文件
在WebContent内写入jsp和html文件
3.4详细介绍JAVA 连接数据库和运用数据库的步骤
3.4.1在Se包内创建servlet文件,DB.java
package Se;
import java.sql.*;
public class DB {
public static Connection dbCon(){
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名?useSSL=false", "MySQL用户名", "MySQL密码");
} catch (Exception e) {
e.printStackTrace();//用于打印错误
}
return con;
}
}
?useSSL=false是为了防止因为MySQL版本过高报错
3.4.2查询数据库
try {
PreparedStatement ps =DB.dbCon().prepareStatement("select user_age from user_info where user_name=? and user_password=?");
ps.setString(1, name);
ps.setString(2, pass);
ResultSet rs = ps.executeQuery();
if(rs.next()){
userInfo.setAge(rs.getInt(1));
}else{
}
}catch (Exception e) {
}
3.4.3插入数据库
try {
PreparedStatement ps =DB.dbCon().prepareStatement("insert into user_info (user_name,user_password,user_age) values(?,?,?)");
ps.setString(1,user_name);
ps.setString(2, lpassword);
ps.setInt(3, age);
ps.executeUpdate();
}catch (Exception e) {
e.printStackTrace();
}