Mybatis实战教程之一开发环境搭建
2015-01-08 11:15
232 查看
在具体做这个实战教程前,首先要对mybatis有个基础的认识。
Old Java Objects,普通的Java对象)映射成数据库中的记录。比hibernate灵活。性能也比hibernate好。
第一步,创建一个名字为MybatisTest的Web Porject项目。
第二步,添加mybatis-3.1.1.jar和mysql-connector-java-5.1.7.jar到MyBatiTest\WebRoot\WEB-INF\lib目录下面。
第三步,在src下创建一个configuration.xml文件。
在configuration.xml文件中里面填写连接数据库的配置
第四步,测试连接数据库。
1)在src下创建一个util包,在其下面再创建一个MyBatisUtil.java的文件
2)编写测试能否加载配置文件,并实例化的对像的代码
5)在项目的src下添加entity包,并在其中创建User.java实体类(与表结构相同)
6)在同目录下,添加UserMapper.xml文件(用来实现刚才的接口类)
8)修改MyBatisUtil.java文件代码,在main方法中添加代码:
现在运行这个程序,是不是得到查询结果了。恭喜你,环境搭建配置成功,接下来第二章,将讲述基于接口的操作方式,增删改查。
整个工程目录结构如下:
什么是mybatis ?
MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis跟hibernate相同,都是通过ORM(对象关系映射)使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(PlanOld Java Objects,普通的Java对象)映射成数据库中的记录。比hibernate灵活。性能也比hibernate好。
开发环境的搭建
我搭建的环境,选择:myeclipse8.5,mysql5.0,jdk1.7,mybatis-3.1.1.jar,tomcat6.0,navicat for Mysql。这些软件工具均可以到各自的官方网站上下载。第一步,创建一个名字为MybatisTest的Web Porject项目。
第二步,添加mybatis-3.1.1.jar和mysql-connector-java-5.1.7.jar到MyBatiTest\WebRoot\WEB-INF\lib目录下面。
第三步,在src下创建一个configuration.xml文件。
在configuration.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="gaoli123"/> </dataSource> </environment> </environments> </configuration>
第四步,测试连接数据库。
1)在src下创建一个util包,在其下面再创建一个MyBatisUtil.java的文件
2)编写测试能否加载配置文件,并实例化的对像的代码
package util; import java.io.IOException; import java.io.Reader; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; /** * 数据库配置类 * @author gaoli * @date 2015-01-08 */ public class MyBatisUtil { private static SqlSessionFactory ssf; static { try { //加载配置文件configuration.xml Reader reader = Resources.getResourceAsReader("configuration.xml"); //实例化SqlSessionFactory对象 ssf = new SqlSessionFactoryBuilder().build(reader); System.out.println(ssf); } catch (IOException e) { System.out.println("找不到该文件,文件加载失败!"); } } public static void main(String[] args) { SqlSession session= ssf.openSession(); System.out.println(session != null); } } 3)执行该类,执行结果为: <pre name="code" class="html">org.apache.ibatis.session.defaults.DefaultSqlSessionFactory@10f35d1 true 这说明已经实例化sqlSessionFactory对象,并且能获取到sqlSession4)使用Navicat添加user表,并向表中添加一条记录
5)在项目的src下添加entity包,并在其中创建User.java实体类(与表结构相同)
package entity; /** * 实体类User,与数据库对应 * @author gaoli * @date 2015-01-08 */ public class User { 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; } @Override public String toString() { return "User [id=" + id + ", password=" + password + ", username=" + username + "]"; } }
6)在同目录下,添加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="dao.UserMapper"> <select id="getById" parameterType="int" resultType="User"> select * from user where id = #{id} </select> </mapper>7)修改configuration.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 type="entity.User"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/&g 4000 t; <property name="url" value="jdbc:mysql://localhost:3306/test"/> <property name="username" value="root"/> <property name="password" value="gaoli123"/> </dataSource> </environment> </environments> <mappers> <mapper resource="dao/UserMapper.xml" /> </mappers> </configuration>
8)修改MyBatisUtil.java文件代码,在main方法中添加代码:
package util; import java.io.IOException; import java.io.Reader; 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 entity.User; /** * 数据库配置类 * @author gaoli * @date 2015-01-08 */ public class MyBatisUtil { private static SqlSessionFactory ssf; static { try { //加载配置文件configuration.xml Reader reader = Resources.getResourceAsReader("configuration.xml"); //实例化SqlSessionFactory对象 ssf = new SqlSessionFactoryBuilder().build(reader); } catch (IOException e) { System.out.println("找不到该文件,文件加载失败!"); } } public static void main(String[] args) { SqlSession session= ssf.openSession(); try{ User user =(User)session.selectOne("dao.UserMapper.getById",1); System.out.println("user:"+user.getUsername()); System.out.println("pass:"+user.getPassword()); }finally{ //session开启后,执行完数据库操作,必须关闭。 session.close(); } } }9)测试数据库的连接,看看是否有正确的返回值:
user:Lina pass:123123
现在运行这个程序,是不是得到查询结果了。恭喜你,环境搭建配置成功,接下来第二章,将讲述基于接口的操作方式,增删改查。
整个工程目录结构如下:
相关文章推荐
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis实战教程一:开发环境搭建
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis实战教程(mybatis in action)之一:开发环境搭建(转)
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis实战教程之开发环境搭建、以接口的方式编程、实现数据的增删改查
- mybatis实战教程(mybatis in action)之一:开发环境搭建
- mybatis3.3+struts2.3.24+mysql5.1.22开发环境搭建图文教程
- 用grunt搭建自动化的web前端开发环境实战教程(详细步骤)
- Windows下Java+MyBatis框架+MySQL的开发环境搭建教程
- 王家林 云计算分布式大数据Hadoop实战高手之路---从零开始 第二讲:全球最详细的从零起步搭建Hadoop单机和伪分布式开发环境图文教程
- MyBatis教程之开发环境搭建和以接口的方式编程
- mybatis基础教程之一:开发环境搭建
- Android开发入门环境快速搭建实战教程
- MyBatis实例教程--开发环境搭建
- 用grunt搭建自动化的web前端开发环境实战教程(详细步骤)
- 王家林 云计算分布式大数据Hadoop实战高手之路---从零开始 第二讲:全球最详细的从零起步搭建Hadoop单机和伪分布式开发环境图文教程
- 文件函数Django1.5实战第一步之搭建环境,创建工程,运行开发服务器Strut2教程-java教程