spring mvc 怎么在后台接收到页面上传来的值

atvwei 2012-08-21 09:38:53
index.jsp

<%@ page language="java" contentType="text/html; charset=Utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>欢迎</h1>
<br />
<a href="helloWorld.do">hello</a>
<br/>
<a href="login.do">login</a>

<form action="login.do" method="get">
<input type="text" value="ddddd" name="daa"/>
<input type="submit" value="试试"/>
</form>
</body>
</html>


web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>springMVC</display-name>

<!--配置Sring MVC的核心控制器DispatcherServlet -->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>


dispatcher-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<bean id="localeResolver"
class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver">
</bean>

<!--配置控制器的映射 -->
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="helloWorld.do" >helloWorld</prop>
<prop key="login.do">login</prop>
</props>
</property>
</bean>

<bean id="login" class="com.examp.HelloWorldAction">
<property name="helloWorld">
<value>Hello welcome Login!</value>
</property>
<property name="viewPage">
<value>sayHello.jsp</value>
</property>
</bean>

<!--指定控制器的实现类,并且配置其参数的值 -->
<bean id="helloWorld" class="com.examp.HelloWorldAction">
<property name="helloWorld">
<value>Hello Spring World!</value>
</property>
<property name="viewPage">
<value>sayHello.jsp</value>
</property>
</bean>
</beans>


HelloWorldAction.java
package com.examp;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

public class HelloWorldAction implements Controller{

private String helloWorld; //该属性用于获取配置文件中的helloWorld属性

private String viewPage; //用于获取配置文件中的viewPage属性

private String daa;

public String getDaa() {
return daa;
}

public void setDaa(String daa) {
this.daa = daa;
}

@Override
public ModelAndView handleRequest(HttpServletRequest arg0,
HttpServletResponse arg1) throws Exception {
Map<String,String> modal = new HashMap<String,String>();
modal.put("helloWorld", getHelloWorld());
modal.put("daa", getDaa());
System.out.println(daa);
return new ModelAndView(getViewPage(),modal);
}

public String getHelloWorld() {
return helloWorld;
}

public void setHelloWorld(String helloWorld) {
this.helloWorld = helloWorld;
}

public String getViewPage() {
return viewPage;
}

public void setViewPage(String viewPage) {
this.viewPage = viewPage;
}
}

点击页面上才login按钮把文本框里面的值赋给HelloWorldAction.java中的daa变量怎么弄?
...全文
4327 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
atvwei 2012-08-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

引用 3 楼 的回复:

引用 1 楼 的回复:

handleRequest(HttpServletRequest arg0,HttpServletResponse arg1)

不是有 HttpServletRequest 吗

直接 arg0.getParameter("daa") 就获得了

然后你的登录页面,点击登录连接是直接打开helloWorld.do所以……
[/Quote]

是的可以获得,感谢。
cscript 2012-08-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 1 楼 的回复:

handleRequest(HttpServletRequest arg0,HttpServletResponse arg1)

不是有 HttpServletRequest 吗

直接 arg0.getParameter("daa") 就获得了

然后你的登录页面,点击登录连接是直接打开helloWorld.do所以页面上的表单是没有提交的
HT……
[/Quote]

恩 那你用 arg0.getParameter("daa") 可以获得参数?
atvwei 2012-08-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

handleRequest(HttpServletRequest arg0,HttpServletResponse arg1)

不是有 HttpServletRequest 吗

直接 arg0.getParameter("daa") 就获得了

然后你的登录页面,点击登录连接是直接打开helloWorld.do所以页面上的表单是没有提交的
HTML code

<a hr……
[/Quote]

<form action="login.do" method="post">
<input type="text" value="ddddd" name="daa"/>
<input type="submit" value="试试"/>
</form>
其实我点击的“试试”按钮,表单已经提交。
cscript 2012-08-21
  • 打赏
  • 举报
回复
我的回复怎么上不来?
cscript 2012-08-21
  • 打赏
  • 举报
回复
handleRequest(HttpServletRequest arg0,HttpServletResponse arg1)

不是有 HttpServletRequest 吗

直接 arg0.getParameter("daa") 就获得了

然后你的登录页面,点击登录连接是直接打开helloWorld.do所以页面上的表单是没有提交的

<a href="helloWorld.do">hello</a>


可以改成,点击登录的时候使表单提交


<body>
<h1>欢迎</h1>
<br />
<a href="helloWorld.do">hello</a>
<br/>
<a href="javascript:void(0)" onclick="document.forms[0].submit()">login</a>

<form action="login.do" method="post">
<input type="text" value="ddddd" name="daa"/>
<input type="submit" value="试试"/>
</form>
</body>

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧