zoukankan      html  css  js  c++  java
  • ssm整合(方案一 引入jar)

    最近为了研究redis整合,基本都是ssm+redis 好吧 我是老古董了,以前都是ssi,那就折腾一下ssm先,具体方案:

    方案一:基本引入jar版、方案二:maven版(后续继续整)

    这篇主要是通过方案一,反正折腾jar折腾了好久。

    jar可以在我的百度云下载http://pan.baidu.com/s/1eRG5kky

    项目目录

     

    步骤如下:

    一:

    jdb.properties

    #JDBCdriver
    jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
    
    #JDBC
    jdbc.url=数据库服务器链接
    jdbc.username=数据库账号
    jdbc.password=数据库密码
    jdbc.publickey=公钥解密
    
    jdbc.dbcp.initialSize=10
    jdbc.dbcp.maxActive=500
    jdbc.dbcp.maxIdle=10
    jdbc.dbcp.minIdle=1
    jdbc.dbcp.maxWait=120000

    redis.properties用于redis的配置文件。ssm中暂时未用到可以忽略

    二:

     spring-source.xml

    <?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:aop="http://www.springframework.org/schema/aop"
        xmlns:context="http://www.springframework.org/schema/context" 
        xmlns:tx="http://www.springframework.org/schema/tx"
        xmlns:jee="http://www.springframework.org/schema/jee" 
        xmlns:jdbc="http://www.springframework.org/schema/jdbc"
        xmlns:cache="http://www.springframework.org/schema/cache"
        xmlns:jaxws="http://cxf.apache.org/jaxws"
        xmlns:jaxrs="http://cxf.apache.org/jaxrs"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
                         http://www.springframework.org/schema/beans/spring-beans.xsd
                         http://www.springframework.org/schema/tx
                         http://www.springframework.org/schema/tx/spring-tx.xsd
                         http://www.springframework.org/schema/context 
                         http://www.springframework.org/schema/context/spring-context.xsd
                         http://www.springframework.org/schema/aop
                         http://www.springframework.org/schema/aop/spring-aop.xsd
                         http://www.springframework.org/schema/jee
                         http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
                         http://www.springframework.org/schema/jdbc
                         http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
                         http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.2.xsd 
                         http://cxf.apache.org/jaxws
                         http://cxf.apache.org/schemas/jaxws.xsd
                         http://cxf.apache.org/jaxrs
                         http://cxf.apache.org/schemas/jaxrs.xsd"  default-autowire="byName" >
    
        <context:annotation-config />
        
        <!-- 扫描注解web整合时用 -->
        <context:component-scan base-package="com.tp.soft" />
        
        
        <context:property-placeholder location="classpath:*.properties"/>
        
        <!-- <bean id="jsonSerializer" class="com.tp.soft.base.redis.JsonRedisSeriaziler"/>  
        <bean id="userDao" class="com.tp.soft.daoRedis.impl.UserDaoImpl" />  -->
        
        
        <bean id="userSvc" class="com.tp.soft.service.impl.UserSvcImpl" />
        
    </beans>

    三:

    spring-mybatis.xml

    <?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:aop="http://www.springframework.org/schema/aop"
        xmlns:context="http://www.springframework.org/schema/context" 
        xmlns:tx="http://www.springframework.org/schema/tx"
        xmlns:jee="http://www.springframework.org/schema/jee" 
        xmlns:jdbc="http://www.springframework.org/schema/jdbc"
        xmlns:cache="http://www.springframework.org/schema/cache"
        xmlns:jaxws="http://cxf.apache.org/jaxws"
        xmlns:jaxrs="http://cxf.apache.org/jaxrs"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
                         http://www.springframework.org/schema/beans/spring-beans.xsd
                         http://www.springframework.org/schema/tx
                         http://www.springframework.org/schema/tx/spring-tx.xsd
                         http://www.springframework.org/schema/context 
                         http://www.springframework.org/schema/context/spring-context.xsd
                         http://www.springframework.org/schema/aop
                         http://www.springframework.org/schema/aop/spring-aop.xsd
                         http://www.springframework.org/schema/jee
                         http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
                         http://www.springframework.org/schema/jdbc
                         http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
                         http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.2.xsd 
                         http://cxf.apache.org/jaxws
                         http://cxf.apache.org/schemas/jaxws.xsd
                         http://cxf.apache.org/jaxrs
                         http://cxf.apache.org/schemas/jaxrs.xsd"  default-autowire="byName" >
    
        
        <!--Druid 连接池配置-->
        <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> 
            <!-- 基本属性 url、user、password -->
            <property name="url" value="${jdbc.url}" />
            <property name="username" value="${jdbc.username}" />
            <property name="password" value="${jdbc.password}" />
            <property name="filters" value="stat,config" />
             <property name="connectionProperties" value="config.decrypt=true;config.decrypt.key=${jdbc.publickey}" />
              
            <!-- 配置初始化大小、最小、最大 -->
            <property name="initialSize" value="1" />
            <property name="minIdle" value="1" /> 
            <property name="maxActive" value="40" />
         
            <!-- 配置获取连接等待超时的时间 -->
            <property name="maxWait" value="60000" />
         
            <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
            <property name="timeBetweenEvictionRunsMillis" value="60000" />
         
            <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
            <property name="minEvictableIdleTimeMillis" value="300000" />
          
            <property name="validationQuery" value="SELECT 'x' FROM DUAL" />
            <property name="testWhileIdle" value="true" />
            <property name="testOnBorrow" value="false" />
            <property name="testOnReturn" value="false" />
         
            <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
            <property name="poolPreparedStatements" value="true" />
            <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
         
            <!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 -->
            <!-- property name="filters" value="stat" /--> 
        </bean>
        
        <!-- 配置sqlSessionFactory -->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource"/>
            <property name="configLocation" value="classpath:mybatis/mybatis.xml"/>
        </bean>
        
        <!-- 扫描mapper -->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="com.tp.soft.dao"/>
            <!-- <property name="sqlSessionFactoryBeanName" ref="sqlSessionFactory" />   -->
            <property name="sqlSessionFactory" ref="sqlSessionFactory" />  
        </bean>
      
    </beans>

    四:

    spring-mybatis.xml

    <?xml version="1.0" encoding="UTF-8"?>  
    <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
    "http://mybatis.org/dtd/mybatis-3-config.dtd">  
    <configuration>  
       <!-- 配置映射类的别名 -->  
        <typeAliases> 
         <!-- 配置entity下的所有别名 别名首字母小写 -->
         <!-- <package name="com.tp.soft.entity"/> -->
         <typeAlias alias="User" type="com.tp.soft.entity.AuUser"/>
       </typeAliases>  
       
       <mappers>
           <mapper resource="com/tp/soft/mapping/UserMapper.xml"/>
       </mappers>  
    </configuration>  

    五、

    UserMapper.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.tp.soft.dao.UserMapper" >
        
       <select id="getUser" parameterType="int" resultType="User">
            select * from AU_USER where userid = #{id}
       </select>
        
    </mapper>

    六、

    实体类AuUser.java

    package com.tp.soft.entity;
    
    import java.io.Serializable;
    
    public class AuUser implements Serializable{
    
        /**
         * 
         */
        private static final long serialVersionUID = -1695973853274402680L;
        
        private int userid;
        
        private String login_name;
        
        private String login_pwd;
    
        
        public AuUser() {
            
        }
    
    
        public AuUser(int userid, String login_name, String login_pwd) {
            super();
            this.userid = userid;
            this.login_name = login_name;
            this.login_pwd = login_pwd;
        }
    
    
        public int getUserid() {
            return userid;
        }
    
    
        public void setUserid(int userid) {
            this.userid = userid;
        }
    
    
        public String getLogin_name() {
            return login_name;
        }
    
    
        public void setLogin_name(String login_name) {
            this.login_name = login_name;
        }
    
    
        public String getLogin_pwd() {
            return login_pwd;
        }
    
    
        public void setLogin_pwd(String login_pwd) {
            this.login_pwd = login_pwd;
        }
    
    
    }

    七:

    dao层

    UserMapper.java

    package com.tp.soft.dao;
    
    import com.tp.soft.entity.AuUser;
    
    public interface UserMapper {
        public AuUser getUser(int id);
    }

    八:

    业务层

    UserSvc.java

    package com.tp.soft.service;
    
    import com.tp.soft.entity.AuUser;
    
    public interface UserSvc {
        public AuUser getUser(int id);
    }

    UserSvcImpl.java

    package com.tp.soft.service.impl;
    
    import javax.annotation.Resource;
    
    import org.springframework.dao.DataAccessException;
    import org.springframework.stereotype.Service;
    
    import com.tp.soft.dao.UserMapper;
    import com.tp.soft.entity.AuUser;
    import com.tp.soft.service.UserSvc;
    
    @Service("userSvc")
    public class UserSvcImpl implements UserSvc{
    
        @Resource
        private UserMapper userMapper;
        
        @Override
        public AuUser getUser(int id) {
            AuUser user = null;
            try{
                user = userMapper.getUser(id);
            }catch (DataAccessException e) {
                System.out.println(e.getLocalizedMessage());
            }
            return user;
        }
    
        
    
    }

    九:

    junit测试

    package ssmTest;
    
    import javax.annotation.Resource;
    
    import org.apache.log4j.PropertyConfigurator;
    import org.junit.Before;
    import org.junit.Test;
    import org.springframework.test.context.ContextConfiguration;
    import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
    
    import com.tp.soft.entity.AuUser;
    import com.tp.soft.service.UserSvc;
    
    @ContextConfiguration(locations = {"classpath:/spring/spring-*.xml"})
    public class RedisZhTest extends AbstractJUnit4SpringContextTests{
        
        @Resource
        private UserSvc userSvc;
        
        @Before
        public void loadLog(){
            PropertyConfigurator.configure("config/log4j.properties");//加载.properties文件
        }
        
        @Test
        public void test01(){
            AuUser user = userSvc.getUser(21);
            System.out.println(user.getLogin_name());
        }
    }

    到此配置全部结束

    提别注意:

    UserMapper.xml必须与UserMapper.java dao接口名字一样 以及和<mapper namespace="com.tp.soft.dao.UserMapper" >匹配

  • 相关阅读:
    【HTTP】一、HTTP协议简介及其工作流程
    【总结】计算机网络常见问题
    【LeetCode】714、买卖股票的最佳时机含手续费
    【LeetCode】309、最佳买卖股票时机含冷冻期
    【LeetCode】188、买卖股票的最佳时机 IV
    【LeetCode】123、买卖股票的最佳时机 III
    【LeetCode】122、买卖股票的最佳时机 II
    【LeetCode】121、买卖股票的最佳时机
    windows搭建测试环境
    css 和常用快捷键
  • 原文地址:https://www.cnblogs.com/tplovejava/p/7146205.html
Copyright © 2011-2022 走看看