struts2--使用域模型完成注册的简单实例
来源:互联网 发布:高通编译linux 编辑:程序博客网 时间:2024/05/22 10:56
struts2--使用域模型完成注册的简单实例
1.新建一个Web Project,命名为struts-register
2.引入struts的支持
3.新建register.jsp页面
<span style="font-size:18px;"><html> <body> <form action="register.action"> username:<input name="user.username"><br> sex:<input name="user.sex"><br> age:<input name="user.age"><br> birth:<input name="user.birth"><br> bool:<input name="user.bool"><br> hobby:<input name="user.hobby" type="checkbox" value="music">music <input type="checkbox" name="user.hobby" value="sports">sports <input type="checkbox" name="user.hobby" value="games">games<br> pet name:<input name="user.pet.petName"><br> <input type="submit" value="register"> </form> </body></html></span>
<span style="font-size:18px;">4.配置struts.xml文件</span>
<span style="font-size:18px;"></span><pre name="code" class="html"><?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"><struts><package name="register" namespace="/" extends="struts-default"><action name="register" class="com.etc.action.RegisterAction"><result>/success.jsp</result></action></package></struts>5.新建com.etc.vo包,包下新建User.java
<span style="font-size:18px;"></span><pre name="code" class="java">package com.etc.vo;import java.util.Arrays;import java.util.Date;public class User {private String username;private String sex;private int age;private Date birth;private boolean bool;private String[] hobby;private Pet pet;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Date getBirth() {return birth;}public void setBirth(Date birth) {this.birth = birth;}public boolean isBool() {return bool;}public void setBool(boolean bool) {this.bool = bool;}public String[] getHobby() {return hobby;}public void setHobby(String[] hobby) {this.hobby = hobby;}public Pet getPet() {return pet;}public void setPet(Pet pet) {this.pet = pet;}@Overridepublic String toString() {return "User [username=" + username + ", sex=" + sex + ", age=" + age+ ", birth=" + birth + ", bool=" + bool + ", hobby="+ Arrays.toString(hobby) + ", pet=" + pet + "]";}}6.在com.etc.vo包下新建Pet.java
<span style="font-size:18px;"></span><pre name="code" class="java">package com.etc.vo;public class Pet {private String petName;public String getPetName() {return petName;}public void setPetName(String petName) {this.petName = petName;}@Overridepublic String toString() {return "Pet [petName=" + petName + "]";}}7.新建com.etc.action包,在包下新建RegisterAction.java
<span style="font-size:18px;"></span><pre name="code" class="java">package com.etc.action;import com.etc.vo.User;import com.opensymphony.xwork2.ActionSupport;public class RegisterAction extends ActionSupport{private User user;public User getUser() {return user;}public void setUser(User user) {this.user = user;}public String execute() throws Exception {System.out.println(user);return "success";}}8.新建success.jsp页面
<span style="font-size:18px;"></span><pre name="code" class="html"><html> <body> register success! </body></html>9.右键运行,在注册页面输入相应信息
<span style="font-size:18px;"> 运行结果:跳转到success.jsp页面,输出register success!</span>
<span style="font-size:18px;"> <span style="white-space:pre"></span>在控制台输出:User [username=zoey, sex=female, age=10, birth=Sat Oct 02 00:00:00 GMT+08:00 2010, bool=true, hobby=[music, sports], pet=Pet [petName=petty]]</span>
注意点:
1)struts中int类型的数据必须要填,虽然不填时不影响运行,但是会报错:ognl.MethodFailedException
2)struts中接收的日期格式只能是yyyy-MM-dd,否则要自己进行转换。
3)上面的例子中,hobby是一个checkbox类型,里面的name属性必须保持一致,而且一定要有value属性,否则得到的结果就是on,而不是我们实际选中的值
4)其中,在User类中又有一个Pet的对象,声明:private Pet pet;一定要在Pet.java中生成toString()方法,才能得到pet的name值,否则得到的一直都是一个地址。
还有在register.jsp页面中,pet name的属性name的值写的是user.pet.name;
5)hobby除了可以是String[]类型,还有是List<String>类型
只要在User.java中:private String[] hobby ----->private List<String> hobby;
重新生成hobby的getter/setter方法,toString方法就可以了。
0 0
- struts2--使用域模型完成注册的简单实例
- 一个Struts2的简单的使用实例
- struts2的简单实例
- struts2简单的实例
- Struts2--简单的实例
- Struts2完成文件的上传功能实例
- 完成端口模型实例
- struts2 简单的注册表单输入验证
- struts2+hibernate4实现简单的注册登陆
- 使用jsonp方式完成跨域资源的访问(struts2)
- Struts2学习(三)---Struts2.5使用通配符完成登录注册
- iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
- iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
- OS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
- 使用注解完成struts2的上传下载
- Struts2的简单使用
- Struts2简单的使用
- Struts2的简单使用
- java之原子性
- Java反射
- [Leetcode]100. Same Tree
- Leetcode Best Time to Buy and Sell Stock
- 静态代理模式总结
- struts2--使用域模型完成注册的简单实例
- maven初识
- PAT L2-004. 这是二叉搜索树吗?
- codeforces Round #361 D. Friends and Subsequences (ST表,二分)
- Hashtable与HashMap的区别
- Leetcode Best Time to Buy and Sell Stock II
- 在数组 arr 中,查找值与 item 相等的元素出现的所有位置
- MAC Android Eclipse开发环境设置
- java中的时间转化问题