mybatis访问Oracle

论坛 期权论坛 脚本     
匿名技术用户   2021-1-6 01:51   18   0

首先添加maven支持,pom.xml添加如下内容

<dependency>  
    <groupId>org.mybatis</groupId>  
    <artifactId>mybatis</artifactId>  
    <version>3.1.1</version>  
</dependency>  
<dependency>    
    <groupId>com.oracle</groupId> 
    <artifactId>ojdbc14</artifactId> 
    <version>10.2.0.1.0</version> 
</dependency>  

然后添加3个*.java文件

User.java

package com.southgis.scout.demo;

/**
 * 用户类
 * 
 * @author lmc
 * 
 */
public class User {
 private String name;
 private Integer age;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public Integer getAge() {
  return age;
 }
 public void setAge(Integer age) {
  this.age = age;
 }
 public User() {
 }

}


UserMapper.java

package com.southgis.scout.demo;

import com.southgis.scout.demo.User;

public interface UserMapper {
 public User findById(String Id);
}


main.java

package com.southgis.scout.demo;

import java.io.IOException;  

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.southgis.scout.demo.UserMapper;  
import com.southgis.scout.demo.User;  
public class main {
 
 /**
  * 获得MyBatis SqlSessionFactory  
  * SqlSessionFactory负责创建SqlSession,一旦创建成功,就可以用SqlSession实例来执行映射语句,commit,rollback,close等方法。
  * @return
  */
 private static SqlSessionFactory getSessionFactory() {
  SqlSessionFactory sessionFactory = null;
  String resource = "configuration.xml";
  try {
   sessionFactory = new SqlSessionFactoryBuilder().build(Resources
     .getResourceAsReader(resource));
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return sessionFactory;
 }

 public static void main(String[] args) {
  SqlSession sqlSession = getSessionFactory().openSession();
  UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
  User user = userMapper.findById("20");
  System.out.println(user.getName());
 }
 
 public main() {
  super();
 }

}

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>
  <!--给实体类起一个别名 user -->
  <typeAlias type="com.southgis.scout.demo.User" alias="User" />
 </typeAliases>
 <!--数据源配置  这块用 Oracle数据库 -->
 <environments default="development">
  <environment id="development">
   <transactionManager type="jdbc" />
   <dataSource type="POOLED">
    <property name="driver" value="oracle.jdbc.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@192.168.56.102:1521:orcl" />
    <property name="username" value="scott" />
    <property name="password" value="tiger" />
   </dataSource>
  </environment>
 </environments>
 <mappers>
  <!--userMapper.xml装载进来  同等于把“dao”的实现装载进来 -->
  <mapper resource="userMapper.xml" />
 </mappers>
</configuration> 


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">
 <!--这块等于dao接口的实现  namespace必须和接口的类路径一样-->
<mapper namespace="com.southgis.scout.demo.UserMapper">
 <!-- findById必须和接口中的方法名一样  返回一个User  就是刚才的别名  如果不弄别名要连类路径一起写 麻烦-->
 <select id="findById" parameterType="HashMap" resultType="User">
  select
  dname as name from dept where deptno=#{id}
    </select>
</mapper>

xml文件在资源文件夹下src\main\resources


要深入使用mytabis请看http://blog.csdn.net/liumengcheng/article/details/34422475

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP