mybatis 简单配置
一.com/book/map包下有两个配置文件:
1.MyBatisConfig.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> <!-- 定义别名 -->
<typeAliases>
<typeAlias alias="bookUser" type="com.book.pojo.bookUser" />
</typeAliases> <!-- 配置环境 -->
<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/wzz"/>
<property name="username" value="root"/>
<property name="password" value="777777"/>
</dataSource>
</environment>
</environments> <!-- 映射路径 -->
<mappers>
<mapper resource="com/book/map/bookmap.xml"/>
<!-- 接口的方式 -->
<mapper class="com.book.map.InterfaceBookUserMap" />
</mappers> </configuration>
2.bookmap.xml 用于写sql语句进行数据库具体操作
<?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="domain.blog.mappers.AutoorMapper">
<!-- parameterType为参数类型,resultType为返回值类型 -->
<select id="findById" parameterType="int" resultType="com.book.pojo.bookUser">
select * from bookuser where id=#{id}
</select> <insert id="insertUser" parameterType="bookUser" statementType="PREPARED"
keyProperty="id" useGeneratedKeys="true">
insert into bookuser (userName,password) values (#{userName},#{password})
</insert> <update id="updateUser" parameterType="bookUser">
update bookuser set
userName=#{userName},
password=#{password}
where id=#{id}
</update> </mapper>
也可以用interface接口的方式取代
package com.book.map;
import org.apache.ibatis.annotations.Delete;
public interface InterfaceBookUserMap {
@Delete("delete from bookuser where id=#{id}")
public void deleteUser(Integer id);
}
二.一个简单java类bookUser
package com.book.pojo;
public class bookUser {
private int id;
private String userName;
private String password;
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;
}
}
三.测试类
package com.book.test; import java.io.IOException;
import java.io.Reader; import org.apache.ibatis.annotations.Update;
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 com.book.map.InterfaceBookUserMap;
import com.book.pojo.bookUser; public class testBook { public static void main(String[] args) { String resource = "com/book/map/MyBatisConfig.xml";
Reader reader = null;
SqlSession session;
try {
reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SqlSessionFactory sqlMapper = new SqlSessionFactoryBuilder().build(reader);
session = sqlMapper.openSession(); //selectone(session);
//insert(session);
//update(session);
delete(session); session.close();
}
public static void selectone(SqlSession session){
bookUser temp = session.selectOne("findById",1);
System.out.print(temp.getUserName());
} public static void insert(SqlSession session){
bookUser bu = new bookUser();
bu.setUserName("wzz");
bu.setPassword("123456");
session.insert("insertUser", bu);
session.commit();
} public static void update(SqlSession session){
bookUser bu = new bookUser();
bu.setUserName("wzz2");
bu.setPassword("111");
bu.setId(1);
session.update("updateUser", bu);
session.commit();
} public static void delete(SqlSession session){
InterfaceBookUserMap idbu = session.getMapper(InterfaceBookUserMap.class);
idbu.deleteUser(1);
session.commit();
}
}
mybatis 简单配置的更多相关文章
- Mybatis缓存(1)--------系统缓存及简单配置介绍
前言 Mybatis的缓存主要有两种: 系统缓存,也就是我们一级缓存与二级缓存: 自定义的缓存,比如Redis.Enhance等,需要额外的单独配置与实现,具体日后主要学习介绍. 在这里主要记录系统缓 ...
- Mybatis框架的简单配置
Mybatis 的配置 1.创建项目(当然,这是废话) 2.导包 下载mybatis-3.2.0版:https://repo1.maven.org/maven2/org/mybatis/mybatis ...
- ssm简单配置
MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架. MyBatis 摒除了大部分的JDBC代码.手工设置参数和结果集重获. MyBatis 只使用简单的XML 和注解来配置和映射 ...
- 学习myBatis - 如何配置myBatis
这篇文章主要学习如何配置myBatis. 要学习新东西要讲究方法,要从三个层面去理解它:它是什么(what),为什么要学它(why),怎么用它(how).有了学习方法学习的效率才高. 1.myBati ...
- SSM ( Spring 、 SpringMVC 和 Mybatis )配置详解
使用 SSM ( Spring . SpringMVC 和 Mybatis )已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没 ...
- Mybatis中配置Mapper的方法
在这篇文章中我主要想讲一下Mybatis配置文件中mappers元素的配置.关于基础部分的内容可以参考http://haohaoxuexi.iteye.com/blog/1333271. 我们知道在M ...
- spring注解开发中常用注解以及简单配置
一.spring注解开发中常用注解以及简单配置 1.为什么要用注解开发:spring的核心是Ioc容器和Aop,对于传统的Ioc编程来说我们需要在spring的配置文件中邪大量的bean来向sprin ...
- MyBatis简单使用
MyBatis MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使 ...
- 笔记:MyBatis XML配置详解
MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配置 properties ...
随机推荐
- asynchronous vs non-blocking
http://stackoverflow.com/questions/2625493/asynchronous-vs-non-blocking In many circumstances they a ...
- geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?
# sample data d <- data.frame(expand.grid(x=letters[1:4], g=factor(1:2)), y=rnorm(8)) # Figure 1a ...
- [数据结构与算法]哈夫曼(Huffman)树与哈夫曼编码
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- python_way ,day11 线程,怎么写一个多线程?,队列,生产者消费者模型,线程锁,缓存(memcache,redis)
python11 1.多线程原理 2.怎么写一个多线程? 3.队列 4.生产者消费者模型 5.线程锁 6.缓存 memcache redis 多线程原理 def f1(arg) print(arg) ...
- T-SQL JOIN
a表name sex张三 男李四 女 b表name age李四 30王五 23 1 全外连接select a.name,a.sex,b.name,b.agefrom a full outer join ...
- jsp get方式请求参数中包含中文乱码问题解决
1. 自己接收到参数之后在后台进行转码处理 2: 修改tomcat的配置文件 server.xml <Connector port="8080" protocol=&quo ...
- Java中枚举类型简单学习
/* * enum类型不允许继承 * 除了这一点,我们基本上可以将enum看作一个常规的类 * 我们可以添加自己的方法与属性,我们也可以覆盖其中的方法. * 不过一定要在enum实例序列的最后添加分号 ...
- iOS - TouchID 指纹识别
前言 NS_CLASS_AVAILABLE(10_10, 8_0) @interface LAContext : NSObject 指纹识别功能是 iPhone 5s 推出的,SDK 是 iOS 8. ...
- iOS - MPMoviePlayer 视频播放
前言 MP_EXTERN_CLASS_AVAILABLE(3_2) NS_DEPRECATED_IOS(3_2, 9_0, "Use AVPlayerViewController in AV ...
- Nginx RTMP 专题
说明: 记录器 - 记录器名称 path - 记录文件路径(recorded file path) (/tmp/rec/mystream-1389499351.flv)filename - 省略目录的 ...