当前位置: 首页 > news >正文

企业网站 设计需求网站seo招聘

企业网站 设计需求,网站seo招聘,江西赣州疫情通报,wordpress 用户等级文章目录 一、Spring 整合 MyBatis 的关键点二、Spring 整合 MyBatis 的步骤2.1 创建 Maven 项目,并导入相关依赖2.2 配置 Mybatis 部分2.3 配置 Spring 部分2.3 配置测试类 一、Spring 整合 MyBatis 的关键点 1、 将 Mybatis 的 DataSource (数据来源)的创建和管理…

文章目录

  • 一、Spring 整合 MyBatis 的关键点
  • 二、Spring 整合 MyBatis 的步骤
    • 2.1 创建 Maven 项目,并导入相关依赖
    • 2.2 配置 Mybatis 部分
    • 2.3 配置 Spring 部分
    • 2.3 配置测试类


一、Spring 整合 MyBatis 的关键点



1、 将 Mybatis 的 DataSource (数据来源)的创建和管理交给 Spring Ioc 容器来做,并使用第三方数据库连接池来(Druid,C3P0等)取代 MyBatis 内置的数据库连接池

2、将 Mybatis 的 SqlSessionFactroy 交给 Spring Ioc 创建和管理,使用 spring-mybatis 整合jar包中提供的 SqlSessionFactoryBean 类代替项目中的 MyBatisUtil 工具类

3、将MyBatis的接口代理方式生成的实现类,交给Spring IoC容器创建并管理




二、Spring 整合 MyBatis 的步骤


2.1 创建 Maven 项目,并导入相关依赖


  • 创建 maven 项目,并在pom.xml 中整合如下依赖

    注意:如果需要配置 Maven 静态资源过滤问题时,需要保证静态资源路径正确,否则扫描不到

    • 单元测试:junit

    • mybatis 相关依赖

    • 数据库相关依赖 (mysql、Oracle等)

    • 第三方数据库连接池

    • Spring 相关依赖

    • aop 织入器

    • mybatis-spring 整合包【重点】

    • lombok 工具依赖

    • slf4j日志依赖

      • 具体依赖如下所示:

            <dependencies><!-- Junit测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>compile</scope></dependency><!-- MyBatis核心Jar包 --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version></dependency><!-- MySql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><!-- Lombok工具 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.12</version><scope>provided</scope></dependency><!-- Spring核心 --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.3</version></dependency><!-- Spring-test测试 --><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>5.3.3</version></dependency><!-- slf4j日志包 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.25</version></dependency><!-- druid阿里的数据库连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.10</version></dependency><!-- Spring整合ORM --><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>5.3.3</version></dependency><!-- Spring整合MyBatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.3.2</version></dependency></dependencies>
        

2.2 配置 Mybatis 部分


  • 创建实体类

    @Data
    public class User {private String id;private String name;private String pwd;}
    
  • 创建 Mapper 接口

    public interface UserMapper {List<Users> getUsers();int addUsers(Users users);int updateUser(Users users);int deleteUser(Users users);
    }
    
  • 创建 Mapper 接口对应的 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.sys.mapper.UserMapper" ><!-- 开启MyBatis自带的二级缓存 --><!--<cache size="1024" eviction="LRU" flushInterval="60000" readOnly="true"/>--><select id="getUsers" resultType="com.sys.dto.Users">select id,name,pwd from user</select><insert id="addUsers" parameterType="com.sys.dto.Users">insert into user (id,name,pwd) values (#{id},#{name},#{pwd})</insert><update id="updateUser" parameterType="com.sys.dto.Users">update user set name = #{name} where id = #{id}</update><delete id="deleteUser" parameterType="com.sys.dto.Users">delete from user where id = #{id}</delete></mapper>
    
  • 配置数据源(之前学习 MyBatis 时候都是配置到xml中的,这次维护到 jdbc-config.properties 中,因为不使用 MyBatis 内置连接池,使用第三方数据连接池)

    jdbc.driver=com.mysql.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3306/mybatis?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8
    jdbc.username=root
    jdbc.password=root
    
  • 配置 mybatis-config.xml (配置 MyBatis 缓存)

    <?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><!-- 开启延迟加载 该项默认为false,即所有关联属性都会在初始化时加载true表示延迟按需加载 --><settings><setting name="lazyLoadingEnabled" value="true"/><!-- 开启二级缓存,这里注释了,不配置默认为一级缓存 --><!-- <setting name="cacheEnabled" value="true"/> --></settings></mappers>
    </configuration>
    
  • 配置 log

    log4j.rootLogger=DEBUG, stdout
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p %d %C: %m%nlog4j.logger.java.sql.ResultSet=INFO
    log4j.logger.org.apache=INFO
    log4j.logger.java.sql.Connection=DEBUG
    log4j.logger.java.sql.Statement=DEBUG
    log4j.logger.java.sql.PreparedStatement=DEBUG
    

2.3 配置 Spring 部分


  • 配置 Spring 容器

    • 1、将数据源以 Bean 的形式存储进 Ioc容器
      2、配置 SessionFactory 的 Bean,并将数据源的 Bean 以及 MyBatis 配置文件的路径和 mapper.xml 的映射关系注入到 SessionFactory 的 Bean 中 。(注:SessionFactory :点进源码可以发现,这个类是 mybatis 的实体工具类,所有给属性命名时必须和 SessionFactory 中的属性保持一致)
      3、配置 mapper 接口的自动扫描

      <?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"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!-- 加载数据库连接信息的属性文件 --><context:property-placeholder location="classpath:jdbc-config.properties"/><!-- 配置Druid数据源的Bean --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="driverClassName" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></bean><!-- 配置SessionFactory的Bean --><bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!-- 注入数据源 --><property name="dataSource" ref="dataSource"/><!-- 指定MyBatis配置文件的位置 --><property name="configLocation" value="classpath:mybatis-config.xml"/><!-- 配置 xml 的映射 --><property name="mapperLocations" value="classpath:mapper/*.xml"/></bean><!-- 配置mapper接口的扫描器,将Mapper接口的实现类自动注入到IoC容器中实现类Bean的名称默认为接口类名的首字母小写 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><!-- basePackage属性指定自动扫描mapper接口所在的包 --><property name="basePackage" value="com.sys.mapper"/></bean>
      </beans>
      

2.3 配置测试类

  • @RunWith注解:

    @RunWith 就是一个运行器
    @RunWith(JUnit4.class) 就是指用JUnit4来运行
    @RunWith(SpringJUnit4ClassRunner.class),让测试运行于Spring测试环境
    @RunWith(Suite.class) ,就是一套测试集合,
    @ContextConfiguration Spring整合JUnit4测试时,使用注解引入多个配置文件

  • @ContextConfiguration注解:

    @ContextConfiguration这个注解通常与@RunWith(SpringJUnit4ClassRunner.class)联合使用用来测试,这里的用法是通过它来找到 Spring 的配置文件,通过配置文件找到数据源以及 mybatis 配置文件和 映射 mapper 接口等

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations = "classpath:applicationContext.xml")
    public class Test_SpringMyBatis {@Autowiredprivate UserMapper userMapper;@Testpublic void testFindUserList(){Users users = new Users();/*users.setId("4");users.setName("姚青");users.setPwd("123456");int i = userMapper.addUsers(users);*//*users.setId("5");users.setName("张三");int i2 = userMapper.updateUser(users);*//*users.setId("6");int i3 = userMapper.deleteUser(users);*/List<Users> userList = userMapper.getUsers();System.out.println(userList);}}
    
  • 测试结果,增删改查均通过

    在这里插入图片描述



文章转载自:
http://odourless.c7510.cn
http://rockshaft.c7510.cn
http://reservedly.c7510.cn
http://try.c7510.cn
http://brotherhood.c7510.cn
http://unitage.c7510.cn
http://neonatology.c7510.cn
http://heathery.c7510.cn
http://parenteral.c7510.cn
http://galloway.c7510.cn
http://buffalofish.c7510.cn
http://protrusive.c7510.cn
http://disembodiment.c7510.cn
http://benzomorphan.c7510.cn
http://cerebrovascular.c7510.cn
http://determining.c7510.cn
http://siu.c7510.cn
http://inconsistently.c7510.cn
http://supercritical.c7510.cn
http://impaste.c7510.cn
http://ensky.c7510.cn
http://geometrise.c7510.cn
http://noncommunicable.c7510.cn
http://wrapped.c7510.cn
http://vocally.c7510.cn
http://chutter.c7510.cn
http://predication.c7510.cn
http://heptasyllable.c7510.cn
http://phagocytize.c7510.cn
http://spenserian.c7510.cn
http://androcracy.c7510.cn
http://bisearch.c7510.cn
http://hyperlipemia.c7510.cn
http://diglot.c7510.cn
http://hairstreak.c7510.cn
http://ammine.c7510.cn
http://beidaihe.c7510.cn
http://gasify.c7510.cn
http://trousering.c7510.cn
http://disheartenment.c7510.cn
http://ordinee.c7510.cn
http://semideify.c7510.cn
http://radiovision.c7510.cn
http://web.c7510.cn
http://yod.c7510.cn
http://abdias.c7510.cn
http://cute.c7510.cn
http://pediculosis.c7510.cn
http://cynocephalus.c7510.cn
http://illuminaten.c7510.cn
http://bhn.c7510.cn
http://urethrectomy.c7510.cn
http://urinose.c7510.cn
http://offense.c7510.cn
http://provisionment.c7510.cn
http://hummel.c7510.cn
http://persifleur.c7510.cn
http://lipositol.c7510.cn
http://glaciated.c7510.cn
http://libidinal.c7510.cn
http://erective.c7510.cn
http://crania.c7510.cn
http://refortify.c7510.cn
http://habutai.c7510.cn
http://agouti.c7510.cn
http://nematic.c7510.cn
http://homolysis.c7510.cn
http://sogat.c7510.cn
http://shebeen.c7510.cn
http://custody.c7510.cn
http://twimc.c7510.cn
http://antihyperon.c7510.cn
http://postponement.c7510.cn
http://equestrianism.c7510.cn
http://scrag.c7510.cn
http://roul.c7510.cn
http://opposition.c7510.cn
http://amplitudinous.c7510.cn
http://neoimpressionism.c7510.cn
http://laccolith.c7510.cn
http://colourably.c7510.cn
http://abridge.c7510.cn
http://acharnement.c7510.cn
http://hellgramite.c7510.cn
http://billiards.c7510.cn
http://keyless.c7510.cn
http://raffinate.c7510.cn
http://voluntary.c7510.cn
http://inlook.c7510.cn
http://neurogenesis.c7510.cn
http://screwball.c7510.cn
http://abstinency.c7510.cn
http://irradiancy.c7510.cn
http://clidomancy.c7510.cn
http://theoretical.c7510.cn
http://deuxchevaux.c7510.cn
http://autoeroticism.c7510.cn
http://workbox.c7510.cn
http://urge.c7510.cn
http://hamhung.c7510.cn
http://www.zhongyajixie.com/news/82526.html

相关文章:

  • 模板做网站描述建设一个网站的具体步骤
  • wordpress做出的网站网站建设制作免费
  • 镇海区建设交通局网站电商网站订烟平台官网
  • 小公司自己怎样做网站做推广的公司
  • 营销型公司网站有哪些内部优化
  • 上海做网站的公司联系方式网站关键词优化排名公司
  • 做网站有兼职吗软文推广软文营销
  • 自己建设网站在哪里建设网站申请流程
  • 山东各地网站备案海洋seo
  • 无锡城乡建设局网站重庆seo什么意思
  • ps做网站 大小网站功能
  • 桂城网站建设品牌营销推广
  • 06年可以做相册视频的网站百度权重提升
  • 有关电商网站开发的参考文献有什么可以做推广的软件
  • 网站售价北京网
  • 莱芜招聘网最新招聘潍坊seo招聘
  • 华为网站建设花关键词排名系统
  • 以前可以做视频的网站广告推广平台网站
  • 上线了建站怎么样广州百度竞价外包
  • 影院网站如何做好视通视频会议app下载安装
  • wordpress文章底部插件重庆 seo
  • 怎么做b2b网站吗做一个简单网页
  • 云主机网站如何备份关键词排名优化教程
  • 网站设计制作 建网站推广图片制作
  • 简单asp网站源码网站排名提升软件
  • 手机餐饮网站开发百度免费推广有哪些方式
  • 简易网站制作百度推广找谁做靠谱
  • 做游戏推广网站免费加客源
  • 已备案网站想关闭营销网站建设
  • 做网站微信群短网址生成网站