MyBatis(一)helloWorld程序
一、准备两个jar包,第一个:下载myBatis-3.3.1.jar,这里是在CSDN网站处下载的,因为官网打不开。第二个:mysql-connector-java-5.0.8-bin.jar,这个jar包是mysql的驱动。将这两个jar包导入到项目中.(注:除此外,还需要导入log4j的jar包,练习时采用的log4j-1.2.13.jar)
二、创建Java项目(这里暂时没用web开发),在src下面创建两个包,分别为com.tinaluo.sun,org.fkit.mapper,因为创建例子的时候比较仓促,所以创建包时比较随意,可以自行整理。
在com.tinaluo.sun包下面,创建两个java文件,分别为test.java,User.java。其中test.java是主程序入口,User.java为映射表的POJO。
在org.fkit.mapper包下面,创建一个UserMapper.xml文件,表示映射关系文件。
三、在src文件夹下创建mybatis-config.xml配置文件,说明mybatis的全局配置。
——附带log4j.properties
log4j.rootLogger=DEBUG, stdout log4j.logger.org.fkit.mapper.UserMapper=DEBUG
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%c{1} - %m%n
项目目录层次如下:

————————————————————————————————————————————————————
各文件源码如下:
test.java
//程序入口 package com.tinaluo.sun; import java.io.*; import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*; public class test { public static void main(String[] args) {
InputStream inputstream=null;
try {
inputstream = Resources.getResourceAsStream("mybatis-config.xml");
} catch (IOException e) {
e.printStackTrace();
}
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder()
.build(inputstream);
SqlSession session=sqlSessionFactory.openSession();
User user=new User("admin","男",26);
session.insert("org.fkit.mapper.UserMapper.save",user);
session.commit();
session.close();
} }
User.java
package com.tinaluo.sun;
public class User {
private Integer id;
private String name;
private String sex;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public User() {
super();
// TODO 自动生成的构造函数存根
}
public User(String name, String sex, Integer age) {
super();
this.name = name;
this.sex = sex;
this.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="org.fkit.mapper.UserMapper">
<insert id="save" parameterType="com.tinaluo.sun.User"
useGeneratedKeys="true">
insert into tb_user(name,sex,age) values(#{name},#{sex},#{age})
</insert>
</mapper>
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">
<!--通过这个配置文件,完成mybatis与数据库的连接 -->
<configuration> <environments default="mysql">
<environment id="mysql">
<!-- 配置事务管理 ,采用JDBC管理事务 -->
<transactionManager type="JDBC" />
<!-- POOLED是mybatis的 数据源 -->
<!-- JNDI是基于tomcat的数据源 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis" />
<property name="username" value="root" />
<property name="password" value="123" />
</dataSource>
</environment>
</environments> <!-- pojo的映射文件UserMapper引入到配入到配置文件中 -->
<mappers>
<!-- resource要写成路径 -->
<mapper resource="org/fkit/mapper/UserMapper.xml" />
</mappers>
</configuration>
MyBatis(一)helloWorld程序的更多相关文章
- Mybatis之入门Helloworld程序
本篇我们来实现一个Mybatis的Helloworld级别的一个示例程序. 一.搭建基本环境 1.基本开发环境搭建,这里选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.8,m ...
- OGRE启动过程详解(OGRE HelloWorld程序原理解析)
本文介绍 OGRE 3D 1.9 程序的启动过程,即从程序启动到3D图形呈现,背后有哪些OGRE相关的代码被执行.会涉及的OGRE类包括: Root RenderSystem RenderWindow ...
- Bullet核心类介绍(Bullet 2.82 HelloWorld程序及其详解,附程序代码)
实验平台:win7,VS2010 先上结果截图: 文章最后附有生成该图的程序. 1. 刚体模拟原理 Bullet作为一个物理引擎,其任务就是刚体模拟(还有可变形体模拟).刚体模拟,就是要计算预测物体的 ...
- Android Studio新建一个HelloWorld 程序(App)
Android Studio新建一个HelloWorld程序(App) 新建 或者直接启动程序(注:如果已有程序,此方法会直接打开最近一次关闭从程序) 更改App名 选择App运行平台 选择模板 更改 ...
- Helloworld程序的创建以及配置文件的讲解
创建项目. create Project 选择创建的Project类别以及使用的SDK,可能SDK需要配置或者修改配置. 这个页面是问你是否使用模板创建. Command Line App 会自动创建 ...
- Java 解析epub格式电子书,helloWorld程序,附带源程序和相关jar包
秀才坤坤出品 一.epub格式电子书 相关材料和源码均在链接中可以下载:http://pan.baidu.com/s/1bnm8YXT 包括 1.JAVA项目工程test_epub,里面包括了jar包 ...
- 对类HelloWorld程序中添加一个MessageBox弹窗
对类HelloWorld程序中添加一个MessageBox弹窗 分析: 任一程序运行的时候都会加载kernel32.dll的,但MessageBoxA()这个API却是在user32.dll中的.所以 ...
- hibernate ——helloWorld程序(annotation配置)
在 <hibernate ——helloWorld程序(XML配置)>基础上,修改.添加部分文件: 1.Teacher类和Teacher表 package com.pt.hiberna ...
- Node.js入门以及第一个helloworld程序
1.概念:简单的说 Node.js 就是运行在服务端的 JavaScript.学之前需要明白Node.js是无法挑战jsp.php或者asp这种老牌网站的地位的,是永远不会出现在证券.金融这种领域的. ...
- SpringMVC基础入门,创建一个HelloWorld程序
ref:http://www.admin10000.com/document/6436.html 一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要 ...
随机推荐
- go语言中的并发
package main; import ( "fmt" "runtime" "sync" ) //goruntine奉行通过通信来共享内存 ...
- 1到n的整数中,1出现的次数
参考链接:https://discuss.leetcode.com/topic/18054/4-lines-o-log-n-c-java-python 1到n的整数中,1出现的次数,如11中,1出现了 ...
- VS新建API控制器时提示“运行所选代码生成器时出错”
使用Nuget安装microsoft.entityframeworkcore.tools这个包就行了,安装时注意版本. 根据下图提示应该是新建控制器时用到了这个包,所以安装一下就好了.之前遇到过一次, ...
- js中被调用的函数获取调用者对象
通过event.srcElement即可.一直用了很久的传参,终于解决了.
- Thrift.1
1. 依据thrift生成相对应语言的代码 [Ref]: http://wiki.apache.org/thrift/ThriftGeneration [Todo] 2. 如何使用生成的代码 [Ref ...
- c++文件的输入输出
emmm,错误地方还请指出(以下代码复制粘贴会报错,我用codeblocks测试过,不知道为什么qaq) 头文件#include < fstream > 这里ofstream是" ...
- asio的网络通讯代码练手
asio的网络基本模板(单例模式 消息队列 ) // MyAsio.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" #include < ...
- robotframework 运行集合
Robot Framework 运行测试通过 pybot 命令,检查 _C:\Python36\Scripts_ 目录下是否有 pybot.bat 文件,正确安装 Robot Framework 一定 ...
- SLI的相关学习
今天帮人安装前年的机皇-微星GT80S的操作系统,安装好后用鲁大师测试下跑分,发现双显卡和单显卡鲁大师的跑分竟然一样,就像副显卡根本没有工作,听主人所这台机器能跑到36万以上. 然后就苦逼的尝试,把B ...
- thinkphp5 数据库和模型
1.Db和模型的存在只是ThinkPHP5.0架构设计中的职责和定位不同,Db负责的只是数据(表)访问,模型负责的是业务数据和业务逻辑.2.Db和模型最明显的一个区别就是Db查询返回的数据类型为数组( ...