`
kobe学java
  • 浏览: 258001 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Mybaits技术(一) Mybatis入门示例

 
阅读更多

1. 搭建开发环境

(1)新建一个Web工程,名称为MybatisFramework。

 

(2)将以下的JAR放到Web工程的lib下面:

Java代码   收藏代码
  1. mybatis-3.0.6.jar  
  2. og4j-1.2.16.jar  
  3. classes12.jar  

 

(3)在src下面新建log4j.properties文件,该文件的内容如下:

Java代码   收藏代码
  1. log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
  2. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
  3. log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] -%m%n  
  4. log4j.logger.com.ibatis=debug  
  5. log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug  
  6. log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug  
  7. log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug  
  8. log4j.logger.java.sql.Connection=debug  
  9. log4j.logger.java.sql.Statement=debug  
  10. log4j.logger.java.sql.PreparedStatement=debug,stdout  

 

(4)在src下面新建mybatis.cfg.xml文件,该文件的内容如下:

Java代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2.   
  3. <!DOCTYPE configuration PUBLIC   
  4.     "-//mybatis.org//DTD Config 3.0//EN"  
  5.     "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  6.   
  7. <configuration>  
  8.       
  9.     <environments default="development">  
  10.         <environment id="development">  
  11.             <transactionManager type="JDBC" />  
  12.             <dataSource type="POOLED">  
  13.               <property name="driver" value="oracle.jdbc.OracleDriver" />  
  14.               <property name="url" value="jdbc:oracle:thin:@localhost:1521:SID" />  
  15.               <property name="username" value="xxxx" />  
  16.               <property name="password" value="xxxx" />  
  17.             </dataSource>  
  18.         </environment>  
  19.     </environments>  
  20.      
  21.     </configuration>  

 

 

2. 入门示例

(1)在Oracle数据库执行以下SQL,创建一个USER_INFO的表:

Java代码   收藏代码
  1. -- Create table  
  2. create table USER_INFO  
  3. (  
  4.   ID          NUMBER(12) not null,  
  5.   NAME        VARCHAR2(50)  
  6. );  
  7.   
  8. --Insert data  
  9. insert into USER_INFO(ID,NAME) values(1,'张三');  

 

(2)新建一个Java类UserInfo.java,该类的内容如下:

 

Java代码   收藏代码
  1. package com.user;  
  2.   
  3. public class UserInfo {  
  4.     private int id;  
  5.     private String name;  
  6.   
  7.     public UserInfo() {  
  8.     }  
  9.   
  10.     public UserInfo(String name) {  
  11.         this(0, name);  
  12.     }  
  13.   
  14.     public UserInfo(int id, String name) {  
  15.         this.id = id;  
  16.         this.name = name;  
  17.     }  
  18.   
  19.     public int getId() {  
  20.         return id;  
  21.     }  
  22.   
  23.     public void setId(int id) {  
  24.         this.id = id;  
  25.     }  
  26.   
  27.     public String getName() {  
  28.         return name;  
  29.     }  
  30.   
  31.     public void setName(String name) {  
  32.         this.name = name;  
  33.     }  
  34.   
  35.     @Override  
  36.     public String toString() {  
  37.         return "ID: " + id + ", Name: " + name;  
  38.     }  
  39. }  

 

(3)在com.user.sqlmap下面新建UserInfo.xml文件,该文件的内容如下:

 

Java代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2.   
  3. <!DOCTYPE mapper PUBLIC   
  4.     "-//mybatis.org//DTD Mapper 3.0//EN"  
  5.     "http://mybatis.org/dtd/mybatis-3-mapper.dtd">  
  6.   
  7. <mapper namespace="User">  
  8.     <select id="selectUser" parameterType="int" resultType="UserInfo">  
  9.     <![CDATA[  
  10.         select * from user_info where id = #{id}  
  11.     ]]>  
  12.     </select>  
  13. </mapper>  

 

(4)将UserInfo.xml引用到mybatis.cfg.xml文件中,mybatis.cfg.xml文件更新后的内容如下:

Java代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2.   
  3. <!DOCTYPE configuration PUBLIC   
  4.     "-//mybatis.org//DTD Config 3.0//EN"  
  5.     "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  6.   
  7. <configuration>  
  8.     <typeAliases>  
  9.         <typeAlias alias="UserInfo" type="com.user.UserInfo" />  
  10.     </typeAliases>  
  11.       
  12.     <environments default="development">  
  13.         <environment id="development">  
  14.             <transactionManager type="JDBC" />  
  15.             <dataSource type="POOLED">  
  16.               <property name="driver" value="oracle.jdbc.OracleDriver" />  
  17.               <property name="url" value="jdbc:oracle:thin:@localhost:1521:ORACLEDB" />  
  18.               <property name="username" value="oracle" />  
  19.               <property name="password" value="oracle" />  
  20.             </dataSource>  
  21.         </environment>  
  22.     </environments>  
  23.      
  24.     <mappers>  
  25.         <mapper resource="com/user/sqlmap/UserInfo.xml" />  
  26.     </mappers>  
  27. </configuration>  

 

(5)新建一个测试Java类UserInfoTest.java,该类的具体内容如下:

Java代码   收藏代码
  1. package com.user;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.Reader;  
  5.   
  6. import org.apache.ibatis.io.Resources;  
  7. import org.apache.ibatis.session.SqlSession;  
  8. import org.apache.ibatis.session.SqlSessionFactory;  
  9. import org.apache.ibatis.session.SqlSessionFactoryBuilder;  
  10.   
  11.   
  12.   
  13. public class UserInfoTest {  
  14.   
  15.     /** 
  16.      * @param args 
  17.      * @throws IOException  
  18.      */  
  19.     public static void main(String[] args) throws IOException {  
  20.         String resource = "mybatis.cfg.xml";  
  21.         Reader reader = Resources.getResourceAsReader(resource);  
  22.         SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(reader);  
  23.           
  24.         SqlSession session = ssf.openSession();  
  25.           
  26.         try {  
  27.             UserInfo user = (UserInfo) session.selectOne("User.selectUser""1");  
  28.             System.out.println(user);  
  29.         } catch (Exception e) {  
  30.             e.printStackTrace();  
  31.         } finally {  
  32.             session.close();  
  33.         }  
  34.     }  
  35.   
  36. }  

 

(6)右键UserInfoTest 类,选择Run As Application,运行MyBaits操作数据库。

 

Java代码   收藏代码
  1. log4j:WARN No appenders could be found for logger (org.apache.ibatis.logging.LogFactory).  
  2. log4j:WARN Please initialize the log4j system properly.  
  3. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.  
  4. 2012-02-11 21:44:01,750 DEBUG [java.sql.PreparedStatement] -==>  Executing: select * from user_info where id = ?   
  5. 2012-02-11 21:44:01,781 DEBUG [java.sql.PreparedStatement] -==> Parameters: 1(String)  
  6. ID: 1, Name: 张三  

 

分享到:
评论

相关推荐

    Mybatis和Maven简单入门示例

    Mybatis和Maven是Java开发中的两个重要工具...通过这个简单的入门示例,你可以快速掌握Mybatis和Maven的基础用法,并为后续更复杂的项目开发打下基础。记得动手实践,理论与实践相结合才能更好地理解和掌握这些知识点。

    mybatis入门实例(多对一xml)

    在这个“mybatis入门实例(多对一xml)”中,我们将深入探讨如何在MyBatis中处理多对一的关系映射,以及如何通过XML配置文件实现这种映射。 首先,多对一关系指的是在数据库设计中,一个实体(表)可以与多个其他实体...

    springboot-mybatis-demo

    【标题】"springboot-mybatis-demo"是一个演示项目,...对于学习者而言,这个项目提供了一个学习Spring Boot、MyBatis和MySQL集成的起点,并可以通过阅读源码、调试和对比原示例代码来深入理解它们之间的协同工作原理。

    易百mybaits入门项目

    【易百mybatis入门项目】是一个专为初学者设计的学习资源,旨在帮助用户快速掌握MyBatis框架的基础操作。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,避免了几乎所有的JDBC代码和手动...

    MyBaitsPlus快速入门,阿里java技术专家面试.pdf

    在这个快速入门指南中,我们将重点介绍如何使用MyBatisPlus以及在阿里巴巴Java技术专家面试中可能涉及的相关知识点。 首先,`UserMapper`接口是一个典型的MyBatisPlus示例,它继承了`BaseMapper`接口。`BaseMapper`...

    IDEA搭建的一个简单的spring boot+mybatis工程demo

    这个项目是一个适合初学者的入门级示例,它将帮助你理解这两个流行框架的基本集成和使用方法。 **1. Spring Boot简介** Spring Boot是Spring框架的一部分,它提供了一种快速开发Java应用的方式,通过默认配置、...

    springmybatis

    首先建立一个名字为 MyBaits 的 dynamic web project 1. 现阶段,你可以直接建立java 工程,但一般都是开发web项目,这个系列教程最后也是web的,所以一开始就建立web工程。 2. 将 mybatis-3.2.0-SNAPSHOT.jar,...

    MyBatis-Plus 快速入门案例(小白教程)

    本文将指导读者快速入门 MyBatis-Plus,并通过示例代码演示其使用。 一、引言 在学习 MyBatis-Plus 之前,需要掌握数据库相关操作、Java 等相关知识,而且最好熟悉 Mybatis。只有掌握了这些基础知识,才能更好地...

    mybatis学习资料(中英文文档,参数常见配置等

    最后,`mybatis_doc` 可能是一个包含更多MyBatis相关文档或示例的目录,可能包括额外的教程、案例研究或特定问题的解决方案。这个目录下的内容有助于深入理解和应用MyBatis,解决实际开发中的问题。 学习MyBatis时...

    整合maven +springmvc+mybaits+echarts项目

    "整合maven +springmvc+mybaits+echarts项目"是这样的一个示例,它演示了如何将这些流行的技术栈有效地组合在一起,以实现一个功能丰富的Web应用。让我们详细探讨一下这个项目中的关键知识点。 首先,Maven是Java...

    MyBatis 3 User Guide Simplified Chinese.pdf

    - **核心对象**:每一个MyBatis应用程序的核心都是一个`SqlSessionFactory`对象实例。该实例可以通过`SqlSessionFactoryBuilder`对象创建。 - **创建方式**:`SqlSessionFactoryBuilder`可以从XML配置文件或预先准备...

Global site tag (gtag.js) - Google Analytics