struts2 获取前台数据的三种方式:
1.使用Action的属性
2.使用DomainModel(域模型,用JavaBean 做action的属性)
3.使用ModelDriven(体现MVC思想)
一:使用Action的属性接受参数
方法是,在对应的login.action中设置两个String变量,变量名为username,password.(变量名可以随便取), 然后使用get,set方法。Action会调用setXXX方法来获取值。
注:当属性为public 时,可以不使用get,set方法;当为private时,必须有get,set方法.
jsp:
<s:form name="form1" action="login">
<s:textfield name="username" label="username"></s:textfield>
<s:password name="password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action中:
private String username;
private String password;
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 execute() {
if (!username.equals("admin")) {
super.addFieldError("username", "用户名错误!");
return ERROR;
}
if (!password.equals("001")) {
super.addFieldError("password", "密码错误!");
return ERROR;
}
}
}
public void validate(){
System.out.println("----------username="+username+"-----password="+password+"----------------");
if(username==null || username.length()==0){
super.addActionError("用户名不能为空");
}
if(password==null || password.length()==0){
super.addActionError("密码不能为空");
}
}
二:使用DomainModel
struts2 使用DomainModel 来获取前台参数 在Action中,设置一个对象来接收前台参数,传参时参数变量为类名+变量名一一对应;
jsp:
<s:form name="form1" action="login">
<s:textfield name="user.username" label="username"></s:textfield>
<s:password name="user.password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action:
private User user;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String execute() {
if(user==null){
System.out.println("--------no user-------------");
return ERROR;
}else{
System.out.println("username:"+user.getUsername());
System.out.println("password:"+user.getPassword());
return SUCCESS;
}
}
public void validate(){
//TODO
}
三:使用ModelDriven
方法是实现ModelDriven借口,传参直接使用对象的属性为变量,必须new一个新的对象
jsp:
<s:form name="form1" action="login">
<s:textfield name="username" label="username"></s:textfield>
<s:password name="password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action:
private User user=new User();
public User getModel() {
return user;
}
public String execute() {
if(user==null){
System.out.println("--------no user-------------");
return ERROR;
}else{
System.out.println("username:"+user.getUsername());
System.out.println("password:"+user.getPassword());
return SUCCESS;
}
}
public void validate(){
//TODO
}
1.使用Action的属性
2.使用DomainModel(域模型,用JavaBean 做action的属性)
3.使用ModelDriven(体现MVC思想)
一:使用Action的属性接受参数
方法是,在对应的login.action中设置两个String变量,变量名为username,password.(变量名可以随便取), 然后使用get,set方法。Action会调用setXXX方法来获取值。
注:当属性为public 时,可以不使用get,set方法;当为private时,必须有get,set方法.
jsp:
<s:form name="form1" action="login">
<s:textfield name="username" label="username"></s:textfield>
<s:password name="password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action中:
private String username;
private String password;
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 execute() {
if (!username.equals("admin")) {
super.addFieldError("username", "用户名错误!");
return ERROR;
}
if (!password.equals("001")) {
super.addFieldError("password", "密码错误!");
return ERROR;
}
}
}
public void validate(){
System.out.println("----------username="+username+"-----password="+password+"----------------");
if(username==null || username.length()==0){
super.addActionError("用户名不能为空");
}
if(password==null || password.length()==0){
super.addActionError("密码不能为空");
}
}
二:使用DomainModel
struts2 使用DomainModel 来获取前台参数 在Action中,设置一个对象来接收前台参数,传参时参数变量为类名+变量名一一对应;
jsp:
<s:form name="form1" action="login">
<s:textfield name="user.username" label="username"></s:textfield>
<s:password name="user.password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action:
private User user;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public String execute() {
if(user==null){
System.out.println("--------no user-------------");
return ERROR;
}else{
System.out.println("username:"+user.getUsername());
System.out.println("password:"+user.getPassword());
return SUCCESS;
}
}
public void validate(){
//TODO
}
三:使用ModelDriven
方法是实现ModelDriven借口,传参直接使用对象的属性为变量,必须new一个新的对象
jsp:
<s:form name="form1" action="login">
<s:textfield name="username" label="username"></s:textfield>
<s:password name="password" label="password"></s:password>
<s:submit label="submit"></s:submit>
</s:form>
<s:actionerror />
Action:
private User user=new User();
public User getModel() {
return user;
}
public String execute() {
if(user==null){
System.out.println("--------no user-------------");
return ERROR;
}else{
System.out.println("username:"+user.getUsername());
System.out.println("password:"+user.getPassword());
return SUCCESS;
}
}
public void validate(){
//TODO
}
发表评论
-
Java 模拟Interceptor 过程
2015-09-29 16:25 709Java,用普通类 模拟Interceptor 过程 -
java 关闭其他应用程序或重启机器
2014-06-12 08:49 1473public static Process performCo ... -
mybatis in action
2014-02-25 15:01 1450mybatis实战教程(mybatis in action) ... -
java 创建文件夹和文件
2014-01-06 13:22 1025一:判断文件夹是否存在,不存在则创建 String fileP ... -
spring 发送邮件
2013-09-25 16:12 769Spring mail 发送邮件 一:添加mail jar 包 ... -
Spring 定时器 quartz
2013-09-22 15:36 932spring quartz 定时执行任务(SSH) 配置文件: ... -
java 读取硬件信息
2013-09-05 15:33 1100java 读取计算机信息: 机器名、CPU、内存使用率、IP ... -
java 连接sqlite数据库
2013-09-04 17:22 1405一:首先 添加jar包 二: import java.sql. ... -
java 打包jar 成exe 并动态绑定jre
2013-09-04 17:13 1181转: http://www.doc88.com/p-18569 ... -
Java extends 多态
2013-06-21 16:30 964class A { public int i = 1; ... -
Java GUI(图形用户界面) 布局管理器
2013-04-16 17:03 1143java 图形用户界面布局管理器 -
MyEclipse发布Java应用程序
2013-03-29 11:48 8741、首先:我们使用MyEclipse导出Java应用程序的Ja ... -
基于UDP协议的网络编程(使用DatagramSocket发送接收数据)
2013-03-01 14:21 1625一:UDP服务器端 package socketServer; ... -
MyEclipse 配置Tomcat 服务器
2013-01-31 14:11 1102一:首先安装JDK和Tomcat 二:打开MyEclipse, ... -
Hibernate 动态添加数据库(数据库信息不固定)
2012-11-03 09:56 1438上篇文章利用spring来连接多个数据库并进行切换数据源, ... -
SSH 连接多个数据库并且动态切换
2012-11-03 09:35 3392在项目中,有时遇到连接多个数据库的情况,并且根据用户的操 ... -
JavaEE Hibernate 分页查询 语句
2012-06-28 11:01 1583//计算总记录数 public int getTotalRo ...
相关推荐
1.S2SH框架的概念和特点:S2SH框架是指Struts2、Spring、Hibernate三个轻量级框架的组合,具有高效、灵活、可扩展等特点。 2.旅游网站的设计和实现:旅游网站的设计和实现需要考虑到用户体验、系统性能、数据安全等...
本文将深入探讨一个基于S2SH(Struts2 + Spring + Hibernate)框架构建的网上银行系统,其核心功能涵盖开户、账户管理、交易操作以及客户服务等多个方面。 首先,我们来看系统的后台管理部分。后台功能主要服务于...
JAVAEE5课程设计旨在通过构建一个基于S2SH(Struts2、Spring、Hibernate)框架的电子商城系统,让学生深入理解和实践企业级应用开发的技术和方法。 2. 设计目的与任务 本次设计的主要目标是熟练掌握Java EE技术栈,...
Spring 是一个轻量级的 Java 应用框架,提供了一种更为简单的方式来配置和管理应用中的对象。 - **依赖注入(DI)**:通过 DI,可以将对象的依赖关系交给 Spring 容器来管理,简化了编码工作。 - **面向切面编程...
2.本程序为闲暇之余改写,暂时定为(1),在原来struts1+jpa+spring的基础上转为struts2+hibernate+spring版本; 3.因为是抽时间写的,所以不完善,问题是肯定存在的,望大家见谅; 4.目前只写了一个后台的产品管理...
项目描述 这是一个 某某大学的 校园网失物招领的项目,分享出来,希望能让更多新手 有学习的地方,共同进步 本来,前台 风格,还是挺清新的,保密起见,就给他...spring+struts2+hibernate+c3p0+struts-tags+jquery
本教程主要讲述如何利用Struts2,Hibernate,Spring架构来构建企业级应用解决方案,前台用ExtJS展现主要分为两部分完成 第一部分介绍电子商业汇票系统业务。 第二部分,将实际应用(某银行-电子商业汇票系统)为例,...
1. S2SH技术:S2SH(Struts2+Spring+Hibernate)是一种基于Java的Web应用程序开发框架,提供了一个强大且灵活的开发环境。S2SH技术可以帮助开发者快速构建高性能、可扩展的Web应用程序。 2. JSP技术:JSP(Java ...
s2sh博客项目,JSP采用JSTL,struts标签包含源码与程序截图,采用Junite进行单元测试,后台包含博文管理,博文分类管理,用户管理,评论管理等模块,前台包含用户博文信息显示列表,博文查看,评论等功能。...
S2SH是Struts2、Spring和Hibernate三大开源框架的组合,广泛应用于企业级Web应用开发。这个项目可能是为了帮助学员理解并掌握这些框架的集成使用,提升他们的实际开发能力。 【描述】提到的“前台的项目源码”是指...
1、使用技术 struts2 + hibernate + spring + dwr 2、开发环境 tomcat6.0 + jdk1.5 + eclipse + MySQL5.0 3、根据你的需要开放自主交易和寄售交易 4、在线订单即时提醒,让你更快,更准确的发货 5、整合易宝最新...
该系统采用Java开源框架S2SH(Struts2、Hibernate、Spring),包括前台用户和后台管理员两部分,实现了使用单位通过网络对电梯检验进行报检的功能,业务受理人员在网上对报检申请进行审核,通过审核后用户便可按照...
【基于SSH的网络聊天室设计】是一个典型的Java Web应用程序,主要使用了Struts2、Spring和Hibernate这三种技术,简称S2SH。该系统采用B/S架构,即浏览器/服务器模式,用户通过浏览器即可访问并使用聊天功能。下面将...
s2sh主流框架博客实例项目,包含源码(博客管理前台与后台,有少许bug,欢迎指正,适合ssh入门级项目),测试(使用Junite单元测试)与式样说明书一体,由于本人只能上传20M,三大框架是架包就20多M,所以,架包就...
SSH2 集成框架是 Struts2、Spring 和 Hibernate 三种技术的有机融合,目前是应用最广泛的 JavaEE 架构。Struts2 负责提供 MVC 模型,将界面、业务逻辑和数据分离,并提供一个高可扩展的架构。Spring 作为核心,向上...
- **框架技术**:熟练掌握Struts2、Hibernate、Spring等开源框架,并能够使用S2SH进行大型项目开发。 - **数据库技术**:熟练使用标准SQL语句,熟悉Oracle、MySQL、SQL Server 2005数据库。 - **前端技术**:熟练...