记录Mybatis环境搭建过程,对于该框架的功能、优缺点、原理就不再重复。
废话少说开始上步骤:
1、新建工程(java和web项目都可以,这里使用web项目)这里开发工具使用eclipse
2、下载框架所需jar包,这里使用老版本jar包3.2.7(最新为3.4.2)。
使用jar包链接:http://files.cnblogs.com/files/ysj4428/jar.rar
3、配置Mybatis日志目录,用于打印日志(注意名字和里面内容别弄错了)
源码如下(这个粘贴复制即可)
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
4、配置全局xml配置SqlMapConfig.xml,整个框架围绕这个主要配置。他是连接数据库的入口
其中数据库连接池那里自己对照JDBC对value值进行修改即可
其余不变。改driver,url,username,password即可
我的源码如下
<?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="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="???????不能写哦" />
<property name="username" value="crpm" />
<property name="password" value="crpm" />
</dataSource>
</environment>
</environments>
</configuration>
5、环境搭建基本完成下面进行表的映射。测试是否能在数据库取数据
a、在src目录下新建一个folder(文件夹)名称自定(我的用sqlMap。用于存放映射XML)
b、在该文件夹下新建一个xml(我的叫table1.xml针对要操作的表,该xml里面映射对该表的增删改查等操作)。到此刻项目结构如图(servlet忽略啊,那个是自己项目用的)
c、table1.xml文件中主要写SQL语句,我这里进行简单的查询语句
解释:namespace:随便起一个,后面用处再说
id:这个也可以随便起,不过最好能通过名字知道其含义
parameterType:传入参数类型,如果是对象,把你自定义的类包括类名写进去。
resultType:返回值类型
对于删改查操作只是改变其标签。
d、下面写实现类(原则是创建一个会话工厂-创建会话-调用语句)
package com.ahzx.daoImp; import java.io.IOException; import java.io.InputStream; 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.ahzx.dao.ChartDao; import com.ahzx.entity.Example; public class ChartDaoImp implements ChartDao{ //建立一个会话工厂 private SqlSessionFactory sqlSessionFactory; @Override
//这里实现调用并返回 public Example getSelectCustomerName(String docno) { SqlSession session=sqlSessionFactory.openSession(); Example exam=session.selectOne("test.getSelectCustomerName",docno); return exam; }
//构造方法加载工厂初始化方法 public ChartDaoImp(){ createFactory(); } //对象工厂初始化 public void createFactory(){ //读取配置文件 String resource="SqlMapConfig.xml"; InputStream in; try { in = Resources.getResourceAsStream(resource); sqlSessionFactory=new SqlSessionFactoryBuilder().build(in); } catch (IOException e) { e.printStackTrace(); } } }
e、写一个main方法调用一下这个类就可以完成测试了
package com.ahzx.demo; import com.ahzx.daoImp.ChartDaoImp; import com.ahzx.entity.Example; public class Test { public static void main(String[] args) {
//Example类就是自己定义的一个实体类,即和表中字段一 一对应的 String docno="BG2016111400000050"; ChartDaoImp chartdaoimp=new ChartDaoImp(); Example exam=chartdaoimp.getSelectCustomerName(docno); System.out.println(exam.getObjectname()); } }
好的一个简单的Mybatis使用就完成了,如果需要测试把表名之类的换掉就OK了。下面把整个工程法放入下载直接导入即可。里面的
HTML和Servlet不要管,那是无用的。
工程地址:http://files.cnblogs.com/files/ysj4428/Echarts.rar