浏览 3212 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-07-09
http://www.w2blog.net/view/142.html)
数据库采用mysql, (Navicat MySQL作为mysql的UI
服務器采用tomcat6.0, IDE使用Europa , 使用dbutil(http://commons.apache.org/dbutils/)作为操作数据库辅助的jar。 1. 国际化问题 所有代码都使用utf-8(在europa中如下设置jsp、js 、 properties的编码格式) 所有jsp页面 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>(JSP编译器在将JSP文件编译成Servlet时使用的编码) <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> (重新认定编码方式) tomcat的server.xml <Connector port="8080" URIEncoding="UTF-8" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> (注意要重新建europa的javaee的tomcat server;否则europa会保留第一次设置的值) 数据库编码 确保mysql安装时选择的编码为utf8,可以通过如下方式确认。( my.ini) [client] port=3306 [mysql] default-character-set=utf8 连接代码 &useUnicode=true&characterEncoding=utf-8 2、struts2的配置文件 package.properties User.name = 用户名 User.pwd = 用户密码 User.description = 用户详细信息 ############################## User.submit = 登录 User.create = 注册 User.update = 提交 User.reset = 重置 User.edit = 修改注册信息 User.logout = 退出登录 User.delete = 删除用户 User.selectAll = 查询全部 键值对就是为了实现国际化(package.properties可以有多种命名方法,看你的具体业务需要了,我只是写个例子) 在jsp中调用: <s:properties value="%getText('User.name')"/> 在java source中调用: String name = getText("User.name") UserAction-user_create-validation.xml <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> <validators> <field name="name"> <field-validator type="requiredstring"> <message><![CDATA[ 用户名不能为空 ]]></message> </field-validator> </field> <field name="pwd"> <field-validator type="requiredstring"> <message key="requiredstring"/> </field-validator> </field> </validators> 文件名格式为 className-actionalias-validation.xml 关于标签 <s:iterator value="userList"> ........ </s:iterator> 关于action的别名 xml配置文件: <action name="user_*" method="{1}" class="example.UserAction"> <result name="input"> /example/user_create.jsp </result> <result name="create_success"> /example/user_create_success.jsp </result> <result name="editInit"> /example/user_edit.jsp </result> <result name="selectAll"> /example/user_selectAll.jsp </result> <result name="delete_success"> /example/user_create_success.jsp </result> <result name="create"> /example/user_create.jsp </result> </action> java代码中: public String select() throws Exception { // 查询SQL String USER_SELECT = "SELECT u.NAME, u.PWD, u.DESCRIPTION FROM USER u"; ResultSetHandler rsh = new ResultSetHandler() { public Object handle(ResultSet rs) throws SQLException { List<User> userListTemp = new ArrayList<User>(); /* * select */ 。。。。。。。。。。。。。。。。。。。。 public String createInit() throws Exception { return "create"; } jsp代码中: <td> <s:url action="user_editInit" id="user_edit"> <s:param name="name" value="name"></s:param> </s:url> <s:a href="%{user_edit}"><s:text name="%{getText('User.edit')}"/></s:a> <s:url action="user_delete" id="user_delete"> <s:param name="name" value="name"></s:param> </s:url> <s:a href="%{user_delete}"><s:text name="%{getText('User.delete')}"/></s:a> <hr> </td> 从action的命名及java source的方法名中, 相信大家已经看出规律来了。 附: sql 引用 /* MySQL Data Transfer Source Host: localhost Source Database: webapp Target Host: localhost Target Database: webapp Date: 2008-7-9 下午 11:31:33 */ SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for user -- ---------------------------- CREATE TABLE `user` ( `id` int(8) NOT NULL auto_increment, `name` varchar(45) NOT NULL, `pwd` varchar(45) NOT NULL, `description` varchar(245) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records -- ---------------------------- INSERT INTO `user` VALUES ('42', '1', '1', '1'); INSERT INTO `user` VALUES ('43', '11', '11', '11'); 其他地方感觉也没什么可说的啦, (其实上面每一点要深入下去, 都能写成一篇, 我只是草草说下,抛砖引玉了)我把源码贴上, 如果需要jar文件, 可以congpeixue@126.com 后面有时间我会对这个例子再完善一下。。。。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-07-14
DB用utf-8的话,如果数据量多的话,会不会造成空间使用量比较大
?? |
|
返回顶楼 | |
发表时间:2008-07-14
UTF-8是比GBK多占用了成倍的空间
你的网站访客没有什么国外用户, 就用GBK吧 ~ |
|
返回顶楼 | |