您的位置:首页 > 编程语言 > Java开发

初学STRUTS---实现注册/登录/动态检测注册信息

2006-11-30 19:39 363 查看
1.将下载的struts解压后将 lib目录下所有的.jar文件复制到创建的STRUTS项目的WEB-INF/lib目录下

2.在ECLIPSE中新建一个项目--Tomcat Project,并通过添加外部JAR把Struts.jar添加到项目里

3.相关的JSP,类,和配置文件如下:

首页login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="gb2312"%>

<%@page import="org.apache.struts.action.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>LOGIN </title>
</head>
<body>
<form action="login.do" method="post">
用户名:<input size="15" name="name"><p>
密  码:<input type="password" size="15" name="psw"><p>

<a href="regist.do">新用户注册</a>
<input type="submit" value="登录">

</form>

</body>
</html>
=====================================================================

注册页面regist.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>regist page</title>
</head>
<body vLink ="#006666" link="#003366" bgColor="#E0F0F8">
<img height="33" src="register.gif" width="148">

<form action="registSubmit.do" method="post">
用户名:  <input size="15" name="name"><p>
密  码:  <input type="password" size="15" name="psw1"><p>

确认密码:<input type="password" size="15" name="psw2"><p>

<input type="submit" value="注册">

</form>
<a href="login.jsp">返回登录界面</a><br>

</body>
</html>
========================================================================

登录正确返回页面right.jsp

<%@ page language="java" contentType="text/html"
pageEncoding="UTF-8"%>
<%@page import="classmate.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>welcome</title>
</head>
<body>

<%

UserForm formBean1=(UserForm)request.getAttribute("formBean1");
if(formBean1!=null&&formBean1.getName()!=null){
%>

<h1>

<img src="smile.gif">
热烈欢迎您,
<%=new String(formBean1.getName().getBytes("ISO-8859-1"))%>同学!
<% }else{ %>您无权访问本页!
<%} %>

</h1><br>
<a href="login.jsp">重新登录</a>
<a href="regist.do">新用户注册</a>
</body>
</html>
====================================================================
注册成功后的返回页面registRight.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="gb2312"%>
<%@page import="classmate.*" %>
<%@page import="org.apache.struts.validator.DynaValidatorForm" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>welcome</title>
</head>
<body>

<%
DynaValidatorForm dyform=(DynaValidatorForm)request.getAttribute("registForm");

if(dyform!=null&&dyform.get("name")!=null){

String namer= (String)dyform.get("name");
%>

<h1>

<img src="smile.gif">
热烈欢迎您,
<%=new String(namer.getBytes("ISO-8859-1"))%>同学!
<% }else{ %>您无权访问本页!
<%} %>

</h1><br>
<a href="login.jsp">重新登录</a>
<a href="regist.do">新用户注册</a>
</body>
</html>
===========================================================================
错误处理页面error.jsp

<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312" isErrorPage="true"%>
<%@taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>This is a error page</title>
</head>
<body>

<h1>

<img src="cry.gif">
<html:errors/>

</h1><br>

<a href="login.jsp">
<bean:message key="item.loginAgain"/>
</a>
<a href="regist.do">
<bean:message key="item.regist"/>

</a>

</body>
</html>
===========================================================================
LoginAction.java

package classmate;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.sql.DataSource;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public final class LoginAction extends Action{

public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception{
UserForm userform=(UserForm)form;
String name=userform.getName();
String psw=userform.getPsw();

String name_utf8=new String(name.getBytes("ISO-8859-1"));
String psw_utf8=new String(psw.getBytes("ISO-8859-1"));
ServletContext context=servlet.getServletContext();
DataSource dataSource=(DataSource)context.getAttribute("mysqlDB1");
DBUser dbuser=new DBUser(dataSource);
HttpSession session=request.getSession();

if(dbuser.checkUser(name_utf8, psw_utf8)){
UserLoginLog ul= new UserLoginLog();
ul.save(name_utf8,psw_utf8);
return mapping.findForward("successed");
}else{
return mapping.findForward("failed");}

}

}
=============================================================================

registAciton.java

package classmate;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.sql.DataSource;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.DynaActionForm;

import org.apache.struts.validator.DynaValidatorForm;

public final class RegistAction extends Action{

public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception{
DynaValidatorForm dyform=(DynaValidatorForm)form;// 动态验证框
//DynaActionForm dyform=(DynaActionForm)form;
String name=(String)dyform.get("name");

String psw1= (String) dyform.get("psw1");
String psw2= (String) dyform.get("psw2");

String name_utf8=new String(name.getBytes("ISO-8859-1"));
String psw1_utf8=new String(psw1.getBytes("ISO-8859-1"));
ServletContext context=servlet.getServletContext();
DataSource dataSource=(DataSource)context.getAttribute("mysqlDB1");
DBUser dbuser=new DBUser(dataSource);
HttpSession session=request.getSession();

if(dbuser.Insert(name_utf8,psw1_utf8)!=0){
UserLoginLog ul= new UserLoginLog();
ul.save(name,psw1);
return (mapping.findForward("registSuccessed"));
}else{

ActionMessages errors=new ActionMessages();
errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("label.registError"));
if(!errors.isEmpty()){
saveErrors(request,errors);
}

return mapping.findForward("failed");}

}

}

========================================================================
userForm.java

package classmate;
import org.apache.struts.action.ActionForm;

public class UserForm extends ActionForm{

/**
*
*/
private static final long serialVersionUID = 1L;
private String name=null;
private String psw=null;
public UserForm(){}
public void setName(String name){
this.name=name; }

public void setPsw(String psw){
this.psw=psw; }
public String getName(){return name;}
public String getPsw(){return psw;}
}

=====================================================================
userLoginLog.java

package classmate;

import java.io.*;
import java.util.*;
public class UserLoginLog {
public void save(String name,String pwd){
Calendar today=Calendar.getInstance();
String fileName ="logs//user_login_log.txt";

try {
FileWriter fw=new FileWriter(fileName,true);
BufferedWriter bw=new BufferedWriter(fw);
bw.write(today.getTime().toString()+":user"+name+":password"+pwd+"log in/n");
bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}

}

========================================================================
DBuser.java

package classmate;

import javax.sql.*;
import java.sql.*;

public class DBUser {

DataSource dataSource;
public DBUser(DataSource dataSource){
this.dataSource=dataSource;
}

public boolean checkUser(String name,String psw)throws Exception{
Connection connect =null;
String strSql;
ResultSet rs;
boolean result=false;
strSql="select * from account where username='"+name+"'and password='"+psw+"'";
try {

connect=dataSource.getConnection();
Statement stmt=connect.createStatement();
rs=stmt.executeQuery(strSql);
if(rs.next()){
result=true;
}

} catch (SQLException e) {
e.printStackTrace();
}

finally{
if(connect!=null)connect.close();
}
return result;
}

public int Insert(String username,String password)throws Exception{
Connection connect=null;
String strSql;
int result =0;
strSql="insert into account values('"+username+"','"+password+"')";
try {
connect =dataSource.getConnection();
Statement stmt=connect.createStatement();
result =stmt.executeUpdate(strSql);
} catch (SQLException ex) {
System.err.println(ex.getMessage());// TODO: handle exception
}

finally{
if(connect!=null)connect.close();
}

return result;
}
}
============================================================================
web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

<servlet>
<servlet-name>actionServlet</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>actionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
</web-app>
=======================================================================
struts-config.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE struts-config
PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources>
<data-source key="mysqlDB1" type="org.apache.commons.dbcp.BasicDataSource">
<set-property value="org.gjt.mm.mysql.Driver" property="driverClassName" /><set-property
value="jdbc:mysql://localhost/test" property="url" /><set-property
value="5" property="maxActive" /><set-property value="test_root"
property="username" /><set-property value="test_root"
property="password" /><set-property value="true"
property="autoCommit" /></data-source></data-sources>
<form-beans>
<form-bean name="formBean1" type="classmate.UserForm"/>
<form-bean name="registForm"
type="org.apache.struts.validator.DynaValidatorForm" dynamic="true">
<form-property name="name" type="java.lang.String"></form-property>
<form-property name="psw1" type="java.lang.String"></form-property>
<form-property name="psw2" type="java.lang.String"></form-property>
</form-bean>
</form-beans>
<global-forwards>
<forward name="failed" path="/error.jsp"></forward>
<forward name="successed" path="/right.jsp"></forward>
<forward name="registSuccessed" path="/registRight.jsp"></forward>
</global-forwards>
<action-mappings>
<action path='/login' name="formBean1" input="/login.jsp"
type='classmate.LoginAction' scope="request">
</action>
<action path="/registSubmit" name="registForm"
type="classmate.RegistAction" input="/error.jsp" scope="request"
validate="true">
</action>
<action path="/regist" forward="/regist.jsp"></action>
</action-mappings>
<message-resources parameter="classmate.MyResource"></message-resources>
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
<set-property value="false"
property="stopOnFirstError" /></plug-in>
</struts-config>

==============================================================================
validation.xml

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
<form-validation>
<formset>
<form name="registForm">
<field property="name" depends="required,maxlength">
<arg0 key="label.username"></arg0>
<arg1 key="${var:maxlength}" resource="false"></arg1>
<var>
<var-name>maxlength</var-name>
<var-value>20</var-value>
</var>
</field>

<field property="psw1" depends="required,validwhen,maxlength">
<arg0 key="label.password" />
<arg1 key="${var:maxlength}" resource="false" />
<var>
<var-name>maxlength</var-name>
<var-value>20</var-value>
</var>
<var>
<var-name>test</var-name>
<var-value>((psw2==*this*)and(*this*!=null))</var-value>
</var></field>
</form>
</formset>
</form-validation>

============================================================================
validator-rules.xml(this is in the struts package you downloaded)
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
<!--
$Id: validator-rules.xml 159291 2005-03-28 20:19:29Z niallp $

This file contains the default Struts Validator pluggable validator
definitions. It should be placed somewhere under /WEB-INF and
referenced in the struts-config.xml under the plug-in element
for the ValidatorPlugIn.

<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>

These are the default error messages associated with
each validator defined in this file. They should be
added to your projects ApplicationResources.properties
file or you can associate new ones by modifying the
pluggable validators msg attributes in this file.

# Struts Validator Error Messages
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
errors.invalid={0} is invalid.

errors.byte={0} must be a byte.
errors.short={0} must be a short.
errors.integer={0} must be an integer.
errors.long={0} must be a long.
errors.float={0} must be a float.
errors.double={0} must be a double.

errors.date={0} is not a date.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is an invalid credit card number.
errors.email={0} is an invalid e-mail address.

Note: Starting in Struts 1.2.0 the default javascript definitions have
been consolidated to commons-validator. The default can be overridden
by supplying a <javascript> element with a CDATA section, just as
in struts 1.1.

-->

<form-validation>

<global>

<validator name="required"
classname="org.apache.struts.validator.FieldChecks"
method="validateRequired"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
msg="errors.required"/>

<validator name="requiredif"
classname="org.apache.struts.validator.FieldChecks"
method="validateRequiredIf"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
msg="errors.required"/>

<validator name="validwhen"
msg="errors.required"
classname="org.apache.struts.validator.validwhen.ValidWhen"
method="validateValidWhen"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"/>

<validator name="minlength"
classname="org.apache.struts.validator.FieldChecks"
method="validateMinLength"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.minlength"
jsFunction="org.apache.commons.validator.javascript.validateMinLength"/>

<validator name="maxlength"
classname="org.apache.struts.validator.FieldChecks"
method="validateMaxLength"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.maxlength"
jsFunction="org.apache.commons.validator.javascript.validateMaxLength"/>

<validator name="mask"
classname="org.apache.struts.validator.FieldChecks"
method="validateMask"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.invalid"/>

<validator name="byte"
classname="org.apache.struts.validator.FieldChecks"
method="validateByte"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.byte"
jsFunctionName="ByteValidations"/>

<validator name="short"
classname="org.apache.struts.validator.FieldChecks"
method="validateShort"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.short"
jsFunctionName="ShortValidations"/>

<validator name="integer"
classname="org.apache.struts.validator.FieldChecks"
method="validateInteger"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.integer"
jsFunctionName="IntegerValidations"/>

<validator name="long"
classname="org.apache.struts.validator.FieldChecks"
method="validateLong"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.long"/>

<validator name="float"
classname="org.apache.struts.validator.FieldChecks"
method="validateFloat"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.float"
jsFunctionName="FloatValidations"/>

<validator name="double"
classname="org.apache.struts.validator.FieldChecks"
method="validateDouble"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.double"/>

<validator name="date"
classname="org.apache.struts.validator.FieldChecks"
method="validateDate"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.date"
jsFunctionName="DateValidations"/>

<validator name="intRange"
classname="org.apache.struts.validator.FieldChecks"
method="validateIntRange"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends="integer"
msg="errors.range"/>

<validator name="floatRange"
classname="org.apache.struts.validator.FieldChecks"
method="validateFloatRange"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends="float"
msg="errors.range"/>

<validator name="doubleRange"
classname="org.apache.struts.validator.FieldChecks"
method="validateDoubleRange"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends="double"
msg="errors.range"/>

<validator name="creditCard"
classname="org.apache.struts.validator.FieldChecks"
method="validateCreditCard"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.creditcard"/>

<validator name="email"
classname="org.apache.struts.validator.FieldChecks"
method="validateEmail"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.email"/>

<validator name="url"
classname="org.apache.struts.validator.FieldChecks"
method="validateUrl"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.url"/>

<!--
This simply allows struts to include the validateUtilities into a page, it should
not be used as a validation rule.
-->
<validator name="includeJavaScriptUtilities"
classname=""
method=""
methodParams=""
depends=""
msg=""
jsFunction="org.apache.commons.validator.javascript.validateUtilities"/>

</global>

</form-validation>
============================================================================
MyResource.properties这个是STRUTS应用程序的国际化的,中文默认的是MyResource_zh.propeties
我只写了错误页面的,一点点。
#simple properties file for test

label.deny= Access Denied
item.loginAgain= login Agin
item.regist=New User Regist

error.name.required=A userName is Required
error.psw.required=A Password is Required

errors.required={0} is null
errors.minlength={0} cannot less than {1} char
errors.maxlength={0} cannot more than {1} char
errors.validwhen={0} unmatch

#simple properties file for test

label.deny= Access Denied
item.loginAgain= login Agin
item.regist=New User Regist

error.name.required=A userName is Required
error.psw.required=A Password is Required

errors.required={0} is null
errors.minlength={0} cannot less than {1} char
errors.maxlength={0} cannot more than {1} char
errors.validwhen={0} unmatch

=====================================================================
4.把STRUTS中的struts-bean.tld与 struts-html.tld复制到本项目的/WEB-INF/目录下
5.在MYSQL中建立account 数据表
5.启动TOMCAT服务器,验证提交数据!
6.在JAVA程序中向MYSQL插入中文时候,把插入的字符串做如下转换new String(insertString.getBytes("ISO-9558-1") );
如果是单独的一个JSP页面向MYSQL插入中文数据,把插入的字符串做如下转换new String(insertString.getBytes("ISO-9558-1","UTF-8") );
当然这要看自己的数据库字符编码和页面的字符编码,我的是LINUX,所以都用了UTF-8,在WIN下面改为GB2312吧!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐