Chinaunix首页 | 论坛 | 博客
  • 博客访问: 252215
  • 博文数量: 22
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 518
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-13 12:03
文章分类

全部博文(22)

文章存档

2010年(1)

2009年(1)

2008年(20)

我的朋友

分类: Java

2008-11-21 10:21:46

续:

附:源代码

package com.snsoft.tutorial.domain;

 

/**

 * TUser generated by hbm2java

 */

public class TUser implements java.io.Serializable {

    private static final long serialVersionUID = -6591585528232763040L;

   

    private int id;

   

    private String username;

   

    private String password;

   

    private String emaillist;

   

    public TUser() {

    }

 

    public TUser(int id) {

       this.id = id;

    }

 

    public TUser(int id, String username, String password, String emaillist) {

       this.id = id;

       this.username = username;

       this.password = password;

       this.emaillist = emaillist;

    }

 

    public int getId() {

       return this.id;

    }

 

    public void setId(int id) {

       this.id = id;

    }

 

    public String getUsername() {

       return this.username;

    }

 

    public void setUsername(String username) {

       this.username = username;

    }

 

    public String getPassword() {

       return this.password;

    }

 

    public void setPassword(String password) {

       this.password = password;

    }

 

    public String getEmaillist() {

       return this.emaillist;

    }

 

    public void setEmaillist(String emaillist) {

       this.emaillist = emaillist;

    }

 

}

 

xml version="1.0"?>

DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

                                   "">

<hibernate-mapping>

 <class catalog="tutorial" name="com.snsoft.tutorial.domain.TUser"

  schema="dbo" table="T_USER">

  <id name="id" type="int">

   <column name="ID"/>

   <generator class="native"/>

  id>

  <property generated="never" lazy="false" name="username" type="string">

   <column length="50" name="USERNAME"/>

  property>

  <property generated="never" lazy="false" name="password" type="string">

   <column length="50" name="PASSWORD"/>

  property>

  <property generated="never" lazy="false" name="emaillist" type="string">

   <column length="500" name="EMAILLIST"/>

  property>

 class>

hibernate-mapping>

 

 

package com.snsoft.tutorial.dao;

 

import org.hibernate.SessionFactory;

 

/*

 * 这个接口定义了设置 SessionFactory 的方法,

 * DAO接口应当扩展这个接口

 */

public interface ISessionFactoryIoC {

   

    /**

     * 通过IoCDAO注入SessionFactory

     * @param sf

     */

    public void setSessionFactory(SessionFactory sf);

 

}

 

package com.snsoft.tutorial.dao;

 

import java.util.List;

import com.snsoft.tutorial.domain.TUser;

 

/**

 * 用户表DAO接口定义

 * @author Administrator

 *

 */

public interface IUserDAO extends ISessionFactoryIoC {

   

    /**

     *

     * @param user

     * @return

     */

    public void addUser(TUser user);

   

    /**

     *

     * @param user

     * @return

     */

    public void delUser(TUser user);

   

    /**

     *

     * @param user

     * @return

     */

    public void updateUser(TUser user);

   

    /**

     *

     * @return

     */

    public List getUsers();

   

    /**

     *

     * @param id

     * @return

     */

    public TUser getUserByID(int id);

   

    /**

     *

     * @param username

     * @return

     */

    public TUser getUserByName(String username);

   

}

 

package com.snsoft.tutorial.dao;

 

import java.util.List;

import org.hibernate.SessionFactory;

import org.springframework.orm.hibernate3.HibernateTemplate;

import com.snsoft.tutorial.domain.TUser;

 

public class UserDAOImpl implements IUserDAO {

   

    private HibernateTemplate hibernate=null;

 

    /**

     * Spring框架通过外部IoC注入

     * 然后创建 HibernateTemplate 对象

     * 数据库操作通过 HibernateTemplate 对象实现

     */

    public void setSessionFactory(SessionFactory sf) {

       this.hibernate=new HibernateTemplate();

       this.hibernate.setSessionFactory(sf);    

    }  

   

    /**

     * 添加用户

     */

    public void addUser(TUser user) {

       this.hibernate.save(user);

    }

 

    /**

     * 删除用户

     */

    public void delUser(TUser user) {

       this.hibernate.delete(user);

    }

   

    /**

     * 通过ID查找用户

     */

    @SuppressWarnings("unchecked")

    @Override

    public TUser getUserByID(int id) {

       List list=this.hibernate.find("from TUser as user where user.id=?"

              ,new Object[]{id});

      

       if(list!=null && list.size()>0){

           return (TUser)list.get(0);

       }     

       return null;

    }

   

    /**

     * 返回所有用户

     */

    @SuppressWarnings("unchecked")

    @Override

    public List getUsers() {

       List list=this.hibernate.find("from TUser");

      

       if(list!=null && list.size()>0){

           return list;

       }            

       return null;

    }

   

    /**

     * 更新用户

     */

    @Override

    public void updateUser(TUser user) {

       this.hibernate.update(user);

    }

 

    /**

     * 根据用户名查找

     */

    @SuppressWarnings("unchecked")

    public TUser getUserByName(String username) {

       List list=this.hibernate.find("from TUser as user where user.username=?"

              ,new Object[]{username});

      

       if(list!=null && list.size()>0){

           return (TUser)list.get(0);

       }            

       return null;

    }

 

}

 

阅读(1997) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~