demo1
form表单的Action.java文件和jsp之间数据传递
目标:以注册为模版,描述数据传递过程
1、jsp里的struts2表单(WebContent目录下)
reg.jsp
<s:form name="regForm" action="RegisterAction.action" method="post">
<s:textfield label="用户名" name="user.userName" title="请输入用户名!"/>
<s:textfield label="密码" name="user.passWord" title="请输入密码!"/>
<s:textfield label="年龄" name="user.age"/>
<s:textfield label="Email" name="user.email"/>
<s:radio label="性别" name="user.sex" list="#{'nan':'男','nv':'女'}"
value="{'nan'}" />
<s:checkboxlist label="爱好" name="user.hobby" list="#{'0':'篮球','1':'足
球','2':'排球'}" value="{'0'}"/>
<s:select label="班级" name="user.cls" list="{'12(移动)','12(技术)','12(测试)'}"
value="{'12(测试)'}"/>
<s:textarea label="简介" name="user.remark" cols="20" rows="5" />
<s:submit value="提交"/>
<!--name属性均是javaBean里的一个属性,这样前台输入的数据才会进入到后台的java代码里-->
2、javaBean详情(src目录下,可以新建包)
package com.lin.pojo;
public class User {
private int userID;
private String userName;
private String passWord;
private String sex;
private String [] hobby;
private int age;
private String cls;
private String remark;
private String email;
public int getUserID() {
return userID;
}
public void setUserID(int userID) {
this.userID = userID;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String[] getHobby() {
return hobby;
}
public void setHobby(String[] hobby) {
this.hobby = hobby;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getCls() {
return cls;
}
public void setCls(String cls) {
this.cls = cls;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
3、package com.lin.test;
import java.util.Map;
import com.lin.pojo.User;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class RegisterAction extends ActionSupport {
User user;
public User getUser() {//getset方法是必不可少的
return user;
}
public void setUser(User user) {
this.user = user;
}
public String register(){
//把注册的信息存入session
System.out.println("RegisterAction register"+user.getUserName());
System.out.println("RegisterAction register"+user.getPassWord());
Map<String ,Object> map2=ActionContext.getContext().getSession();
map2.put("userName",user.getUserName());
map2.put("passWord",user.getPassWord());
return "success";
}
}
4、struts2配置Action
<action name="RegisterAction" class="com.lin.test.RegisterAction" method="register">
<result name="success" type="chain">LoginAction1</result>
<result name="input">/register/reg.jsp</result>
</action>
<!--如果注册成功后就到struts2里查找LoginAction1对应的java类,如果注册失败,就提示不合
法的输入-->
5、使用RegisterAction-validation.xml校验输入的信息
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
<validators>
<field name="user.userName">
<field-validator type="requiredstring">
<message>用户名必须输入</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">4</param>
<param name="maxLength">8</param>
<message>用户名长度访问4-8</message>
</field-validator>
</field>
<field name="user.passWord">
<field-validator type="requiredstring">
<message>密码必须输入!</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">6</param>
<message>密码的长度必须大于${minLength}!</message>
</field-validator>
</field>
<field name="user.age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">130</param>
<message>年龄必须在${min}-${max}之间!</message>
</field-validator>
</field>
<field name="user.email">
<field-validator type="email">
<message>必须输入正确的email地址!</message>
</field-validator>
</field>
</validators>
6、运行效果:成功
p1
p2
相关推荐
form表单: <form name="myform" id="myform" action="ssss" method="post" onsubmit="getUrl();"> javascript方法: [removed] function getUrl(){ $('form').attr('action','new_url'); } [removed] ...
通过以上步骤,我们成功地在一个form表单中实现了同时上传多个文件和文本信息的功能。这种实现方式不仅提高了用户的使用体验,也方便了开发者对上传数据的管理和处理。在实际应用中,还可以进一步扩展该功能,例如...
在Java Web开发中,处理包含文件上传...通过以上步骤,我们可以有效地在Java中读取和处理通过`multipart/form-data`方式提交的表单数据,包括文件上传。理解这些概念和技术对于任何Java Web开发者来说都是至关重要的。
接着,创建`UploadAction.java`,该类需要继承自Struts的`Action`类,并实现文件上传的核心逻辑。我们可以使用Apache Commons FileUpload库来处理文件上传,因为Java标准库不直接支持多部分文件上传。以下是一个简化...
在这个"Java (Jsp) 制作简单的表单程序"的主题中,我们将深入探讨如何使用JSP来构建一个基本的用户输入表单,并理解其背后的原理和技术。 1. **JSP简介** JSP是Java EE的一部分,它允许开发者在HTML页面中嵌入Java...
在这个“JSP练习关于表单传递”的例子中,我们将探讨如何通过JSP来接收和处理来自HTML表单的数据。** 在HTML表单中,用户可以输入数据并提交到服务器进行处理。表单通过`<form>`标签定义,其中`action`属性指定处理...
在JSP中,我们可以通过标签库(Tag Library)如JSTL(JavaServer Pages Standard Tag Library)来处理表单数据和调用Action。例如,我们可以使用`<c:choose>`、`<c:when>`等标签进行条件判断,决定调用哪个Action。 ...
在本教程中,我们将探讨如何使用Java Servlet和JSP(JavaServer Pages)来实现一个简单的文件上传功能。 首先,我们需要了解JSP和Servlet的关系。JSP是用于创建动态网页的Java技术,它将HTML代码和Java代码结合在...
模型(Model)负责业务逻辑和数据处理,视图(View)负责显示结果,控制器(Controller)处理用户的请求并协调模型和视图。 9. **最佳实践** 为了保持代码的可维护性和可扩展性,应遵循一些最佳实践,比如将Java...
- `<form>`标签:定义一个表单,通过`action`属性指定表单数据提交的URL,`method`属性定义提交方式,通常为`GET`或`POST`。 - `<input>`标签:用于创建输入字段,例如文本框、密码框、复选框、单选按钮等,通过`...
Struts 框架中,数据在 Action 与 JSP 之间的传递是一种常见的需求。为了实现这种传递,Struts 提供了多种方式,本文将对这些方式进行总结。 方式一:通过 FormBean 实现数据传递 在 Struts 中,我们可以通过 ...
在Java Web开发中,JSP(JavaServer Pages)是...学习和实践这个简单的表单程序,有助于理解JSP的基本原理和实际应用,为进一步深入学习Java Web开发打下基础。通过不断实践和探索,你将能够构建更复杂的动态网站应用。
综上所述,"jsp表单和图片一起上传"涉及的主要知识点包括:JSP表单设计,Servlet处理POST请求,多部分数据解析(Apache Commons FileUpload库),文件保存到服务器,以及表单字段的提取和处理。这些技术是构建一个...
Java和JSP(JavaServer Pages)是Web开发中常用的两种技术。Java是一种广泛使用的后端编程语言,而JSP则是基于Java的动态网页技术。在这个“Java (Jsp) 制作简单的表单程序”中,我们将探讨如何利用这两者创建一个...
在提供的`test.java`和`test.jsp`文件中,你可以找到具体的实现细节。根据实际情况,可能还需要配置SSM框架的其他组件,如DispatcherServlet、ModelAndView、Dao和Service层等,以完成完整的请求处理流程。通过深入...
标题中的“一个Form数据拆分到不同的jsp中”是指在Web开发中,如何将一个大型的表单(Form)逻辑拆分成多个独立的JavaServer Pages(JSP)文件,以便更好地管理和维护页面结构。这种做法有助于提高代码的可读性和可...
本主题将深入探讨如何利用JSP和Servlet处理表单(form)元素的提交,以及在后台进行数据处理后再将结果显示出来。 首先,JSP是一种视图技术,它允许开发者在HTML页面中嵌入Java代码,用于生成动态内容。表单是HTML中...
在Web开发中,JavaServer Pages(JSP)和MySQL数据库的结合是常见的技术栈,用于构建动态、数据驱动的网站。本学习笔记将详细讲解如何使用JSP连接MySQL数据库,并创建一个简单的用户注册表单。 1. **JSP简介** JSP...
### Spring MVC Form表单的使用详解 #### 一、Spring MVC Form 表单的基本概念 在Web开发中,表单是实现用户与服务器之间交互的重要工具。Spring MVC框架提供了强大的表单支持,允许开发者轻松地处理HTTP请求中的...
本示例中的“jsp,servlet普通表单+文件上传”着重讲解如何结合这两种技术实现一个包含普通输入字段和文件上传功能的表单。 首先,`jsp`是一种服务器端脚本语言,它允许在HTML页面中嵌入Java代码,从而实现动态网页...