java.lang.ClassCastException:java.lang.String 无法转换为
Posted
技术标签:
【中文标题】java.lang.ClassCastException:java.lang.String 无法转换为【英文标题】:java.lang.ClassCastException: java.lang.String cannot be cast to 【发布时间】:2013-07-25 06:31:34 【问题描述】:我在从数据库中检索数据时遇到此错误。
java.lang.String 无法转换为 com.rahul.model.MyUser] 的根本原因 java.lang.ClassCastException: java.lang.String 无法转换为 com.rahul.model.MyUser。
IntegraController.java
@RequestMapping("/users")
public ModelAndView users()
List<MyUser> p =dq3.usersA2();
for (MyUser p1 : p)
System.out.println(p1.getUsername());
ModelAndView m=new ModelAndView();
m.setViewName("users");
m.addObject("list",p);
return m;
道.java
@Transactional
@Repository
public class Dao
private Session session;
@Autowired
private MyUser u;
@Autowired
private Post p;
@Autowired
private Person per;
@Autowired
private Roles r;
@Autowired
private Answer a;
@Autowired
private HibernateTemplate ht;
public List<MyUser> usersA2()
List<MyUser> p2;
p2 = ht.executeFind(new HibernateCallback<Object>()
@Override
public Object doInHibernate(Session sn) throws HibernateException, SQLException
List<MyUser> p1 =sn.createQuery("SELECT E.username FROM MyUser E").list();
return p1;
);
return p2;
【问题讨论】:
请缩进你的代码。缩进/格式太可怕了! 为什么你的标题说错误是一个,而在问题中错误是不同的?请解决您的问题。 但其他人都这样做。 欢迎来到SO,请避免尖叫。另外:好的问题通常会得到很好的回应——一个好的问题包括一个正确的标题和格式整齐的来源......除此之外。 1.请记住,*** 需要保持发布问题的标准。 2.请不要尖叫。这些人花时间阅读您的问题并写下答案,这是在帮您一个忙。除此之外,欢迎! :) 【参考方案1】:您的查询如下所示:"SELECT E.username FROM MyUser E"
E.username
部分将返回用户名字符串列表。获取MyUser
对象应该是From MyUser
。
类似:
List<MyUser> p1 =sn.createQuery("FROM MyUser").list();
【讨论】:
List以上是关于java.lang.ClassCastException:java.lang.String 无法转换为的主要内容,如果未能解决你的问题,请参考以下文章