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

建设网站的意义 作用google下载app

建设网站的意义 作用,google下载app,如何找做网站的公司,牡丹江百姓信息网前言 Spring文章链接: 从头到尾Spring概念,家族,核心技术使用,事务这一篇就够了!!!_千小半的博客-CSDN博客_spring最新技术 mybatis文章链接: MyBatis框架入门(含实例)_mybatis sqlsession创建和关闭_千小…

前言

 Spring文章链接:  从头到尾Spring概念,家族,核心技术使用,事务这一篇就够了!!!_千小半的博客-CSDN博客_spring最新技术

mybatis文章链接: MyBatis框架入门(含实例)_mybatis sqlsession创建和关闭_千小半的博客-CSDN博客

一、Spring整合Mybatis框架思路

 用过Mybatis的伙伴们因该知道当我们去使用Mybatis去进行数据访问时,不仅有三个重要步骤,还有三个核心对象,这里简单重温一下Spring和Mybatis:

MyBatis使用步骤:

1.创建MybatisConfig 配置文件

2.创建SQL映射文件

3.读取配置文件,获取映射器调用方法测试

MyBatis的三个核心对象:

1.SqlSessionFactoryBuider :创建SqlSessionFactory

2.SqlSessionFactory : 创建SqlSession

3. SqlSession :获取mapper映射器并调用方法

Spring IOC容器和AOP:

spring 将所有的对象都交由spring/IOC容器管理,被管理的对象都称为bean。这些bean都在spring配置文件中进行配置。

好了,小半列出上面的温习及步骤,友友们是不是想起来了Mybatis呢?那么我们最终要让spring和mybatis进行一个整合,这两个框架都有配置文件,我们该怎么把他们合二为一呢,请看下图:

IOC容器也就是spring配置文件需要配置的属性和扫描的信息:

1.SqlSessionFactoryBean : 在mybtais-spring的整合包中,可以生成一个SqlSessionFactory,而前者可以创建出SqlSession,也就自然通过mapper映射器可以调用指定方法,通过该类还可以对Mybtais进行配置别名等。

2.数据源: 通过dbcp包提供的BasicDataSource类进行数据源的一个配置.

3.数据映射器类:使用XML配置文件时,需要扫描mapper映射器,反之,使用注解扫描。

4. 事务管理器 : 在spring容器中,开启事务控制需要先通过springFramework.jdbc包下的DataSourceTransactionManager类​​​​​​​配置事务管理器,它控制着事务的开关。

以上的4个类就是需要我们在spring整合mybatis配置的bean,关于整合的配置,以下有XML和java类配置的方式

二、XML整合Mybatis

1.数据源的外部引入

数据源我们都要配置url,username等连接信息,要想达到数据源的复用性,不想每回都重新配置一遍,就可以通过properties属性文件外部引入数据源。

db.properties文件

   注意:使用spring引入外部属性文件时,前缀必须用jdbc标记。

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.username=root
jdbc.password=root
jdbc.url=jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai

- spring配置XML文件

   注意: 要想识别数据源,需要先使用以下标签扫描该数据源文件的路径

<context:property-placeholder location="db.properties"/>

开始配置!!!!

  MapperFactoryBean类:能够以配置的方式生成映射器的实现类,并注入给业务组件(类型只能是接口类型)

    <!--创建bean--><bean id="studentService" class="service.StudentServiceImpl"/><!--利用MapperFactoryBean类扫描mapper接口--><bean id="factoryBean" class="org.mybatis.spring.mapper.MapperFactoryBean"><property name="mapperInterface" value="dao.StudentMapper"/></bean><!--扫描properties外部属性文件--><context:property-placeholder location="db.properties"/><!--1.配置数据源--><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"p:driverClassName="${jdbc.driver}"p:username="${jdbc.username}"p:password="${jdbc.username}"p:url="${jdbc.url}"></bean><!--2.创建SqlSessionFactory--><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!--引用数据源--><property name="dataSource" ref="dataSource"/><!--设置实体类别名--><property name="typeAliasesPackage" value="entity"/><!--设置映射--><property name="mapperLocations" value="dao/*.xml"/><!--设置映射文件路径--><property name="configLocation" value="mybatis-config.xml"/></bean><!--3.设置事务管理器--><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><!--引入数据源--><property name="dataSource" ref="dataSource"/></bean>

- 启动Spring容器
​​​

//测试类public class Test{public static void main(String[] args) {//读取spring配置文件ApplicationContext context= new ClassPathXmlApplicationContext("applicationContext.xml");StudentService service=context.getBean("bean名称",StudentService.class);service.方法();}}

​​​​​​三、java类整合Mybatis

使用XML不仅可以配置整合文件,java类也同理。

@Configuration  //描述该类是一个配置类
@Component      //注册bean
@ComponentScan(basePackages = {"dao", "service"})   //扫描bean
@MapperScan(value = "dao")    //扫描mapper接口注入映射器
public class ApplicationConfig {/*** 配置数据源*/@Beanpublic BasicDataSource getDataSource() {BasicDataSource dataSource = new BasicDataSource();dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");dataSource.setUsername("root");dataSource.setPassword("root");dataSource.setUrl("jdbc:mysql://localhost:3306/test?characterEncoding=utf8&useSSL=false&serverTimezone=UTC");return dataSource;}/*** 创建SqlSessioinFactory*/@Beanpublic SqlSessionFactory sqlSessionFactory(){SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();factoryBean.setDataSource(getDataSource());PathMatchingResourcePatternResolver patternResolver = new PathMatchingResourcePatternResolver();try {Resource[] resources = patternResolver.getResources("dao/*.xml");factoryBean.setMapperLocations(resources);ClassPathResource classPathResource = new ClassPathResource("mybatisConfig.xml");factoryBean.setConfigLocation(classPathResource);//设置别名factoryBean.setTypeAliasesPackage("entity");} catch (IOException e) {throw new RuntimeException(e);}try {return  factoryBean.getObject();} catch (Exception e) {throw new RuntimeException(e);}}/*** 配置事务管理器*/@Beanpublic DataSourceTransactionManager transactionManager(){DataSourceTransactionManager transactionManager = new DataSourceTransactionManager();transactionManager.setDataSource(getDataSource());return  transactionManager;}

http://www.hkea.cn/news/450642/

相关文章:

  • wordpress多程序用户同步汕头seo排名
  • 旅游网站 建设平台分析百度seo一本通
  • 怎么用dw做网站app开发网站
  • 昆山做网站的公司有哪些seo整站优化推广
  • 网站建设谈单情景对话青岛seo百科
  • 网站做自适应好不好网页分析报告案例
  • 大连手机自适应网站建设公司seo诊断站长
  • 有哪些好的网站十大电商代运营公司
  • 个人网页设计欣赏网站整站优化快速排名
  • 多少钱立案seo 公司
  • 医学类的网站做Google百度怎么优化排名
  • 手机网站怎样做枸橼酸西地那非片的功效与作用
  • 邯郸做wap网站的公司六六seo基础运营第三讲
  • 六安市建设银行网站seo编辑的工作内容
  • seo外包平台福州百度快照优化
  • 橙子建站广告怎么投放竞价网络推广
  • 中国公司查询网站网络公司起名
  • wordpress邮箱内容更改一键关键词优化
  • 楼市最新消息2022年房价走势seo网络推广经理
  • wordpress免费中文企业主题seo权重优化软件
  • 周口网站建设哪家好济南专业seo推广公司
  • 济南网站忧化怎么把抖音关键词做上去
  • 网站建设与维护的题目网站点击软件排名
  • 网站收录服务企业网络的组网方案
  • nba排名灰色词seo排名
  • 如何建自己的个人网站深圳市seo上词多少钱
  • 迎访问中国建设银行网站_永久免费的电销外呼系统
  • 类似AG网站建设网络营销的十大特点
  • 河北盘古做的网站用的什么服务器品牌策划与推广
  • 做网站开发的是不是程序员品牌营销与推广