• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

RESIN/TOMCAT和MYSQL的连接解决方法

发布: 2007-7-04 13:34 | 作者: admin | 来源:  网友评论 | 查看: 22次 | 进入软件测试论坛讨论

领测软件测试网
cloud/2003.10.15
mail:flashc@21cn.com

如果你不想看太多废话直接看下面3句话就ok了
解决方法的主要手段:
1.mysql的授权用户权限必须@%而不是@localhost
2.jsp使用jdbc驱动连接数据库的连接字符实际上应该算远程访问
3.切记:@%代表在远程的权限,@localhost实际上只有在本机的权限

也许我太笨了,折磨了我一个多月吧,这个问题,一直没法连接到数据库上,头都大了因我安装mysql后习惯删除user表里的3个多余的帐号,以加强安全,所以这个问题一直没解决掉(但我想不删也好象一样有问题吧?毕竟那几个帐号都不是@%的),总是找不到原因,在CU的斑竹的提示下(虽然没给我实际解决的方法,但我还是要谢谢他们),后来根据出错信息查了一下国外的BBS,找到了一个类似的回答同样的错误,不过一个老外提示说把连接字符串里的localhost换成实际的域名或者IP我试了一下,没效,不过我突然想了下,又加了一个帐号@%的试验,成功了!心情很爽,再也不用郁闷了,还有,说一下,mysql这个数据库只有root帐号能有管理的特权,其他帐号是没权限动它的。

希望我的心得能给别人带来些帮助!

下面是测试用的jsp脚本,测试前请确保你的test数据库里面有个test表,随便填
两个字段和输入几行数据。
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.mysql.jdbc.Driver").newInstance();
String url ="jdbc:mysql://localhost/test?user=test&password=test&useUnicode=true&characterEncoding=8859_1" ;
//假设test是你的数据库
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
//从test表读数据
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网