2 u014337927 u014337927 于 2015.07.01 20:29 提问

ssh中form向后台传值为null

jsp中form部分如下

用户名:
密码:
搜索:

下面这个表传回后台的值为空
Hibernate: select song0_.sid as sid3_, song0_.location as location3_, song0_.songname as songname3_ from Song song0_ where song0_.songname like '%null%'

这是查询语句
public List findByName(String songname) {
return us.find("from Song s where s.songname like '%" + songname + "%'");
}
想问问为什么form里的值传到后台变成null?

4个回答

bz151531223
bz151531223   2015.07.01 22:10
已采纳

jsp和action中的获取必须对应起来,不然获取不到,要么修改jsp中的name要么修改action中获取

u014337927
u014337927 谢谢。。
2 年多之前 回复
wk327571348
wk327571348   2015.07.01 20:35

songName是否有set,get方法?
jsp 是否写name了?
你给的信息太少了

u014337927
u014337927 在楼下。。开始form没粘上去
2 年多之前 回复
u014337927
u014337927   2015.07.01 21:20

songname有get()和set()

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class Song {
@Id
@GeneratedValue
private int sid;
private String songname;
private String location;

public int getId() {
    return sid;
}
public void setId(int id) {
    this.sid = sid;
}
public String getName() {
    return songname;
}
public void setName(String songname) {
    this.songname = songname;
}
public String getLocation() {
    return location;
}
public void setLocation(String location) {
    this.location = location;
}

}

jsp中有songname..粘没粘上去

用户名:
密码:
    <form action="search_search" method="post">
    <br/>搜索:<input name="songname" type="text">
    <br/><input type="submit" value="提交"/>
</form>
u014337927
u014337927 这个jsp里还有一个form,传了一个用户名和一个密码给后台,这个form是可以传值到后台的 但是下面这个songname传值就是null,不知道为什么
2 年多之前 回复
danielinbiti
danielinbiti   Ds   Rxr 2015.07.01 21:34
 <form action="search_search" method="post">
    <br/>搜索:<input name="songname" type="text">
    <br/><input type="submit" value="提交"/>
</form>
改一下,name属性和bean的set是一定要一致的,与私有变量名称不一定要一致。
<form action="search_search" method="post">
    <br/>搜索:<input name="name" type="text">
    <br/><input type="submit" value="提交"/>
</form>
u014337927
u014337927 总之谢谢了
2 年多之前 回复
u014337927
u014337927 回复danielinbiti: 好了,我之前傻了 设成getSongname和 setSongname就好了 但是好像不是要和bean里的一样,而是和action里的一样。
2 年多之前 回复
u014337927
u014337927 回复danielinbiti: 呃,我action和bean里都改成getsongname和setsongname了 但是还是null..
2 年多之前 回复
danielinbiti
danielinbiti 回复cd86254081: 你set是 setName,不是setSongName,得和set后面的名字一致,不是和参数或者私有属性一致
2 年多之前 回复
u014337927
u014337927 但是我的song里面的就是songname啊public void setName(String songname) { this.songname = songname; }。。。
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片