SSH开发注册&登录

目录

 

1.创建用户表

2.实体类

3.映射文件 

4. 相关类

4.1 dao层

4.2 service层

4.3 web层

5.配置文件


1.创建用户表

CREATE TABLE `sys_user` (
  `user_id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT '用户id',
  `user_code` varchar(32) NOT NULL COMMENT '用户账号',
  `user_name` varchar(64) NOT NULL COMMENT '用户名称',
  `user_password` varchar(32) NOT NULL COMMENT '用户密码',
  `user_state` char(1) NOT NULL COMMENT '1:正常,0:暂停',
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

2.实体类

/**
 * 用户的实体
 */
public class User {
	private Long user_id;
	private String user_code;
	private String user_name;
	private String user_password;
	private String user_state;
	public Long getUser_id() {
		return user_id;
	}
	public void setUser_id(Long user_id) {
		this.user_id = user_id;
	}
	public String getUser_code() {
		return user_code;
	}
	public void setUser_code(String user_code) {
		this.user_code = user_code;
	}
	public String getUser_name() {
		return user_name;
	}
	public void setUser_name(String user_name) {
		this.user_name = user_name;
	}
	public String getUser_password() {
		return user_password;
	}
	public void setUser_password(String user_password) {
		this.user_password = user_password;
	}
	public String getUser_state() {
		return user_state;
	}
	public void setUser_state(String user_state) {
		this.user_state = user_state;
	}
	
}

3.映射文件 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
	<class name="crm.domain.User" table="sys_user">
		<id name="user_id" column="user_id">
			<generator class="native"/>
		</id>
		
		<property name="user_code" column="user_code"/>
		<property name="user_name" column="user_name"/>
		<property name="user_password" column="user_password"/>
		<property name="user_state" column="user_state"/>
	</class>
</hibernate-mapping>

4. 相关类

4.1 dao层

public interface UserDao extends BaseDao<User> {

	User login(User user);    
}
public class UserDaoImpl extends BaseDaoImpl<User> implements UserDao {

	@Override
	//dao中根据用户名和密码查询用户
	public User login(User user) {
		List<User> list = (List<User>) this.getHibernateTemplate().find("from User where user_code = ? and user_password = ?", user.getUser_code(),user.getUser_password());
		if(list.size() > 0){
			return list.get(0);
		}
		return null;
	}
}

4.2 service层

public interface UserService {

	void regist(User user);

	User login(User user);

}
@Transactional //添加注解事务
public class UserServiceImpl implements UserService {

	// 注入DAO:
	private UserDao userDao;
	
	public void setUserDao(UserDao userDao) {
		this.userDao = userDao;
	}

	@Override
	// 业务层注册用户的方法
	public void regist(User user) {
		// 对密码进行加密处理:
		user.setUser_password(MD5Utils.md5(user.getUser_password()));
		user.setUser_state("1");
		// 调用DAO
		userDao.save(user);
	}

	//业务层用户登录
	@Override
	public User login(User user) {
		user.setUser_password(MD5Utils.md5(user.getUser_password()));
		return userDao.login(user);
	}

}

4.3 web层

public class UserAction extends ActionSupport implements ModelDriven<User> {
	// 模型驱动使用的对象
	private User user = new User();
	@Override
	public User getModel() {
		return user;
	}

	// 注入Service:
	private UserService userService;
	
	public void setUserService(UserService userService) {
		this.userService = userService;
	}

	/**
	 * 用户注册的方法:regist
	 */
	public String regist(){
		userService.regist(user);
		return LOGIN;
	}
	/**
	 * 用户登录
	 * @return
	 */
	public String login(){
		User exitUser = userService.login(user);
		if(exitUser == null){
			//登录失败
			this.addActionError("用户名或密码错误");
			return LOGIN;
		}else{
			ActionContext.getContext().getSession().put("exitUser", exitUser);
			return SUCCESS;
		}
		
	}

}

5.配置文件

applicationContext.xml

	<!-- 配置用户相关的类 -->
	<bean id="userDao" class="crm.dao.impl.UserDaoImpl">
	 	<property name="sessionFactory" ref="sessionFactory"/>
	</bean>
	<bean id="userService" class="crm.service.impl.UserServiceImpl">
		<property name="userDao" ref="userDao"></property>
	</bean>
	<bean id="userAction" class="crm.web.action.UserAction" scope="prototype">
		<property name="userService" ref="userService"/>
	</bean>

struts.xml

		<!-- 处理用户  -->
		<action name="user_*" class="userAction" method="{1}">
			<result name="success" type="redirect">/index.jsp</result>
			<interceptor-ref name="PrivilegeInterceptor">
				<param name="excludeMethods">regist,login</param>
			</interceptor-ref>
			<interceptor-ref name="defaultStack"></interceptor-ref>
		</action>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值