mapper

第五章 springboot + mybatis(转载)

坚强是说给别人听的谎言 提交于 2019-12-23 03:19:19
本编博客转发自: http://www.cnblogs.com/java-zhao/p/5350021.html springboot集成了springJDBC与JPA,但是没有集成mybatis,所以想要使用mybatis就要自己去集成。集成方式相当简单。 1、项目结构 2、pom.xml 1 <!-- 与数据库操作相关的依赖 --> 2 <dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-starter-jdbc</artifactId> 5 </dependency> 6 7 <!-- 使用数据源 --> 8 <dependency> 9 <groupId>com.alibaba</groupId> 10 <artifactId>druid</artifactId> 11 <version>1.0.14</version> 12 </dependency> 13 14 <!-- mysql --> 15 <dependency> 16 <groupId>mysql</groupId> 17 <artifactId>mysql-connector-java</artifactId> 18 <scope>runtime</scope> 19 <

lineNumber: 6; columnNumber: 40; 文档根元素 "mapper" 必须匹配 DOCTYPE 根 "configuration"。

允我心安 提交于 2019-12-22 18:50:50
运行mybatis时报错: lineNumber: 6; columnNumber: 40; 文档根元素 "mapper" 必须匹配 DOCTYPE 根 "configuration"。 Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 40; 文档根元素 "mapper" 必须匹配 DOCTYPE 根 "configuration"。 at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:26) at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:82) at org.apache.ibatis.session

Java工作笔记-Spring Boot中使用Mybatis操作达梦数据库

假装没事ソ 提交于 2019-12-22 13:46:46
这里以达梦数据库为例,使用MyBatis对数据库进行增删改查 这里先给出截图 此处为了简单,直接在Controller里面调用dao中数据: 关键代码如下: application.properties spring.datasource.driver-class-name=dm.jdbc.driver.DmDriver spring.datasource.url=jdbc:dm://XXX.XXX.XXX.XXX spring.datasource.username=XXXX spring.datasource.password=XXXX mybatis.mapperLocations=classpath:/*.xml AppInfo.java i1package com.example.demo.object; import lombok.Data; @Data public class AppInfo{ private String appXXId; private String nodeXXId; private String appXXEngName; private String appXXChnName; private String appXXStatus; } AppInfoMapper.java package com.example.demo.dao;

EasyCode实现数据库到Swagger全自动化

a 夏天 提交于 2019-12-22 12:33:31
简介 EasyCode是基于IntelliJ IDEA开发的代码生成插件,通过自定义生成模板可以完成定制化的 Mapper Service Controller 生成,结合数据库 Comment还可以实现从数据库到 Swagger 的一键配置,非常的强大与方便,项目地址: EasyCode--码云 这里推荐大家使用 安装 和一般的Idea插件安装方式一样,点击 File -> Setting -> Plugins 搜索 EasyCode 点击 Install 安装即可,安装之后需要重启,当然如果是Idea最新的2019.3版本支持插件热安装就不需要重启了。 连接数据库 安装之后需要使用Idea连接数据库,在Idea的右侧有个DataBase选项卡,点击之后选择对应的数据库。这边我使用的是 Mysql 数据库 配置好连接名称,连接路径,账号密码和数据库测试连接,测试通过后点击OK,就可以成功的连接到数据库,这里Idea的数据库图形化界面做的也挺好的。 配置EasyCode的模板 1. 配置作者名称 同样是 File -> Settings -> other Settings 选择 EasyCode 或者直接搜索 EasyCode 进行编辑,首先键入作者名称,这样在生成的类上面就会加上你的名字,时间等信息。 2. Type Manager 映射类型管理

mybatis基础使用

六月ゝ 毕业季﹏ 提交于 2019-12-22 07:01:14
  MyBatis 本是 apache 的一个开源项目 iBatis, 2010 年这个项目由 apache software foundation 迁移到了 google code ,并且改名为 MyBatis 。 2013 年 11 月迁移到 Github 。   MyBatis 是一个优秀的 持久层框架 ,它对 jdbc 的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建 connection 、创建 statement 、手动设置参数、结果集检索等 jdbc 繁杂的过程代码。   Mybatis 通过 xml 或注解的方式将要执行的各种 statement ( statement 、 preparedStatemnt 、 CallableStatement )配置起来,并通过 java 对象和 statement 中的 sql 进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射成 java 对象并返回 目录结构 一、导包   导入mybatis包及其所依赖的lib包 二、根据表创建相应的实体类 三、创建mybatis的配置文件sqlMapConfig.xml 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE

重新学习Mybatis(五)

倾然丶 夕夏残阳落幕 提交于 2019-12-22 03:44:17
本篇主要分析第二种实现方式(*Mapper mapper = sqlSession.getMapper(*Mapper.class)是如何实现的. 普通的JDK动态代理基本由以下几部分构成 一个接口ProxyService public interface ProxyService { String print(String message); } 该接口的实现类ProxyServiceImpl public class ProxyServiceImpl implements ProxyService { @Override public String print(String message) { return message; } } 再加上一个至关重要的动态代理的Handler,CommonProxyHandler public class CommonProxyHandler implements InvocationHandler { private Object target; public CommonProxyHandler(Object tarject) { this.target = tarject; } @Override public Object invoke(Object proxy, Method method, Object[] args)

BZip2 file read in Hadoop

旧巷老猫 提交于 2019-12-21 21:39:21
问题 I heard we can use multiple mappers to read different parts of one bzip2 file in parallel in Hadoop, to increase performance. But I cannot find related samples after search. Appreciate if anyone could point me to related code snippet. Thanks. BTW: is gzip has the same feature (multiple mapper process different parts of one gzip file in parallel). 回答1: If you look at: http://comments.gmane.org/gmane.comp.jakarta.lucene.hadoop.user/30662, you will find that bzip2 format is indeed splittable and

[SpringBoot+MyBatis] MapperScan注解

心已入冬 提交于 2019-12-21 19:29:11
在SpringBoot中集成MyBatis,可以在mapper接口上添加@Mapper注解,将mapper注入到Spring,但是如果每一给mapper都添加@mapper注解会很麻烦,这时可以使用@MapperScan注解来扫描包。 mapper接口开发 面向接口编程的思想很重要,所以想先介绍这个部分。 如一个实体类: public class Person { private int pid ; private String pname ; private int age ; private String address ; } Mapper接口: import java . util . List ; public interface PersonMapper { public List < Person > getPersonList ( ) ; MyBatis配置XML文件: 环境配置,链接数据库: < mappers > <!-- <mapper class="com.asong.mybatis.pojo.PersonMapper"/> --> < mapper resource = " com/asong/mybatis/pojo/PersonMapper.xml " /> </ mappers > mapper.xml配置: < mapper namespace =

Mybatis-缓存机制

孤街浪徒 提交于 2019-12-21 18:33:08
像大多数的持久化框架一样,Mybatis也提供了缓存策略,通过缓存策略来减少数据库的查询次数,从而提高性能。 Mybatis中缓存分为一级缓存,二级缓存。 Mybatis一级缓存 Mybatis的一级缓存默认是开启的,而且是不能关闭的。一级缓存是指SqlSession级别的缓存,当在同一个SqlSession中进行相同的SQL语句查询时,第二次以后的查询不会从数据库查询,而是直接从缓存中获取,一级缓存最多缓存1024条SQL。 一级缓存的原理(SqlSession级别) 第一次发出一个查询sql,sql查询结果写入sqlsession的一级缓存中,缓存使用的数据结构是一个map、 key:MapperID+offset+limit+Sql+所有的入参 value:用户信息 同一个sqlsession再次发出相同的sql,就从缓存中取出数据。 如果两次中间出现commit操作(修改、添加、删除) ,本sqlsession中的一级缓存区域全部清空,下次再去缓存中查询不到之前的数据,所以要从数据库中查询,从数据库查询到再写入缓存中。 代码验证: /** * 测试一级缓存的存在 * @throws Exception */ @Test public void testFirstCache() throws Exception { //1、读取配置文件 InputStream in

四、SSM三大框架整合之登录功能实现

随声附和 提交于 2019-12-21 13:15:03
1、整合思路      ①、表现层,也就是 Controller,由 SpringMVC 来控制,而SpringMVC 是Spring 的一个模块,故不需要整合。   ②、业务层,也就是 service,通常由 Spring 来管理 service 接口,我们会使用 xml 配置的方式来将 service 接口配置到 spring 配置文件中。而且事务控制一般也是在 service 层进行配置。   ③、持久层,也就是 dao 层,而且包括实体类,由 MyBatis 来管理,通过 spring 来管理 mapper 接口,使用mapper的扫描器自动扫描mapper接口在spring中进行注册。   很明显,spring 在三大框架的整合中占据至关重要的地位,类似于一个大管家,将 MyBatis 和 SpringMVC 揉合在一起。 回到顶部 2、准备环境   ①、数据库环境     数据库类型:MySQL 5.1     数据库名称:ssm     数据表:user        ②、开发工具 eclipse   ③、JDK 1.7   ④、mybatis 3.3   ⑤、SpringMVC 4.2.4   ⑥、Spring 4.2.4   ⑦、数据库连接池 dbcp1.2.2   ⑧、数据库驱动包mysql5.1.26   ⑨、日志 log4j 1.2    案例需求