zoukankan      html  css  js  c++  java
  • ssm小小整合

    ssm整合:

    首先是创建数据库:

    CREATE TABLE `user` (
      `id` int(20) NOT NULL,
      `username` varchar(255) NOT NULL,
      `password` varchar(255) NOT NULL
    ) ;
    
    ALTER TABLE `user`
      ADD PRIMARY KEY (`id`);
    
    
    ALTER TABLE `user`
      MODIFY `id` int(20) NOT NULL AUTO_INCREMENT;

    插入一条测试数据: 

    在me中创建一个新的web工程

     springmvc的基本jar

    mybatis基本jar

    mybatis-spring整合jar

     工程目录:

     MyEclipse可以自动导入jar

    mybatis的jar还需要自己手动导入到lib文件中

    有些配置文件是系统自动生成

    无须追求一致

     

    lib文件夹

    基于mappe开发

    1.spring和mybatis的整合:

     SqlMapConfig.xml

     此时可以根据自己的需要去设置<setting>......

    根据自己开发的需求

    <?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>
     
         
         <!-- 加载 映射文件 -->
         <mappers>
               <package name="com.test.mapper"/>
         </mappers>
    </configuration>

     mapper和java文件需要在同一个目录(mybatis知识)

     applicationContext.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:p="http://www.springframework.org/schema/p"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:jdbc="http://www.springframework.org/schema/jdbc"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xmlns:util="http://www.springframework.org/schema/util"
        xsi:schemaLocation="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.1.xsd
            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd
            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.1.xsd">
    
    
    <!-- 加载配置文件 -->
    <context:property-placeholder location="classpath:db.properties"/>
    
    <!-- 数据源 -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
             <property name="driverClassName" value="${jdbc.driver}" />
               <property name="url" value="${jdbc.url}" />
               <property name="username" value="${jdbc.username}" />
               <property name="password" value="${jdbc.password}" />
               <property name="maxActive" value="10" />
               <property name="maxIdle" value="5" />
    </bean>
    
    
    
    <!-- 配置sqlSessinFactory -->
         <!-- org.mybatis.spring.SqlSessionFactoryBean -->
         <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
               <!-- 加载mybatis的配置文件 -->
               <property name="configLocation" value="mybatis/SqlMapConfig.xml" />
               <!-- 数据源 -->
               <property name="dataSource" ref="dataSource" />
         </bean>
    
    
    <!-- mapper配置
         MapperFactoryBean:根据mapper接口生成代理对象
    -->
         <!-- mapperInterface指定mapper接口 -->
         <bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
               <property name="mapperInterface" value="com.test.mapper.UserMapper"/>
               <property name="sqlSessionFactory" ref="sqlSessionFactory"/>
         </bean>
    
    </beans>

     此时的整合基本结束

    整合测试:

    UserMapper.java

    public interface UserMapper {
             //根据id查询用户信息
             public User findUserById(int id) throws Exception;
             public List<User> findUserAll() throws Exception;
    }

     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.test.mapper.UserMapper">
         <select id="findUserById" parameterType="int" resultType="com.test.pojo.User">
               SELECT * FROM USER WHERE id=#{value}
         </select>
         <select id="findUserAll" parameterType="int" resultType="com.test.pojo.User">
               SELECT * FROM USER 
         </select>
    </mapper>

    测试:

    public class test {
    
        public static void main(String[] args) throws Exception {
            
            
              ApplicationContext app = new ClassPathXmlApplicationContext("spring/applicationContext.xml");
               
                       UserMapper user = (UserMapper) app.getBean("userMapper");
                       User u = user.findUserById(1);
                       System.out.println(u);
        }
    }
    DEBUG [main] - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6b81ce95]
    DEBUG [main] - Returning JDBC Connection to DataSource
    User [id=1, username=user, password=1234]

    此时数据是可以成功从数据库中查询!

    2.关于web网页实现测试

    配置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
    " version="3.1"> <!-- 配置DispatcherServlet --> <servlet> <servlet-name>springDispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <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.jsp</welcome-file> </welcome-file-list> </web-app>

    基本的配置也就是 这些了,其他的根据自己项目的需求去设置。

    配置springmvc.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:p="http://www.springframework.org/schema/p"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:jdbc="http://www.springframework.org/schema/jdbc"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xmlns:util="http://www.springframework.org/schema/util"
        xsi:schemaLocation="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.1.xsd
            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd
            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.1.xsd">
    
    <!-- 配置自动扫描的包 -->
    <context:component-scan base-package="com.test"></context:component-scan>
    <!--注解开发驱动--> <mvc:annotation-driven></mvc:annotation-driven> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"></property> <property name="suffix" value=".jsp"></property> </bean> </beans>

    配置handler

    SelectUser.java

    @Controller
    public class SelectUser {
        @RequestMapping("/list")
        public String selectList(Model model) throws Exception{return "list";
        }
    }

    此时先进行代码的测试

    index.jsp

      <body>
       <a href="<%=request.getContextPath() %>/list">SelectAll</a>
      </body>

    list.jsp

    <body>
    hello
    </body>

    然后把项目放在tomcat上运行

    点击超链接进行跳转

     

    此时可以成功跳转

    <%=request.getContextPath() %>加上,否则跳转的路径可能会出问题

     在进行数据的查询测试:

    UserMapperImp.java

    把数据库的查询以及相关返回均放在一个类中!

    public class UserMapperImp {
        
         static ApplicationContext app = new ClassPathXmlApplicationContext("spring/applicationContext.xml");
           
            //查询全部
            public static List<User> getUsers() throws Exception{
                UserMapper um = (UserMapper) app.getBean("userMapper");
                List<User> u =  um.findUserAll();
                return u;
            }
    }

    SelectUser.java

    @Controller
    public class SelectUser {
    
        @RequestMapping("/list")
        public String selectList(Model model) throws Exception{
            model.addAttribute("users", UserMapperImp.getUsers());
            return "list";
        }
    }

     list.jsp

    对数据库进行循环遍历的获取!

    <table border="1" cellpadding="0" cellspacing="0" width="500">
            <tr>
                <td>id</td>
                <td>user</td>
                <td>pwd</td>
                
            </tr>
            <c:forEach items="${users}" var="u">
                <tr>
                    <td>${u.id}</td>
                    <td>${u.username}</td>
                    <td>${u.password}</td>
                </tr>
            </c:forEach>
        </table>

     此时再次重新启动tomcat

    点击超链接

  • 相关阅读:
    整数反转问题--正确率极低
    May LeetCoding Challenge9 之 求方差
    May LeetCoding Challenge8 之 交叉相乘
    EXCEL上传DEMO
    三层BOM
    OO alv 获取选择列
    PS 项目创建
    读取EXCEL到内表
    SAP XML 到 内表
    BOM 复制功能
  • 原文地址:https://www.cnblogs.com/Mrchengs/p/10042913.html
Copyright © 2011-2022 走看看