解惑

解己之惑,解人之惑

日:2005年11月18日

Mysql5的编码问题

现在在用新的Mysql5,发现和原来的不太一样,这次我们使用的是UTF-8编码,配置好了编码转换的过滤器,页面的编码设置也正确,驱动也应该没有问
题,完全相同的配置,使用mysql4.0就没有问题,后来大致查了一下资料,发现mysql4.1以后的变化很大,数据库,表,字段都可以设置编码,修
改了一下缺省的编码,但是没有其效果。后来因为要增加一个表,就用mysqlfront直接加了一个,在创建表的时候要选择字符集,就选择了utf-8,
结果这个表中存放的中文没有问题,可以正常读写,然后把其它的表使用属性进行了修改,结果问题依旧,仔细一看原来是字段的编码还是latin1,后来修改
了建库脚本,全部的表都使用utf-8编码,字段不设置编码方式,问题解决。

使用commons-email发送邮件

项目要发送邮件,本来是想找原来的发送邮件的代码拿过来用的,突然记起来commons项目增加了一个commons-email发送邮件,决定用现成的,看了一下,果然很方便,直接贴出网站上的发送HTML邮件的例子:

// Create the email message
HtmlEmail email = new HtmlEmail();
email.setHostName("mail.myserver.com");
email.addTo("jdoe-AT-somewhere-DOT-org", "John Doe");
email.setFrom("me-AT-apache-DOT-org", "Me");
email.setSubject("Test email with inline image");

// embed the image and get the content id
URL url = new URL("http://www.apache.org/images/asf_logo_wide.gif");
String cid = email.embed(url, "Apache logo");

// set the html message
email.setHtmlMsg("<html>The apache logo - <img src=\"cid:"+cid+"\"></html>");

// set the alternative message
email.setTextMsg("Your email client does not support HTML messages");

// send the email
email.send();

不需要解释了。发送邮件的时候还可以嵌图片,呵呵,喜欢。
这个例子里面没有涉及的有两个常用的方面:
登录验证和邮件的编码格式,其实也很简单,验证调用一下

email.setAuthentication("me", "password");
对于中文邮件,设置下编码就行了:
email.Charset("utf-8");或者
email.Charset("utf8");

感受到JDK5的自动装箱和拆箱的便利

虽然JDK5推出很长时间了,但是实际上一直没有开始用,最多也就是了解了下新的特性,感觉也没有什么太吸引我的,这段时间做个项目,用的就是JDK5,
昨天在用的时候把一个字段的类型从long型修改为了Long型,奇怪的是eclipse没有像通常那样报错,后来想想原来是用的JDK5,现在有自动装
箱和拆箱的功能了,确实省了一些事。但是最后为了兼容性还是将类型修改一致了。

© 2025 解惑

本主题由Anders Noren提供向上 ↑