myBatis实现读写数据库
2017-12-25 10:01
323 查看
一、MyBatis:
MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。
二、准备:
数据库结构:
使用maven添加相应的jar包:
项目目录结构:
资源文件的conf.xml配置:
实体类:User
映射文件userMapper.xml
然后配置conf.xml将映射加进去:
测试类,测试是否能够对数据库进行读写:
完整代码可以参考:
http://download.csdn.net/download/jsqfengbao/10171913
MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。
二、准备:
数据库结构:
使用maven添加相应的jar包:
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency>
项目目录结构:
资源文件的conf.xml配置:
<?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> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <!-- 配置数据库连接信息 --> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/test" /> <property name="username" value="root" /> <property name="password" value="mysql" /> </dataSource> </environment> </environments> </configuration>
实体类:User
/** * @Title: User.java * @Package com.king.model * @Description: TODO * @date 2017年12月25日 上午9:21:57 * @version V1.0 */ package com.king.model; public class User { private int id; private String username; private String password; private int age; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "User [id=" + id + ", username=" + username + ", password=" + password + ", age=" + age + "]"; } }
映射文件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.king.mapping.userMapper"> <!-- 在select标签中编写查询的SQL语句,设置select标签的id属性为getUser,id属性必须唯一的,不能重复使用 parameterType属性指名查询时使用的参数类型,resultType属性指明查询返回的结果集类型 resultType="com.king.model.User"就表示将查询结果封装成一个User类的对象返回 User就是user表所对应的实体类 --> <!-- 根据ID查询一个user对象 --> <select id="getUser" parameterType="int" resultType="com.king.model.User"> select * from user where id=#{id} </select> </mapper>
然后配置conf.xml将映射加进去:
<mappers> <!-- 注册userMapper.xml文件 userMapper.xml位于com.king.mapping这个包下,所以resource写成com/king/mapping/userMapper.xml --> <mapper resource="com/king/mapping/userMapper.xml"></mapper> </mappers>
测试类,测试是否能够对数据库进行读写:
package com.king.test; import java.io.InputStream; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.king.model.User; public class Test { public static void main(String[] args) { String resource="conf.xml"; InputStream is = Test.class.getClassLoader().getResourceAsStream(resource); SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is); SqlSession session = sessionFactory.openSession(); String statement = "com.king.mapping.userMapper.getUser"; User user = session.selectOne(statement,1); System.out.println(user); } }
完整代码可以参考:
http://download.csdn.net/download/jsqfengbao/10171913
相关文章推荐
- Spring+MyBatis实现数据库读写分离方案
- Spring+MyBatis实现数据库读写分离方案
- Spring+MyBatis实现数据库读写分离方案
- Spring+MyBatis实现数据库读写分离方案
- Spring+MyBatis实现数据库读写分离方案
- Spring+MyBatis实现数据库读写分离方案
- MyBatis实现数据库的CRUD
- php 实现Mysql读写分离操作及数据库连接类
- mybatis多数据库动态切换实现
- mybatis实现网上商店一(建数据库,写实体类)
- mybatis源码分析7 - mybatis-spring读写数据库全过程
- mysql+spring+mybatis实现数据库读写分离[代码配置]
- java excel完整实现导入到数据库的功能开发试题导入功能 整合springmvc mybatis 处理
- spring+spring mvc +mybatis+druid 实现数据库主从分离
- Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
- 基于全注解方式实现MyBatis链接数据库的demo
- 基于MyBatis的数据库切分框架,可实现数据的水平切分和垂直切分。 http://www.makersoft.org
- Android使用contentprovide实现对其他应用数据库的读写
- java excel完整实现导入到数据库的功能开发试题导入功能 整合springmvc mybatis 处理