Spring框架,如何进行数据提交

有两部组成,后台java代码,和前台jsp代码

第一部份:java代码清单

package com.cwebs.app.MySQLPortlet;

import javax.portlet.ActionRequest;
import javax.portlet.ActionResponse;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.portlet.ModelAndView;

/**
 * Des
 *  如何进行数据提交
 * @author lijun
 * Env
 *  [1]Spring(portlet) 2.5.6
 * 
 * Ref
 * [1]spring 2.5 mvc 提交多行数据 到 Controller
 * http://hi.baidu.com/zuoboy/item/de7b52d456566e1c20e2508f
 */

@Controller
@RequestMapping("EDIT")
public class EditController {
	static Logger logger = Logger.getLogger(EditController.class.getName());
	
	@RequestMapping // default (action=list)
	public ModelAndView list(RenderRequest request,RenderResponse response
			) throws Exception{
		UserPreference up = (UserPreference)request.getPortletSession().getAttribute("up");
		//改为从数据库中取
		if(up==null)
			up = new UserPreference();
		
		//返回给视图
		ModelAndView mav = new ModelAndView("MySQLPortlet_Edit");
		mav.addObject("up",up);
		mav.addObject("msg","");
		
		return mav;
	}
    
	@RequestMapping(params = {"action=save"})
    public void save(ActionRequest request,
    		@ModelAttribute("up") UserPreference up,
    		ActionResponse response) 
	throws Exception {		
	    if(up!=null)
	    {
	    	//改为写数据库
      	    request.getPortletSession().setAttribute("up", up);
	    	logger.debug("up.getColumnWidths()=" + up.getColumnWidths());
	    }
	    
	    response.setRenderParameter("action", "list");
	}
}

第二部份:jsp代码清单

<%@page contentType="text/html;charset=utf-8" pageEncoding="utf-8"%>
<%@ include file="/WEB-INF/jsp/include.jsp" %>

<portlet:actionURL var="actionURL" />

<h3>偏好设置</h3>

<font color=#669999>${msg}</font>

<hr/>
<form:form action="${actionURL}" method="post" commandName="up">
   <input type="hidden" name="action" value="save"/>
   <table>
      <tr>
        <th>表格中每列的宽度</th>
        <td><form:input path="columnWidths" /></td>
      </tr>
      <tr>
        <td colspan="2">例如32,64表示共两列,第一列宽32像素,第二列宽64像素</td>
      </tr>      
      <tr>
        <td colspan="2">
           <input type="submit" value="保存"/>
        </td>
       </tr>
    </table>
</form:form>

<h3>Portlet URLs</h3>
<ul>
	<li><a href="<portlet:renderURL portletMode="view" />">View Mode</a>	
	<li><a href="<portlet:renderURL portletMode="edit" />">Edit Mode</a>
	<li><a href="<portlet:renderURL portletMode="help" />">Help Mode</a>
	<li><a href="<portlet:renderURL windowState="normal" />">Normal State</a>
	<li><a href="<portlet:renderURL windowState="maximized" />">Maximized State</a>
	<li><a href="<portlet:renderURL windowState="minimized" />">Minimized State</a>	
</ul>


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kagula086

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值