如何在前端输入多个同一对象的各个值,将这个对象的集合传入到java后台中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在前端输入多个同一对象的各个值,将这个对象的集合传入到java后台中相关的知识,希望对你有一定的参考价值。
比如说一行显示一个对象如user的属性值,通过<input type="text">进行对每个属性就行赋值,一行输入一组数据,生成一个user对象,多行就是一个存入多个user 的 List集合,然后怎么把list集合传入到后台?
参考技术A user.属性即可前端如下:
<input type="text" name="user.name">
<input type="text" name="user.name">
<input type="text" name="user.name">
后端action如下:
public class TestAction
private List<User> list;
public List<User> getUser()
return this.list
public void setLit(List<User> list)
this.list = list;
描述简略,如有疑问可追答追问
我是基于SSM框架的,这样的话可能将这个list集合传递到后台吗?
参考技术B 前端以id的方式传参,每个input设置不同的id,后台方法参数里面接收不就行了,具体怎么ssm框架下前端传参到后台,百度一下就ok多线程篇五:多个线程访问共享对象和数据的方式
1.多个线程共享一个变量实现方式1 : 将共享数据封装当另外一个对象中,然后将这个对象传递给各个Runnable对象
package com.test.shareData; /** * 多个线程共享一个变量:1.将共享数据封装当另外一个对象中,然后将这个对象传递给各个Runnable对象 * @author Administrator * */ public class MultiThreadShareData { public static void main(String[] args) { ShareData data1=new ShareData(); new Thread(new MyRunnable1(data1)).start(); new Thread(new MyRunnable2(data1)).start(); System.out.println("mian: "+data1.getCount()); } } class MyRunnable1 implements Runnable{ private ShareData data1; public MyRunnable1(ShareData data){ this.data1=data; } @Override public void run() { data1.increment(); System.out.println("MyRunnable1:"+data1.getCount()); } } class MyRunnable2 implements Runnable{ private ShareData data2; public MyRunnable2(ShareData data){ this.data2=data; } @Override public void run() { data2.increment(); System.out.println("MyRunnable2:"+data2.getCount()); } } class ShareData{ private int count=100; void increment(){ count++; } public int getCount() { return count; } }
2.多个线程共享一个变量实现方式2 : 将多个Runnable对象作为一个类的内部了,将共享变量作为外部类的成员变量
package com.test.shareData; /** * 多个线程共享一个变量:2.将多个Runnable对象作为一个类的内部了,将共享变量作为外部类的成员变量 * @author Administrator * */ public class MultiThreadShareData1 { static ShareData1 data1=new ShareData1(); public static void main(String[] args) { new Thread(new Runnable(){ @Override public void run() { data1.increment(); } }).start(); new Thread(new Runnable(){ @Override public void run() { data1.decrement(); } }).start(); System.out.println("mian: "+data1.getCount()); //mian: 102 } } class ShareData1{ private int count=100; void increment(){ count++; } void decrement(){ count--; } public int getCount() { return count; } }
3.测试题 : 4个线程,其中两个每次对j加1,另外两个每次对j减1
package com.test.shareData; /** * 4个线程,其中两个每次对j加1,另外两个每次对j减1 * @author Administrator * */ public class MultiThreadShareDataTest { private int j; public static void main(String[] args) { MultiThreadShareDataTest test=new MultiThreadShareDataTest(); IncTest in =test.new IncTest(); DecTest de =test.new DecTest(); for(int i=0;i<2;i++){ Thread t1=new Thread(in); t1.start(); t1=new Thread(de); t1.start(); } } private synchronized void inc(){ j++; System.out.println("Current Thread :"+Thread.currentThread().getName()+" j:"+j); } private synchronized void dec(){ j--; System.out.println("Current Thread :"+Thread.currentThread().getName()+" j:"+j); } class IncTest implements Runnable{ @Override public void run() { for(int i=0;i<100;i++){ inc(); } } } class DecTest implements Runnable{ @Override public void run() { for(int i=0;i<100;i++){ dec(); } } } }
以上是关于如何在前端输入多个同一对象的各个值,将这个对象的集合传入到java后台中的主要内容,如果未能解决你的问题,请参考以下文章