📄 userdaohibernate.java
字号:
package com.wish.jhk.dao.impl;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.wish.jhk.dao.UserDao;
import com.wish.jhk.entity.User;
import com.wish.jhk.util.HibernateSessionFactory;
public class UserDaoHibernate implements UserDao {
// 删除用户 id 需要删除的用户id
public void delete(Integer id) {
Session session = null;
Transaction trans = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
session.delete(session.get(User.class, id));
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
}
// 删除用户 user 需要删除的用户
public void delete(User user) {
Session session = null;
Transaction trans = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
session.delete(user);
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
}
// 查询全部用户 获得全部用户
@SuppressWarnings("unchecked")
public List<User> findAll() {
Session session = null;
Transaction trans = null;
List<User> users = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
String hql = "from User";
// select account from Account account
Query query = session.createQuery(hql);
users = query.list();
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
return users;
}
// 根据用户名,密码查找用户
// username 查询所需的用户名
// pass 查询所需的密码
// 对应的用户
@SuppressWarnings("unchecked")
public User findUserByNameAndPass(String username, String pass) {
Session session = null;
Transaction trans = null;
List<User> users = null;
User user = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
String hql = "from User user where user.username=:username and user.userpass = :userpass";
Query query = session.createQuery(hql);
users = query.setString("username", username).setString("userpass",
pass).list();
if (users.size() >= 1) {
user = users.get(0);
trans.commit();
return user;
}
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
return null;
}
// 根据id查找用户 需要查找的用户id
public User get(Integer id) {
Session session = null;
Transaction trans = null;
User user = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
user = (User) session.get(User.class, id);
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
return user;
}
// 增加用户 user 需要增加的用户
public void save(User user) {
Session session = null;
Transaction trans = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
session.save(user);
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
}
// 修改用户 user 需要修改的用户
public void update(User user) {
Session session = null;
Transaction trans = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
session.update(user);
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
}
@SuppressWarnings("unchecked")
public int get(String userName) {
Session session = null;
Transaction trans = null;
List<User> user = null;
try {
session = HibernateSessionFactory.getSession();
trans = session.beginTransaction();
String hql = "from User user where user.username=:username";
Query query = session.createQuery(hql);
user = query.setString("username", userName).list();
trans.commit();
} catch (Exception e) {
e.printStackTrace();
trans.rollback();
} finally {
session.close();
}
return user.size();
}
// public static void main(String args[]) {
// UserDaoHibernate u = new UserDaoHibernate();
// User user = u.findUserByNameAndPass("11", "tomcat");
// System.out.println(user.getUserId());
// System.out.println(user.getEmail());
// System.out.println(user.getUsername());
// System.out.println(user.getUserpass());
// List<User> users1 = u.findAll();
// for (User user1 : users1) {
// System.out.println(user1.getUsername());
// System.out.println(user1.getUserpass());
// System.out.println(user1.getEmail());
// }
// User user2 = u.get(1);
// System.out.println(user2.getUsername());
// }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -