MyBatis 入门(一)--建立数据库连接及基本操作
来源:互联网 发布:解压加密文件数据错误 编辑:程序博客网 时间:2024/05/20 13:37
一、 数据库建表
CREATE TABLE `user` ( `userId` int(11) NOT NULL AUTO_INCREMENT, `UserName` varchar(45) NOT NULL, `UserEmail` varchar(200) NOT NULL, PRIMARY KEY (`userId`), UNIQUE KEY `userId_UNIQUE` (`userId`)) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
二、maven配置
<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.6</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>c3p0</groupId> <artifactId>c3p0</artifactId> <version>0.9.1.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.2</version> </dependency> </dependencies>
三、mybasit 配置
- jdbc.properties 配置 数据连接
driver=com.mysql.cj.jdbc.Driverurl=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8&useSSL=true&serverTimezone=UTCusername=mybatispassword=mybatismaxActive= 50
- mybatis-config.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> <properties resource="jdbc.properties" /> <environments default="dev"> <environment id="dev"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="${driver}" /> <property name="url" value="${url}" /> <property name="username" value="${username}" /> <property name="password" value="${password}" /> </dataSource> </environment> </environments> <mappers> </mappers></configuration>
四、建立User的POJO
package com.elements.user.model;public class User { public int getUserId() { return userId; } public void setUserId(int userId) { this.userId = userId; } public String getUserName() { return UserName; } public void setUserName(String userName) { UserName = userName; } public String getUserEmail() { return UserEmail; } public void setUserEmail(String userEmail) { UserEmail = userEmail; } private int userId; private String UserName; private String UserEmail; @Override public String toString() { return "User [userId=" + userId + ", UserName=" + UserName + ", UserEmail=" + UserEmail + "]"; }}
五、 UserMapper配置文件
- UserMapper 配置文件
<?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.elements.user.mapper"> <resultMap type="com.elements.user.model.User" id="usermap"> <id column="userId" property="userId"/> <result column="UserName" property="UserName"/> <result column="UserEmail" property="UserEmail"/> </resultMap> <select id="getAllUser" resultMap="usermap"> select * from mybatis.user </select> <select id="getUserById" resultMap="usermap" parameterType="String"> select * from mybatis.user where userId= #{userId} </select> <insert id="insert" parameterType="com.elements.user.model.User"> insert into mybatis.user (UserName, UserEmail) values ( #{UserName}, #{UserEmail} ) </insert> <update id="update" parameterType="com.elements.user.model.User"> update mybatis.user set UserName=#{UserName}, UserEmail=#{UserEmail} where userId= #{userId} </update> <delete id="delete" parameterType="String"> delete mybatis.user where userId= #{userId} </delete></mapper>
- 将配置文件加入mybatis-config.xml的 mappers中
<mappers> <mapper resource="com/elements/user/mapper/UserMapper.xml" /> </mappers>
六、 建立测试类
public class TestUser { @Test public void TestSelectAll() throws IOException { // String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(inputStream); SqlSession session = sqlSessionFactory.openSession(); try { List<User> userlist = session .selectList("com.elements.user.mapper.getAllUser"); System.out.print(userlist); }catch(Exception e){ System.out.print(e); } finally { session.close(); } } @Test public void TestSelect() throws IOException { // String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(inputStream); SqlSession session = sqlSessionFactory.openSession(); try { User user = (User) session.selectOne( "com.elements.user.mapper.getUserById", "1"); System.out.print(user); } finally { session.close(); } } @Test public void TestInsert() throws IOException { String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(inputStream); SqlSession session = sqlSessionFactory.openSession(); try { User user = new User(); user.setUserName("abc"); user.setUserEmail("aaaaa"); session.update("com.elements.user.mapper.insert", user); session.commit(); } finally { session.close(); } } @Test public void TestUpdate() throws IOException { String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(inputStream); SqlSession session = sqlSessionFactory.openSession(); try { User user = new User(); user.setUserId(7); user.setUserName("aaaaa"); user.setUserEmail("aaaaa"); session.update("com.elements.user.mapper.update", user); session.commit(); } finally { session.close(); } }}
项目代码下载:http://pan.baidu.com/s/1kUGD61D
0 0
- MyBatis 入门(一)--建立数据库连接及基本操作
- (复习)数据库连接及基本操作
- python mysql数据库连接及基本操作
- MyBatis入门配置及操作
- mybatis入门-实现基本CRUD操作
- Neo4j入门一基本操作
- github入门及基本操作
- MyBatis入门(一)---基本使用
- Mybatis入门配置及基本查询
- 【Spring+MyBatis+MySQL实战入门】一、MyBatis操作入门
- MyBatis(一) 入门案例实现CRUD操作
- 数据库连接与基本操作
- 数据库连接 基本操作
- C#数据库连接基本操作
- ADO.NET与外部数据库连接及查询等基本操作
- 【Mybatis】(一)简介及入门
- Mybatis总结(一)--初始Mybatis及入门程序
- numpy基本入门操作汇总一
- Alamofire post header json
- OpenCV学习笔记_图像扭曲及旋转操作
- 查看 MySQL 数据库中每个表占用的空间大小
- old bill
- 《权力与纷争-Shiro》-Know your own weapons
- MyBatis 入门(一)--建立数据库连接及基本操作
- tomcat启动超时 eclipse
- 面试杂谈
- iOS开发多线程篇—GCD的常见用法
- Hibernate的数据库操作
- MySQL查询缓存设置提高MySQL查询性能
- Oracle 解决ORA-28000: the account is locked
- C语言(数组啥时候变指针)
- Activity和fragment生命周期总结