这样肯定是不行的,因为STRUTS过程是提交表单(表单传递的是IS08859-1编码)会先把表单内容复制到FORMBEAN中,才会调用ACTION,你在执行request.setCharacterEncoding("utf-8")之前FORMBEAN已经生成,所以编码还是IS08859-1。如果不想手工转换可以用个过滤流,有关过滤流的文章网上很多。