Java SpringMVC,制作一个按钮,点击后返回一个字符串值

Java SpringMVC,制作一个按钮,点击后返回一个字符串值,java,spring-mvc,Java,Spring Mvc,我对springMVC还比较陌生,目前我有一些代码,可以从jsp页面上的中获取输入,并根据输入创建不同的列表(只要输入正确的字符串)。我想把它转换成一个按钮,这样我就可以有四个按钮返回不同的字符串,例如“一”、“二”、“三”和“四”。这样就不需要用户输入任何内容 我看到有一个可用,但我不知道如何从中返回字符串值。我还研究了angularJS,发现可以调用onClick函数。但是,我也不知道要将它绑定到我的控制器中需要什么样的实现。我只是不确定如何实现这一点。任何帮助都将不胜感激。 这是我目前正

我对springMVC还比较陌生,目前我有一些代码,可以从jsp页面上的
中获取输入,并根据输入创建不同的列表(只要输入正确的字符串)。我想把它转换成一个按钮,这样我就可以有四个按钮返回不同的字符串,例如“一”、“二”、“三”和“四”。这样就不需要用户输入任何内容

我看到有一个
可用,但我不知道如何从中返回字符串值。我还研究了angularJS,发现可以调用onClick函数。但是,我也不知道要将它绑定到我的控制器中需要什么样的实现。我只是不确定如何实现这一点。任何帮助都将不胜感激。
这是我目前正在实施的:

<form:form commandName="input">
<label>Enter Value</label>
<form:input path="listType" class="inputbox" />
<br>
<input type="submit" class="button" value="Enter" />
</form:form>
@Controller
@SessionAttributes("input")
public class EventController {

@RequestMapping(value = "/event", method= RequestMethod.GET)
public String displayEvent (Model model) {
    AccessInput userInput = new AccessInput();
    model.addAttribute("input", userInput);
    System.out.println("finished get method");
    return "event";
}

@RequestMapping(value = "/event", method= RequestMethod.POST)

public String processEvent(@ModelAttribute("input")AccessInput userInput) {
    System.out.println(userInput.getListType());          //just so I know what value it has 
    return "redirect:results.html";
}
这是根据我传递给对象的字符串创建我的列表的控制器

@RestController
@SessionAttributes("input")
public class ReportController {

@RequestMapping(value="/events")
public List<Appliance> getEvents(@ModelAttribute("input")AccessInput userInput) {
    List<Appliance> events = new ArrayList<>();
    events = ProcessChoice.ofList(userInput.getListType());
    System.out.println(userInput.getListType());
    return events;
}
您有两个选择: 1.简短的推荐方式: 使用链接并将其设置为按钮,您可以直接调用控制器

 <a class="btn" href="/events?input=one">One</a>
 <a class="btn" href="/events?input=two">two</a>
 <a class="btn" href="/events?input=three">three</a>
 <a class="btn" href="/events?input=four">four</a>

二,。使用jQuery或JavaScript在表单中使用隐藏的输入字段根据单击的按钮提交表单

    <!-- Buttons with classes -->
    <div id="target">
      <button class="one">One</button>
      <button class="two">two</button>
      <button class="three">three</button>
      <button class="four">four</button>
    </div>


     <!-- Your form -->
     <form:form commandName="input" id="myForm">
      <input type="hidden" name="inputbox" id="inputbox" value=""/>
     </form:form>

     // You will have to do this for each of the button which is not a recommended way
     $( ".one" ).click(function() {
     $('input[name="inputbox"]').val("one");
     //var a = $('input[name="inputbox"]').val();
     //alert(a);
     $( "#myForm" ).submit();
     });

一个
二
三
四
//您必须为每个按钮执行此操作,这不是推荐的方法
$(“.one”)。单击(函数(){
$('input[name=“inputbox”]').val(“一”);
//var a=$('input[name=“inputbox”]')。val();
//警报(a);
$(“#我的表格”).submit();
});
您有两个选择: 1.简短的推荐方式: 使用链接并将其设置为按钮,您可以直接调用控制器

 <a class="btn" href="/events?input=one">One</a>
 <a class="btn" href="/events?input=two">two</a>
 <a class="btn" href="/events?input=three">three</a>
 <a class="btn" href="/events?input=four">four</a>

二,。使用jQuery或JavaScript在表单中使用隐藏的输入字段根据单击的按钮提交表单

    <!-- Buttons with classes -->
    <div id="target">
      <button class="one">One</button>
      <button class="two">two</button>
      <button class="three">three</button>
      <button class="four">four</button>
    </div>


     <!-- Your form -->
     <form:form commandName="input" id="myForm">
      <input type="hidden" name="inputbox" id="inputbox" value=""/>
     </form:form>

     // You will have to do this for each of the button which is not a recommended way
     $( ".one" ).click(function() {
     $('input[name="inputbox"]').val("one");
     //var a = $('input[name="inputbox"]').val();
     //alert(a);
     $( "#myForm" ).submit();
     });

一个
二
三
四
//您必须为每个按钮执行此操作,这不是推荐的方法
$(“.one”)。单击(函数(){
$('input[name=“inputbox”]').val(“一”);
//var a=$('input[name=“inputbox”]')。val();
//警报(a);
$(“#我的表格”).submit();
});

为什么不将字符串作为GET参数提取?i、 e.
/events?输入=一个
或两个或三个等,并链接按钮以转到正确的映射?为什么不选择字符串作为GET参数?i、 e.
/events?输入=一个
或两个或三个等,并链接按钮以转到正确的映射?您能否添加我必须对控制器进行的任何更改?我以前没有见过/处理过这个问题。您不需要在控制器中进行任何更改,只需将get调用中获得的相同链接放到href标记中的四个链接中,只需更改控制器中的值,即1/2/3/4或任何您需要的值。Like href=“/events?input=one”我收到一个404错误,未找到资源。为了处理来自URL的新输入参数,我是否不需要在某个地方进行更改?您是否可以添加我必须对控制器进行的任何更改?我以前没有见过/处理过这个问题。您不需要在控制器中进行任何更改,只需将get调用中获得的相同链接放到href标记中的四个链接中,只需更改控制器中的值,即1/2/3/4或任何您需要的值。Like href=“/events?input=one”我收到一个404错误,未找到资源。为了处理来自URL的新输入参数,我是否不需要在某个地方进行更改?