Grails - 保存当前对象用 null 或 0 替换所有先前对象的值
Grails - Saving current object replace all previous object's values with null or 0
下面是保存用户对象并在控制台打印用户列表的代码。
index.gsp
<g:form action="signUp" controller="User">
E-mail Id :: <g:textField name="emailId" type="text"/><br>
Mobile Number :: <g:textField name="mobileNumber" type="text" /> <br>
<g:submitButton name="Sign up"/>
</g:form>
User.groovy
class User {
private String emailId;
private int mobileNumber;
}
UserController.groovy
class UserController {
def signUp() {
def user = new User(params);
user.save();
List<User> userList = User.list();
print "Size of list::"+userList.size();
for(User user1 : userList){
print "User Id::"+user1.id;
print "Email id::"+user1.emailId;
print "Mobile Number::"+user1.mobileNumber;
}
}
}
目前我还没有添加任何服务层。以下是我的输入和各自的输出。
输入-1
Email - id : test@test.com
Mobile number : 1234
输出-1 :
....Size of list::1
User Id::1
Email id::test@test.com
Mobile Number::1234
太棒了,现在我再插入一位用户。
输入-2
Email - id : sample@sample.com
Mobile number : 5678
输出 2
Size of list::2
User Id::1
Email id::null
Mobile Number::0
User Id::2
Email id::sample@sample.com
Mobile Number::5678
它将用 null 或 0(如果是整数)替换所有以前的记录。
您绝不能将域属性定义为 private fields
!
下面是保存用户对象并在控制台打印用户列表的代码。
index.gsp
<g:form action="signUp" controller="User">
E-mail Id :: <g:textField name="emailId" type="text"/><br>
Mobile Number :: <g:textField name="mobileNumber" type="text" /> <br>
<g:submitButton name="Sign up"/>
</g:form>
User.groovy
class User {
private String emailId;
private int mobileNumber;
}
UserController.groovy
class UserController {
def signUp() {
def user = new User(params);
user.save();
List<User> userList = User.list();
print "Size of list::"+userList.size();
for(User user1 : userList){
print "User Id::"+user1.id;
print "Email id::"+user1.emailId;
print "Mobile Number::"+user1.mobileNumber;
}
}
}
目前我还没有添加任何服务层。以下是我的输入和各自的输出。
输入-1
Email - id : test@test.com
Mobile number : 1234
输出-1 :
....Size of list::1
User Id::1
Email id::test@test.com
Mobile Number::1234
太棒了,现在我再插入一位用户。
输入-2
Email - id : sample@sample.com
Mobile number : 5678
输出 2
Size of list::2
User Id::1
Email id::null
Mobile Number::0
User Id::2
Email id::sample@sample.com
Mobile Number::5678
它将用 null 或 0(如果是整数)替换所有以前的记录。
您绝不能将域属性定义为 private fields
!