java中,如图所示,在一个类中定义了一个Category(一个对象)的变量,如何在后台获取这个对象的值呢
4个回答
展开全部
可以在类里面加上get和set方法,get方法是给你来获取值的,set方法是给对象赋值的
举例
public class Flower {
private Integer fid;
private String fname;
private double fprice;
public Flower(){
}
public Flower(Integer fid,String fname,double fprice){
this.fid=fid;
this.fname=fname;
this.fprice=fprice;
}
public Integer getFid() {
return fid;
}
public void setFid(Integer fid) {
this.fid = fid;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public double getFprice() {
return fprice;
}
public void setFprice(double fprice) {
this.fprice = fprice;
}
public static void main(String[] args) {
Flower f1=new Flower();//创建一个对象,调用的是无参的构造函数,这时对象是空的,即没值
f1.setFid(1001);//通过set方法赋值
f1.setFname("水仙");
f1.setFprice(100);
System.out.println(f1.getFname());//通过get方法取值
Flower f2 = new Flower(1002,"玫瑰",200);//调用有参构造函数,直接赋值
System.out.println(f2.getFname());//通过get方法取值
}
}
举例
public class Flower {
private Integer fid;
private String fname;
private double fprice;
public Flower(){
}
public Flower(Integer fid,String fname,double fprice){
this.fid=fid;
this.fname=fname;
this.fprice=fprice;
}
public Integer getFid() {
return fid;
}
public void setFid(Integer fid) {
this.fid = fid;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public double getFprice() {
return fprice;
}
public void setFprice(double fprice) {
this.fprice = fprice;
}
public static void main(String[] args) {
Flower f1=new Flower();//创建一个对象,调用的是无参的构造函数,这时对象是空的,即没值
f1.setFid(1001);//通过set方法赋值
f1.setFname("水仙");
f1.setFprice(100);
System.out.println(f1.getFname());//通过get方法取值
Flower f2 = new Flower(1002,"玫瑰",200);//调用有参构造函数,直接赋值
System.out.println(f2.getFname());//通过get方法取值
}
}
更多追问追答
追问
在Flower类中我有写get,set方法的,public Category getFcategory() {return fcategory;},然后在后台用String fcategory = req.getParameter("fcategory");获取jsp页面中的值,这样获得的值是字符串,可是若要flower.setFcategory()将值存入数据库时,需是一个Category对象,该怎么把这个值封装进去呢?
追答
Category为什么要单独定义成一个类?里面有哪些属性?数据库里有哪些字段
既然是类型,可以直接在flower里定义成 String类型啊
展开全部
数据库操作也是从对象中取出数据来单个操作的,我看你追问的问题好像是要做一个从JSP到数据库的操作,举个简单的例子,普通的登陆验证,一般填写用户名和密码,JSP上的form有username,password两个字段,你在你的doPost方法中中通过
String username = request.getParameter("username");
String password = request.getParameter("password");
来获取了页面的输入,再通过setter方法注入到一个User对象中
UserBean bean = new UserBean();
bean.setUserName(username);
bean.setPassword(password);
再将这个bean对象传递给数据库操作类UserDao进行登陆判断
UserDao dao = new UserDao();
dao.login(bean);
在UserDao里面的操作实际上还是通过getter方法来取出bean里面的值进行验证:
String sql = "select count(1) from t_user where username = '"+bean.getUserName()+"' and password = '"+bean.getPassword()+"' and status = 1";
String username = request.getParameter("username");
String password = request.getParameter("password");
来获取了页面的输入,再通过setter方法注入到一个User对象中
UserBean bean = new UserBean();
bean.setUserName(username);
bean.setPassword(password);
再将这个bean对象传递给数据库操作类UserDao进行登陆判断
UserDao dao = new UserDao();
dao.login(bean);
在UserDao里面的操作实际上还是通过getter方法来取出bean里面的值进行验证:
String sql = "select count(1) from t_user where username = '"+bean.getUserName()+"' and password = '"+bean.getPassword()+"' and status = 1";
追问
在dao中
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改类中有getFcategory()方法吧,Flower f = new Flower();
f.getFcategory();就可以了,获取Category具体的属性值,接着get,即f.getFcategory().get....;
f.getFcategory();就可以了,获取Category具体的属性值,接着get,即f.getFcategory().get....;
追问
flower.setFcategory(flower.getFcategory().getCaname(fcategory));这样写会报错
追答
getCaname(),这个返回的不是Category对象啊,当然不行啊。
flower.setFcategory(fcategory);你只能这样set;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在类中写get。。set。。方法,通过对象的get方法,获得Category对象,Category对象里应该有值,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询