首页 > 其他 > 详细

mybatis

时间:2017-10-23 23:56:23      阅读:340      评论:0      收藏:0      [点我收藏+]

1配置SqlMapConfig.xml文件

<?xml version="1.0" encoding="UTF-8"?>

//上面为xml自带,创建时产生
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">

//这些事sqlmapconfig文件创建配置

文件名字不能更改

2.主体部分

<configuration>写在这个配置环境里面

1,1<properties resource="datasource.properties"></properties>

传入sql语句所必要的路径 用户名和密码

配置所需的主要实现内容 具体什么代表什么我也不是很清楚 不懂的查英语单词

<configuration>
<properties resource="datasource.properties"></properties>
<typeAliases>
<package name="com.wode.bean"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/wode/mapper/Usermapper.xml"/>
<mapper resource="com/wode/mapper/BookMapper.xml"/>
</mappers>
</configuration>

技术分享技术分享

技术分享

2.配置通用语句实现类

先建立sessionFactory然后通过静态块来实现 最后输出语句

private static SqlSessionFactory sessionFactory;
static{
InputStream in =null;
try {
in = Resources.getResourceAsStream("SqlMapConfig.xml");
sessionFactory = new SqlSessionFactoryBuilder().build(in);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {

if(in!=null)
in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static SqlSession getSession(){
return sessionFactory.openSession();
}

技术分享

 

3需要建立一个mapper来映射

接口和xml的文件名字必须相同

public int addbook(@Param("id")int id,@Param("name")String name,@Param("type")String type);
public int updatebook(@Param("Book")Book book);
public List<Book> selectAll();
在创建文件的 时候 如果是基本数据类型 就不用@Param    如果是混和类型就吧参数都要配置@Param "里面是设置的值" 在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="com.wode.mapper.Bookmapper">
<resultMap type="Book" id="BookMap">
<id property="boooId" column = "id" javaType="int"/>
<result property="bookName" column = "book_name" javaType="java.lang.String"/>
<result property="bookType" column = "book_type" javaType="java.lang.String"/>
<result property="bookPrice" column = "book_price" javaType="int"/>

</resultMap>
<insert id="addbook" parameterType="Book">
insert into book values(#{id},#{name},#{type},12)
</insert>
<update id="updatebook" parameterType="Book">
update book set book_name=#{Book.bookName},book_type=#{Book.bookType} where id=#{Book.boooId}
</update>
<select id="selectAll" resultMap="BookMap">
select * from Book
</select>
</mapper>

 

xml需要注意mapper的namespace="com.wode.mapper.Bookmapper  这个路径必须一致

<resultMap type="Book" id="BookMap">
<id property="boooId" column = "id" javaType="int"/>
<result property="bookName" column = "book_name" javaType="java.lang.String"/>
<result property="bookType" column = "book_type" javaType="java.lang.String"/>
<result property="bookPrice" column = "book_price" javaType="int"/>

配置一个bean 所需要返回的对象 parameterType="Book"和上面的id保持一致就可以应用

sql语句的配置 需要注意里面的参数需要用#{} 里面加名字来代替

#{} 和${}这两种都可以使用

但是区别很大

#{}这个在sql语句中解析出来相当于带有“ ”来使用

${}解析出来则是没有带“” 使用时需要注意这个问题  尽量少用 需要再用

然后最需要注意的就是单词别写错 很忧伤

mybatis

原文:http://www.cnblogs.com/sgdx7777/p/7719787.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!