在Java实体类get方法里面需要做一个判断,但是报空指针异常
publicclassMemberimplementsSerializable{@AutowiredprivateOrderAppMapperorderAppMapper...
public class Member implements Serializable {
@Autowired
private OrderAppMapper orderAppMapper;
public String getBuy_status() {
List<OrderApp> app_list = new ArrayList<OrderApp>();
app_list = orderAppMapper.selectOrderAppByUserName(this.username);//空指针异常
if(this.appList != null && appList.size() > 0 ){
if(app_list != null && app_list.size() > 0 ){
buy_status="已购买";
}else{
buy_status="已过期";
}
}else {
buy_status="未购买";
}
return buy_status;
}
}
username是实体类里的字段,我没粘贴出来
public interface OrderAppMapper {
void createOrderApp(OrderApp bean);
List<OrderApp> selectOrderAppByUserName(String username);
}
就是上面这样的,直接对应mybatis xml 里面的方法
OrderAppMapper.xml里面:
<select id="selectOrderAppByUserName" resultType="OrderApp" parameterType="string">
select * from orders_app where username = #{id} and endDate >= DATE_FORMAT(now(), '%Y-%m-%d')
</select> 展开
@Autowired
private OrderAppMapper orderAppMapper;
public String getBuy_status() {
List<OrderApp> app_list = new ArrayList<OrderApp>();
app_list = orderAppMapper.selectOrderAppByUserName(this.username);//空指针异常
if(this.appList != null && appList.size() > 0 ){
if(app_list != null && app_list.size() > 0 ){
buy_status="已购买";
}else{
buy_status="已过期";
}
}else {
buy_status="未购买";
}
return buy_status;
}
}
username是实体类里的字段,我没粘贴出来
public interface OrderAppMapper {
void createOrderApp(OrderApp bean);
List<OrderApp> selectOrderAppByUserName(String username);
}
就是上面这样的,直接对应mybatis xml 里面的方法
OrderAppMapper.xml里面:
<select id="selectOrderAppByUserName" resultType="OrderApp" parameterType="string">
select * from orders_app where username = #{id} and endDate >= DATE_FORMAT(now(), '%Y-%m-%d')
</select> 展开
3个回答
展开全部
我没有发现this.username 在哪里。。。
如果是你没贴完整代码,那就
查看USERNAME 是否为null, 主要是selectOrderAppByUserName中的处理
如果是你没贴完整代码,那就
查看USERNAME 是否为null, 主要是selectOrderAppByUserName中的处理
追问
username是另一个字段是有值的, selectOrderAppByUserName就是对应着Mybatis的Xml的,这个方法以前使用过,是没问题的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
orderAppMapper类的.selectOrderAppByUserName(String)方法看一哈
追问
public interface OrderAppMapper {
void createOrderApp(OrderApp bean);
List selectOrderAppByUserName(String username);
}
就是上面这样的,直接对应mybatis xml 里面的方法
追答
好像就是二楼说的那情况,你试试看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的username在哪里声明在哪里赋值,还有就是orderAppMapper在哪里注入赋值
追问
username也是这个实体类里面的 只是我没有粘贴,
@Autowired
private OrderAppMapper orderAppMapper;
这句就是自动注入,但是我不知道这样可不可以
追答
配置文件里写了注入吗,Spring配置文件里要指明Member类里的orderAppMapper来自哪个class注入
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询