JPA开发中遇到的各类问题

本文介绍了解决MySQL错误代码1045的具体步骤,包括重启服务、卸载重装MySQL及其配置过程,适用于MySQL 5.0.22版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误代码 1045
Access denied for user 'root'@'localhost' (using password:YES)

如果你的mysql也出现以上这种提示, 建议你逐个字看完我这篇文章再按以下方法来尝试解决问题.

这是mysql数据库很多时候出现的问题, 网上流传很多解决办法. 有人按照那些方法, 还真可以把问题解决了; 但也有很多人按那些方法解决不了问题! 而这个中原因, 就是没有对症下药!!!

网上的那些方法, 很多都没有明确指出是什么版本的mysql, 所以导致问题者不能对症下药.

出现这个问题, 通过停止/重启 mysql 服务, 是可以解决的, 这个是最简单的办法! 对于不懂得什么叫做"停止/重启mysql服务"的人来说, 这个最简单的办法就是把服务器主机进行重新启动(就是把你的电脑进行重新启动).

以上是方法A! (这个方法适合任何版本的mysql)

 

以下是方法B:(方法仅适用于MySQL4.0.26 版本!!! (我估计, 4.0的其他版本应该也可以的))

网上也有说, 就是对root进行重改密码. 对于网上流传的改密码方法, 也是可行的. 请参考以下:

DOS下修改ROOT密码:当然后面安装PHPMYADMIN后修改密码也可以通过PHPMYADMIN修改

格式:mysqladmin -u用户名 -p旧密码 password 新密码

例:给root加个密码ideacmblog

首先在进入CMD命令行,转到MYSQL目录下的bin目录,然后键入以下命令

mysqladmin -uroot password ideacmblog

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

D:\php\MySQL\bin>mysqladmin -uroot password ideacmblog回车后ROOT密码就设置为ideacmblog了

但是, 请注意了, 以上方法仅适用于MySQL4.0.26 版本!!! (我估计, 4.0的其他版本应该也可以的)

 

方法C:

好了, 扯了那么多, 以上的两个方法都不是我本人测试过的, 本人不对真实性负责!

而现在我说一下本人亲自试过的方法, 以供参考:

话说今天, 我的服务器所有php及使用了mysql数据库的网站, 均挂掉了! 无法打开, 并有以下提示:

错误代码 1045
Access denied for user 'root'@'localhost' (using password:YES)

一开始我也是不断搜索google(我本人不喜欢百度!), 去找寻解决的办法. 看了很多, 也参照执行了, 事实上也是解决不了问题. 后来我想到了是版本的问题, 不同的mysql版本, 解决办法是不一定一样的!!记住...

我的mysql版本是: 5.0.22 (mysql-essential-5.0.22-win32)

今天一整天, 那些php网站均罢工. 到今晚才有时间上去服务器继续寻找方法, 但仍然解决不了.

最后, 我决定把mysql卸掉重新安装!

卸载很快, 而且不需要重新启动计算机.

于是, 继续进行安装.

第一步: 打开这个mysql-essential-5.0.22-win32.exe文件;

第二步: 见到窗口弹出, 并点击 Next> 进入下一步;

第三步: 选择 Custom 项, 并点击 Next> 进入下一步;

第四步: 到这一步要注意了, 点击 Change... 选择你原安装mysql的目录; 选择后, 继续点击Next> 进入下一步;

第五步: 点击 Install 进行安装...

安装至下一步, 会提示你进行注册, 选择最后一项, 即跳过注册, 进入下一步正式完成安装.

安装完成后, 继续弹出一个窗口, 提示你是不是立刻进行配置, 选择 Next

选择Standard Configuration.继续点击 Next 进入下一步

这一步里, 把上面那行的勾去掉, 只在 Include ....PATH 那行打勾, 继续点击 Next 进入下一步

在这一步, 点击中间的"Ex****"那顶, 接着配置完毕!

这时候, 你去看看你的mysql正常了没有?? !!

这样就ok了!!!

 

 

2222

The processing instruction target matching "[xX][mM][lL]" is not allowed.  

这个异常解释为:xml文件不能被解析,一般出现这样的问题在于xml格式上,并且问题多出现在xml文件的头部。

总结:前面不要有任何其他字符,如空格、回车、换行这些否则就会出现上面的异常。

 

配置jdbc驱动  

1.?把下载的jdbc驱动mysql-connector-java-5.1.7.zip解压缩,提取其中的mysql-connector-java-5.1.7-bin.jar文件到适当位置,并设置classpath路径指向该文件。其中classpath在“我的电脑”---->"属性"---->"高级"---->"环境变量"---->"系统变量"中进行设置。
?2.在mysql中
用creat database jtest;命令生成数据库jtest;
use jtest;
利用creat table info(NO varchar(5),NAME varchar(20),AGE varchar(5)); 生成info表。
insert into info values('1','aa','12'); //插入数据,多插入几个。
select * from info; //查看一下插入的数据。
3.测试代码:建立一个java工程文件。

//mysql的jdbc驱动测试代码

?import java.sql.*;

public class testMysql {

?public static void main(String[] args) {
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="root";
//密码
String userPasswd="root";
//数据库名
String dbName="jtest";
//表名
String tableName="info";
//联结字符串
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;

System.out.println(url);

try{
Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName; //注意FROM后面有空格。
ResultSet rs = statement.executeQuery(sql);
// 获得数据结果集合
ResultSetMetaData rmeta = rs.getMetaData();
// 确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
for(int i=1;i<=numColumns;i++) {
if(i
System.out.print(rmeta.getColumnName(i)+" | ");
else
System.out.println(rmeta.getColumnName(i));
}
while(rs.next()){
for(int i=1;i<=numColumns;i++) {
if(i
System.out.print(rs.getString(i).trim()+" | ");
else
System.out.println(rs.getString(i).trim());
}
}
rs.close();
connection.close();
}

catch(Exception ex){
System.out.println(ex);
System.exit(0);
}

?}
}

4、运行
jdbc:mysql://localhost/jtest?user=root&password=root
NO | NAME | AGE
1 | aa| 12

检查persistence.xml。

 <persistence-unit name="***" transaction-type="RESOURCE_LOCAL">

 

提示说没找到我们申明的持久单元。

该行:

<provider>org.hibernate.ejb.HibernatePersistence</provider> 

不存在于系统中,需要去hibernate网站

http://hibernate.org/30.html

下载Hibernate EntityManager import到工程中

 

注:

Hibernate 3.2以及以后的版本开始支持JPA,涉及JPA的子项目有三个,

它们分别是:

— Hibernate Core:Hibernate框架的核心实现。

— Hibernate Annotations:支持JDK 5.0的注释。

— Hibernate EntityManager:支持JPA的实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huangleijay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值