mybaties springboot,Springboot+mybatis

  mybaties springboot,Springboot+mybatis

  首先创建跳羚项目,jdk选择1.8

  然后倒入米巴蒂埃的相关依赖

  我们用的跳羚队,当然春天全家桶里面含有我的巴蒂斯,所以我们直接使用升级版的我的巴蒂斯+。

  引入这3个

  龙目岛省的我每次创建对象,都需要获取、设置方法,以及转换对象为字符串

  (想法里面也要安装龙目岛插件-》文件-设置-插件-搜索龙目岛安装,完后重启想法,这样龙目岛在想法中不报错)

  mybatis-plus,mybaties的相关冲突

  MySQL-连接器-java基本的数据库编程驱动链接mysql,mybatis也要依赖他

  属性Java。版本1.8/Java。mybatis-plus版本。版本3。4 .2/mybatis-plus。版本/属性dependencygroupid com。米宝dou/groupId artifactidmybatis-plus-boot-starter/artifactId version $ { mybatis-plus。version }/version/dependency groupId MySQL/groupId artifact id MySQL-connector-Java/artifact id scope runtime/scope/dependencydependencycecegroupidorg。lombok/groupId项目然后像我这样,假设我们要搭建一个非常注射毒品的大工程,建立这几个目录和文件

  控制器-TestController.java(类)

  mapper-TestMapper.java(接口)

  service-impl-testserviceimpl。Java(类)

  service-TestService.java(接口)

  资源-映射器-测试映射器。XML(映射xml)

  接下来我们需要一个SqlSessionFactory,去解析一个个sql.xml。

  而sqlSessionFactory,由SqlSessionFactoryBuilder构建,构建一个SqlSessionFactoryBuilder,需要链接关系型数据库的账号密码地址。所以要读取你的账号密码,那在资源目录下创建一个可扩展标记语言用于他去读取。

  我在资源下的制图人里面创建一个mybaties-config.xml

  ?可扩展标记语言版本=1.0 编码=UTF八号?DOCTYPE配置公共-//mybatis。org//DTD配置3.0//EN http://mybatis。org/DTD/mybatis-3-Config。 DTD 配置环境default= development 环境id= development 事务管理器类型= JDBC /数据源类型= POOLED 属性名称= driver 值= com。MySQL。CJ。JDBC。驱动程序/

   <property name="url" value="192.168.19.88"/> <property name="username" value="m11"/> <property name="password" value="m11@2022"/> </dataSource> </environment> </environments> <mappers> <mapper resource="mapper/TestMapper.xml"/> </mappers></configuration>创建一个domain包,用来与mysql做相关映射,我在里面创建了一个实体类,与数据库做映射

  @Data的就是我第一次导入的那个包,能够自动通过@Data注解,生成这个实体类的get、set方法以及toString方法。

  

package com.example.demo.domain;import lombok.Data;@Datapublic class BZGG { String req_date; String stock_code; String stock_name; double fNextIncrease; double fNextAvgIncrease; String updatetime; public BZGG(String req_date, String stock_code, String stock_name, double fNextIncrease, double fNextAvgIncrease, String updatetime) { this.req_date = req_date; this.stock_code = stock_code; this.stock_name = stock_name; this.fNextIncrease = fNextIncrease; this.fNextAvgIncrease = fNextAvgIncrease; this.updatetime = updatetime; } public BZGG() { }}

在mapper中的TestMapper中编写一个地址,并且加上Mapper映射

 

  

package com.example.demo.mapper;import com.example.demo.domain.BZGG;import org.apache.ibatis.annotations.Mapper;import java.util.List;@Mapperpublic interface TestMapper { List<BZGG> getBZGGonTime(String req_date);}

mybaties的代码流程图

 

  

 

  resources中的sql配置(TestMapper.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.example.demo.mapper.TestMapper"> <select id="getBZGGonTime" resultType="com.example.demo.domain.BZGG"> select * from db_guoyuan.t_longhubang_stock_bzgg where req_date = #{req_date} </select></mapper>

controller层代码(你到时候可以自己分离service),为了突出mybaties暂时写到一起了

 

  

package com.example.demo.controller;import com.example.demo.domain.BZGG;import com.example.demo.mapper.TestMapper;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import org.springframework.web.bind.annotation.*;import java.io.IOException;import java.io.InputStream;import java.util.List;@RestControllerpublic class TestController { @RequestMapping(value = "/Test", method = RequestMethod.GET) @ResponseBody public String getDemo(@RequestParam("num") int i) { String resource = "mapper/mybatis-config.xml"; InputStream inputStream = null; try { inputStream = Resources.getResourceAsStream(resource); } catch (IOException e) { e.printStackTrace(); } SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession sqlSession = sqlSessionFactory.openSession(); TestMapper mapper = sqlSession.getMapper(TestMapper.class); List<BZGG> bzgGonTime = mapper.getBZGGonTime("2022-04-08"); return bzgGonTime.toString(); }}

另外SpringApplication启动类,因为导入了mybaties,所以要启动时加载某个类,否则会出现url找不到等错误。

 

  将@springBootApplication改成下面的

  

@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class })
package com.example.demo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;//在启动类的@SpringBootApplication加上//避免冲突,加入exclude@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class })public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}}

测试:

 

  

 

  到此这篇关于springBoot详细讲解使用mybaties案例的文章就介绍到这了,更多相关springBootmybaties内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: