com.tc.helper.impl.spring.UserHelperSpringImpl.deltcuser(UserHelperSpringImpl.java:128)
??
这一行是什么?
??
这一行是什么?
解决方案 »
- 新手弄java 怎么办?
- 无能为力,只好求救了!!
- java解压rar|An unexpected error has been detected by Java Runtime Environment:
- 请教:org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch ...
- 需要一个能够任意位置插入图片的轻量级编辑器
- 非hibernate高手勿进
- J2ee建立DATAPOOL的问题
- 关于JNDI与反射的问题
- 存储在Blob字段中的图片怎么用jsp显示!!分不够再加!!
- 有状态SessionBean!
- hibernate batch_size的奇怪问题
- struts关于乱码奇怪问题
try {
System.out.println("deuser's getLoginid()"+teuser.getLoginid());
getHibernateTemplate().update(teuser);
return 1;
} catch (DataAccessException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
System.out.println("update exception!");
return 0;
}
}有exception但是
public DeUser findDeUserByPasswd(String loginid, String passwd)
{
Object[] values = {loginid, passwd};
try{
List l = getHibernateTemplate().find(LOADDE_BY_PASSWD, values);
if (l.size() == 0) {
return null;
}
else {
return (DeUser) l.get(0);
}
}
catch(DataAccessException e){
e.printStackTrace();
return null;
}
}
没有错误呀!
请你指正
private Session session;
private static final String LOADTE_BY_PASSWD =
"from TcUser teuser where teuser.loginid = ? and teuser.password = ?";
private static final String LOADDE_BY_PASSWD =
"from DeUser deuser where deuser.loginid = ? and deuser.password = ?";
public TcUser findUserByPasswd(String loginid, String passwd) {
Object[] values = {loginid, passwd};
try{
List l = getHibernateTemplate().find(LOADTE_BY_PASSWD, values);
if (l.size() == 0) {
return null;
}
else {
return (TcUser) l.get(0);
}
}
catch(DataAccessException e){
e.printStackTrace();
return null;
}
}
public DeUser findDeUserByPasswd(String loginid, String passwd)
{
Object[] values = {loginid, passwd};
try{
List l = getHibernateTemplate().find(LOADDE_BY_PASSWD, values);
if (l.size() == 0) {
return null;
}
else {
return (DeUser) l.get(0);
}
}
catch(DataAccessException e){
e.printStackTrace();
return null;
}
}
public int update(DeUser deuser) {
try {
System.out.println("deuser's getLoginid()"+deuser.getLoginid());
getHibernateTemplate().update(deuser);
return 1;
} catch (DataAccessException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
System.out.println("update exception!");
return 0;
}
} public int update(TcUser teuser) {
try {
System.out.println("deuser's getLoginid()"+teuser.getLoginid());
getHibernateTemplate().update(teuser);
return 1;
} catch (DataAccessException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
System.out.println("update exception!");
return 0;
}
}
/* (非 Javadoc)
* @see com.tc.helper.UserHelper#update(com.tc.view.DeUser)
*/
/* (非 Javadoc)
* @see com.tc.helper.UserHelper#teuserList()
*/
/* (非 Javadoc)
* @see com.tc.helper.UserHelper#teuserListByLoginid(java.lang.String, java.lang.String)
*/
public int addde(DeUser deuser)
{ System.out.println("addde addde addde addde+++++here++++++");
getHibernateTemplate().save(deuser);
return 1;
}
/* (非 Javadoc)
* @see com.tc.helper.UserHelper#deltcuser(java.lang.String, java.lang.String)
*/
public int deltcuser(String loginid, String password) {
try{
Object[] values = {loginid, password};
Type[] types={new StringType(),new StringType()};
System.out.println("delete teuser here! teuser's loginid is"+loginid);
getHibernateTemplate().delete(LOADTE_BY_PASSWD,values,types);
return 0;}
catch(NullPointerException e){
e.printStackTrace();
System.out.println("this is the NullPointerException!");
return 1;
}
}
}
只有find()没有NullPointerException
还有
把UserHelperSpringImpl的全部代码贴出来,不然看不到你的128行是什么
(UserHelperSpringImpl.java:128)
import com.tc.view.DeUser;/**
* @author poley
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public interface UserHelper {
public TcUser findUserByPasswd(String loginid, String passwd);
public DeUser findDeUserByPasswd(String loginid,String passwd);
public int update(DeUser deuser);
public int addde(DeUser deuser);
public int update(TcUser teuser);
public int deltcuser(String loginid,String password);
}
错在getHibernateTemplate().update(teuser);错
getHibernateTemplate().delete(LOADTE_BY_PASSWD,values,types);错System.out.println("deuser's getLoginid()"+teuser.getLoginid());//这里还可以获取结果的还正确
getHibernateTemplate().update(teuser);错
我可以将所有的代码发给你
这个值是空的
你可以打印一下看看
package com.tc.helper.impl.spring;import java.util.List;
import net.sf.hibernate.Session;
import net.sf.hibernate.type.*;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate.support.HibernateDaoSupport;
import com.tc.helper.UserHelper;
import com.tc.view.TcUser;
import com.tc.view.DeUser;
和XML文件有没有关系
那为什么find()用来登陆操作行呢!
不也调用了getHibernateTemplate()?
catch(NullPointerException e){
e.printStackTrace();
System.out.println("lone lone lone lone lone lone!");
if(getHibernateTemplate()==null)
System.out.println("this is the NullPointerException!");
//在控制台被输出
return 1;
}
}
然后你的服务类有没有注入sessionfactory ...
还有一个建议,像update 的方法,根本没有必要要写在这儿,应该由服务类来完成.
在action
UserHelper helper=new UserHelperSpringImpl ();
虽然他可以执行update 等操作但并没有获取bean的信息
改为
UserHelper helper=getUserHelper()(父类);
protected UserHelper getUserHelper(){
return ServiceLocatorFactory.getServiceLocator().getUserHelper()
}
public class ServiceLocatorSpringImpl implements ServiceLocator {
private static ServiceLocatorSpringImpl sl = new ServiceLocatorSpringImpl(); public static ServiceLocator newInstance()
{
return sl;
} private BeanFactory getFactory()
{
return SpringStrutsPlugin.getBeanFactory();
//BeanFactory实现了接口和实现的分离
}
public UserHelper getUserHelper()
{
return (UserHelper)getFactory().getBean("user");
}
还有一个建议,像update 的方法,根本没有必要要写在这儿,应该由服务类来完成.
我想只要在引用实例;应用接口分离的方法,我想helper也是Dao
像update 的方法,根本没有必要要写在这儿,应该由服务类来完成.可以说的具体一点吗!
}最终实现
还有问题: