<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Save User</title>
</head>
<body>
<h1><font color="red">Save User</font></h1>
<s:form action="userNameAction">
<s:textfield name="userName.firstname" label="姓"></s:textfield>
<s:textfield name="userName.lastname" label="名"></s:textfield>
<s:textfield name="userName.age" label="年龄"></s:textfield>
<s:submit></s:submit>
</s:form>
</body>
</html>
这是哪个注册页面...label我设置值了...可是根本就显示不出来...这是第一个问题
public class UserNameAction extends ActionSupport {
private UserName userName;
private UserNameDao userNameDaoImpl;
public void setUserName(UserName userName) {
this.userName = userName;
}
public void setUserNameDaoImpl(UserNameDaoImpl userNameDaoImpl) {
this.userNameDaoImpl = userNameDaoImpl;
}
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
userNameDaoImpl.saveUserName(userName);
System.out.println(userName.getFirstname()+""+userName.getLastname()+userName.getAge());
这里是最重要的问题...我这里只能输出lastname的值...而firstname和age 输出空置
我不知道为什么...数据库里也是一样 为什么有的值可以传进来有的就不行
return SUCCESS;
}
<hibernate-mapping>
<class name="com.ssh.bean.UserName" table="tb_name">
<id name="id" type="java.lang.Integer" column="id">
<generator class="native"></generator>
</id>
<property name="firstname" type="java.lang.String" column="firstname"
length="50">
</property>
<property name="lastname" type="java.lang.String" column="lastname"
length="50">
</property>
<property name="age" type="java.lang.Integer" column="age"></property>
</class>
</hibernate-mapping>
这是哪个UserName.hbm.xml文件
我仔细检查了数据的字段都匹配....我想既然lastname可以加进数据库..我想我的配置应该没有问题才是...可为什么firstname和age的值却输出空的...他们都是一样的啊...这点我非常想不通...大家帮我看看问题到底出在哪了...我都搞了一天了这个问题
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Save User</title>
</head>
<body>
<h1><font color="red">Save User</font></h1>
<s:form action="userNameAction">
<s:textfield name="userName.firstname" label="姓"></s:textfield>
<s:textfield name="userName.lastname" label="名"></s:textfield>
<s:textfield name="userName.age" label="年龄"></s:textfield>
<s:submit></s:submit>
</s:form>
</body>
</html>
这是哪个注册页面...label我设置值了...可是根本就显示不出来...这是第一个问题
public class UserNameAction extends ActionSupport {
private UserName userName;
private UserNameDao userNameDaoImpl;
public void setUserName(UserName userName) {
this.userName = userName;
}
public void setUserNameDaoImpl(UserNameDaoImpl userNameDaoImpl) {
this.userNameDaoImpl = userNameDaoImpl;
}
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
userNameDaoImpl.saveUserName(userName);
System.out.println(userName.getFirstname()+""+userName.getLastname()+userName.getAge());
这里是最重要的问题...我这里只能输出lastname的值...而firstname和age 输出空置
我不知道为什么...数据库里也是一样 为什么有的值可以传进来有的就不行
return SUCCESS;
}
<hibernate-mapping>
<class name="com.ssh.bean.UserName" table="tb_name">
<id name="id" type="java.lang.Integer" column="id">
<generator class="native"></generator>
</id>
<property name="firstname" type="java.lang.String" column="firstname"
length="50">
</property>
<property name="lastname" type="java.lang.String" column="lastname"
length="50">
</property>
<property name="age" type="java.lang.Integer" column="age"></property>
</class>
</hibernate-mapping>
这是哪个UserName.hbm.xml文件
我仔细检查了数据的字段都匹配....我想既然lastname可以加进数据库..我想我的配置应该没有问题才是...可为什么firstname和age的值却输出空的...他们都是一样的啊...这点我非常想不通...大家帮我看看问题到底出在哪了...我都搞了一天了这个问题
UserName里面所有的set方法都有吗
在action中加入getUserName 第二个问题解决...这种传值方式还是第一次用 userName.firstname对这里面原理不了解 请问第一个问题是什么原因吗
因为你有set方法,所以可以赋值(set)。你的s:form加上 theme="simple"看看效果如何?
<s:form action="login2" theme="simple">
setFirstname 和setAge ,就是说,set三个字母之后跟着的是前面定义的属性名,该属性名第一个字母大写。
public class UserName {
private Integer id;
private String firstname;
private String lastname;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}