spring+mybatis后台整合登录实例

3 篇文章 0 订阅
3 篇文章 0 订阅

1.user类

/**
 * 
 */
package com.jit.test.model;

/**
 * @author sue wong
 * 2017年8月6日下午1:49:43
 * since v1.0
 */
public class User {

	private String username;
	private String password;
	/**
	 * @return the username
	 */
	public String getUsername() {
		return username;
	}
	/**
	 * @param username the username to set
	 */
	public void setUsername(String username) {
		this.username = username;
	}
	/**
	 * @return the password
	 */
	public String getPassword() {
		return password;
	}
	/**
	 * @param password the password to set
	 */
	public void setPassword(String password) {
		this.password = password;
	}
	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "User [username=" + username + ", password=" + password + "]";
	}
	
	
}

2.usermaper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jit.test.dao.UserDao">

	<!-- 设置一个返回对象 -->

	<resultMap type="com.jit.test.model.User" id="userListMap">
		<result column="username" property="username" />
		<result column="password" property="password" />
	</resultMap>

	<!-- 获取用户列表 -->

	<select id="getUser" resultMap="userListMap">
		select * from usertable
	</select>

	<insert id="saveUser" useGeneratedKeys="true" parameterType="com.jit.test.model.User">
		insert into usertable(username,password)values(#{username},#{password})

	</insert>

</mapper>

3.dao接口

/**
 * 
 */
package com.jit.test.dao;

import java.util.List;

import com.jit.test.model.User;

/**
 * @author sue wong
 * 2017年8月6日下午1:51:15
 * since v1.0
 */
public interface UserDao {

	
	//保存用户信息
	public boolean saveUser(User user);
	
	//登录查找用户信息
	public List<User> getUser();
	
}

4.spring-mybatis

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans  
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/tx
             http://www.springframework.org/schema/tx/spring-tx.xsd
                http://www.springframework.org/schema/aop 
                     http://www.springframework.org/schema/aop/spring-aop.xsd
                      http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!-- 自动扫描组件 -->
<context:component-scan base-package="com.jit.test"></context:component-scan>

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
 <property name="location" value="classpath:jdbc.properties" />  
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
 destroy-method="close">
<property name="driverClassName" value="${driver}"></property>
<property name="url" value="${url}"></property>
<property name="username" value="${username}"></property>
<property name="password" value="${password}"></property>
<!--初始化连接大小 -->
<property name="initialSize" value="${initialSize}"></property>
<!-- 连接池最大数量 -->
<property name="maxActive" value="${maxActive}"></property>
<!-- 连接池最大空闲 -->
<property name="maxIdle" value="${maxIdle}"></property>
<!-- 连接池最小空闲 -->
<property name="minIdle" value="${minIdle}"></property>
<!--  获取连接最大等待时间-->
<property name="maxWait" value="${maxWait}"></property>
</bean>


<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
	<property name="dataSource" ref="dataSource"></property>
	<property name="mapperLocations" value="classpath:com/jit/test/mapper/*.xml"></property>
</bean>

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.jit.test.dao"></property>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>

 <bean id="userdao" class="org.mybatis.spring.mapper.MapperFactoryBean">
	<property name="mapperInterface" value="com.jit.test.dao.UserDao"></property>
	<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>

</bean> 

<bean id="userservice" class="com.jit.test.servicedaoimpl.ServiceDaoImpl">
	<property name="userdao" ref="userdao"></property>
</bean>
</beans>

5.jdbc配置文件

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/homework
username=homework
password=123456

initialSize=0
maxActive=20
maxIdle=20
minIdle=1
maxWait=60000

6.web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>springMVCDemo</display-name>
  
    <!-- 监听spring上下文容器 -->  
    <listener>  
        <listener-class>  
            org.springframework.web.context.ContextLoaderListener  
        </listener-class>  
    </listener>  
       
    <!-- 加载spring的xml配置文件到 spring的上下文容器中 -->  
    <context-param>  
        <param-name>contextConfigLocation</param-name>  
        <param-value>classpath:spring-mybatis.xml</param-value>  
    </context-param>  
       
  <!-- 配置DispatchcerServlet -->
    <servlet>
        <servlet-name>springDispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     <!--    配置Spring mvc下的配置文件的位置和名称 -->
         <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springMVC.xml</param-value>
        </init-param> 
         <load-on-startup>1</load-on-startup> 
    </servlet>
    
     <servlet-mapping>
        <servlet-name>springDispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping> 
    
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

7.servicedao

/**
 * 
 */
package com.jit.test.servicedao;

import com.jit.test.model.User;

/**
 * @author sue wong
 * 2017年8月6日下午4:55:42
 * since v1.0
 */
public interface ServiceDao {

	public boolean validLogin(User user)throws Exception;
	
	public boolean saveUser(User user)throws Exception;
}
8.servicedaoimpl

/**
 * 
 */
package com.jit.test.servicedaoimpl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Service;

import com.jit.test.dao.UserDao;
import com.jit.test.model.User;
import com.jit.test.servicedao.ServiceDao;

/**
 * @author sue wong
 * 2017年8月6日下午4:56:57
 * since v1.0
 */
@Service("servicedao")
public class ServiceDaoImpl implements ServiceDao {
	
	@Resource
	private UserDao userdao;
	
	private boolean flag;

	/**
	 * @return the userdao
	 */
	public UserDao getUserdao() {
		return userdao;
	}




	/**
	 * @param userdao the userdao to set
	 */
	public void setUserdao(UserDao userdao) {
		this.userdao = userdao;
	}




	/* (non-Javadoc)
	 * @see com.jit.test.servicedao.ServiceDao#validLogin(com.jit.test.model.User)
	 */
	public boolean validLogin(User user) throws Exception {
		
		// TODO Auto-generated method stub
		/*ClassPathXmlApplicationContext ct = new ClassPathXmlApplicationContext("spring-mybatis.xml");
		UserDao us=(UserDao)ct.getBean("userdao");*/
		List<User> list=userdao.getUser();
		System.out.println(list.size());
		for(User u:list){
			System.out.println(u.toString());
			if(u.getUsername().equals(user.getUsername())&&u.getPassword().equals(user.getPassword())){
				flag=true;
			}else{
				flag= false;
			}
		}
		return flag;
	}
	
	





	/* (non-Javadoc)
	 * @see com.jit.test.servicedao.ServiceDao#saveUser(com.jit.test.model.User)
	 */
	@Override
	public boolean saveUser(User user) throws Exception {
		// TODO Auto-generated method stub
		if(userdao.saveUser(user)){
			return true;
		}else{
		return false;
		}
	}

}
9.测试类


/**
 * 
 */
package com.jit.test.dao;

import static org.junit.Assert.*;

import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.jit.test.model.User;
import com.jit.test.servicedao.ServiceDao;
import com.jit.test.servicedaoimpl.ServiceDaoImpl;

/**
 * @author sue wong
 * 2017年8月7日上午9:33:13
 * since v1.0
 */
public class UserDaoTest {

	/**
	 * Test method for {@link com.jit.test.dao.UserDao#getUser()}.
	 */
	@Test
	public void testGetUser() {
		//fail("Not yet implemented");
		ClassPathXmlApplicationContext ct = new ClassPathXmlApplicationContext("spring-mybatis.xml");  
			UserDao user = (UserDao) ct.getBean("userdao");
		ServiceDao sd=new ServiceDaoImpl();
			User u=new User();
			u.setUsername("00");
			u.setPassword("123");
		
			try {
				//System.out.println(user.validLogin(u));
				user.saveUser(u);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
	}

}

10.数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值