易截截图软件、单文件、免安装、纯绿色、仅160KB

java(jsp)使用MySql数据库,中文乱码的完整解决方案

 java(jsp)使用MySql数据库,中文乱码的完整解决方案
mysql是一个小型的开源的数据库,用来自学一些技术是十分方便的。但使用mysql存储数据,也会遇到一些非常恶心的问题,如:中文乱码问题、java驱动程序无法使用的问题(已经解决,详见:http://hi.baidu.com/lauo1988/blog/item/ff0da655bd3e2eceb745ae0b.html)。
对于中文乱码问题。网上搜索得到的解决方案比较多,主要还是设置mySql的配置文件。这些都比较麻烦,但是设置成功的话,的确能够一劳永逸。但我尝试了很多次网上的方法,都不能很好的解决这个问题。乱码依然存在。想想,要做网站的话,用mySql数据库存放数据,中文都不能很好支持的话,做这东西是没有用的!
最终,我按照:将中文字字符串,按照无损编码的方式,对其进行编码,然后直接存于数据库中。当要取出数据时,再将中文字符串解码。这样可以达到存储中文字符串,又不会产生乱码的目标。
我在网上找到了一些无损编码的方式,详见:http://www.cnblogs.com/qiren5761/articles/523790.html
我采用了里面的:“String-GBK〉ByteArray-ISO-8859-1〉String-ISO-8859-1〉ByteArray-GBK〉String
”的编码/解码方式。
主要的java处理函数如下:
/*
*完成从gbk编码到ISO-8859-1的转换
*/
public static
String encode(String str)
{
   if(str==null||str.equals("")) return
str;
   try
   {
    return new
String(str.getBytes("gbk"),"ISO-8859-1");
   }
   catch(Exception e){
e.printStackTrace(); return str;}
}
/*
*从ISO-8859-1恢复gbk编码
*/
public static String
decode(String str)
{
   if(str==null||str.equals("")) return str;
  
try
   {
    return new String(str.getBytes("ISO-8859-1"),"gbk");
  
}
   catch(Exception e){ e.printStackTrace(); return
str;}
}
当然,对于sql操作,不管是插入还是查询,sql语句必需先经过encode函数编码,然后得到的查询结果使用decode,可以恢复到需要的中文字串。举例如下:
/*
*获得用户的描述信息
*/
public String[]
getUserInfo(String uid)
{
   if(uid==null||uid.equals("")) return
null;
   try
   {


相关文档:

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

mysql 行转列问题

这几天所作的工作涉及到数据库行转列的问题
记录一下出现的错误,以免以后再犯
举网上最通俗的例子吧
Name Subject Result
张三    语文         80
张三    数学         90
张三    物理  &n ......

MYSQL数据库实用学习资料之常用命令集合

 Mysql数据库是一个多用户,多线程的关系型数据库,是一个客户机/服务器结构的应用程序。它是对个人用户和商业用户是免费的.
Mysql数据库具有以下优点:
1.同时访问数据库的用户的数量不受限制
2.可以保存超过5千万条的记录
3.是目前市场上现有数据库产品中运行速度最快的数据库系统
4.用户权限设置简单、有 ......

linux c++连接mysql示例

 
 编译和连接程序
  MySQL中有一个特殊的脚本,叫做mysql_config. 它会为你编译MySQL客户端,并连接到MySQL服务器提供有用的信息.你需要使用下面两个选项.
  1. --libs 选项 - 连接MySQL客户端函数库所需要的库和选项.
  $ mysql_config --libs
  2. --cflags 选项 - 使用必要的include文件的选项等等.
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号