mybatis-generator【mybatis代码自动生成】
来源:互联网 发布:乐山市人民法院淘宝网 编辑:程序博客网 时间:2024/04/30 10:17
一、简介
mybatis属于半自动的ORM,使用其需要大量的编写Mapping的映射文件xml。因此可能会需要大量的时间,浪费开发时间。mybatis-generator是一个可以方便快速自动生成对应表的mapping映射文件xml。
二、准备
需要三个jar包和一个配置文件xml
下载
三、配置generator
注意:因为mybatis是半自动的,所以数据库必须要有表,所以还是需要手动建表。
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><!-- 数据库驱动包位置 --><classPathEntry location="E:\generator\mysql-connector-java-5.1.24-bin.jar" /> <!-- <classPathEntry location="C:\oracle\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar" />--><context id="DB2Tables" targetRuntime="MyBatis3"><commentGenerator><property name="suppressAllComments" value="true" /></commentGenerator><!-- 数据库链接URL、用户名、密码 --><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8" userId="root" password="12345678"><!-- <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@localhost:1521:orcl" userId="msa" password="msa"> --></jdbcConnection><javaTypeResolver><property name="forceBigDecimals" value="false" /></javaTypeResolver><!-- 生成模型的包名和位置 --><javaModelGenerator targetPackage="com.wuhn.bean" targetProject="D:\Users\Administrator\Workspaces\MyEclipse 10\test\src"><property name="enableSubPackages" value="true" /><property name="trimStrings" value="true" /></javaModelGenerator><!-- 生成的映射文件包名和位置 --><sqlMapGenerator targetPackage="com.wuhn.mapping" targetProject="D:\Users\Administrator\Workspaces\MyEclipse 10\test\src"><property name="enableSubPackages" value="true" /></sqlMapGenerator><!-- 生成DAO的包名和位置 --><javaClientGenerator type="XMLMAPPER" targetPackage="com.wuhn.dao" targetProject="D:\Users\Administrator\Workspaces\MyEclipse 10\test\src"><property name="enableSubPackages" value="true" /></javaClientGenerator><!-- 要生成那些表(更改tableName和domainObjectName就可以) --><table tableName="user_info" domainObjectName="Test" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" /></context></generatorConfiguration>
四、使用
1、在window下操作
2、打开cmd,进入文件夹
3、使用命令
java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite
自动生成三个文件
UserMapper.java
package com.wuhn.dao;import com.wuhn.module.User;public interface UserMapper { int deleteByPrimaryKey(String userid); int insert(User record); int insertSelective(User record); User selectByPrimaryKey(String userid); int updateByPrimaryKeySelective(User record); int updateByPrimaryKey(User record);}
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="com.wuhn.dao.UserMapper" > <resultMap id="BaseResultMap" type="com.wuhn.module.User" > <id column="userid" property="userid" jdbcType="VARCHAR" /> <result column="nickname" property="nickname" jdbcType="VARCHAR" /> <result column="email" property="email" jdbcType="VARCHAR" /> <result column="password" property="password" jdbcType="VARCHAR" /> <result column="name" property="name" jdbcType="VARCHAR" /> <result column="gender" property="gender" jdbcType="INTEGER" /> <result column="birthday" property="birthday" jdbcType="DATE" /> <result column="picture" property="picture" jdbcType="VARCHAR" /> </resultMap> <sql id="Base_Column_List" > userid, nickname, email, password, name, gender, birthday, picture </sql> <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" > select <include refid="Base_Column_List" /> from user where userid = #{userid,jdbcType=VARCHAR} </select> <delete id="deleteByPrimaryKey" parameterType="java.lang.String" > delete from user where userid = #{userid,jdbcType=VARCHAR} </delete> <insert id="insert" parameterType="com.wuhn.module.User" > insert into user (userid, nickname, email, password, name, gender, birthday, picture) values (#{userid,jdbcType=VARCHAR}, #{nickname,jdbcType=VARCHAR}, #{email,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{gender,jdbcType=INTEGER}, #{birthday,jdbcType=DATE}, #{picture,jdbcType=VARCHAR}) </insert> <insert id="insertSelective" parameterType="com.wuhn.module.User" > insert into user <trim prefix="(" suffix=")" suffixOverrides="," > <if test="userid != null" > userid, </if> <if test="nickname != null" > nickname, </if> <if test="email != null" > email, </if> <if test="password != null" > password, </if> <if test="name != null" > name, </if> <if test="gender != null" > gender, </if> <if test="birthday != null" > birthday, </if> <if test="picture != null" > picture, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides="," > <if test="userid != null" > #{userid,jdbcType=VARCHAR}, </if> <if test="nickname != null" > #{nickname,jdbcType=VARCHAR}, </if> <if test="email != null" > #{email,jdbcType=VARCHAR}, </if> <if test="password != null" > #{password,jdbcType=VARCHAR}, </if> <if test="name != null" > #{name,jdbcType=VARCHAR}, </if> <if test="gender != null" > #{gender,jdbcType=INTEGER}, </if> <if test="birthday != null" > #{birthday,jdbcType=DATE}, </if> <if test="picture != null" > #{picture,jdbcType=VARCHAR}, </if> </trim> </insert> <update id="updateByPrimaryKeySelective" parameterType="com.wuhn.module.User" > update user <set > <if test="nickname != null" > nickname = #{nickname,jdbcType=VARCHAR}, </if> <if test="email != null" > email = #{email,jdbcType=VARCHAR}, </if> <if test="password != null" > password = #{password,jdbcType=VARCHAR}, </if> <if test="name != null" > name = #{name,jdbcType=VARCHAR}, </if> <if test="gender != null" > gender = #{gender,jdbcType=INTEGER}, </if> <if test="birthday != null" > birthday = #{birthday,jdbcType=DATE}, </if> <if test="picture != null" > picture = #{picture,jdbcType=VARCHAR}, </if> </set> where userid = #{userid,jdbcType=VARCHAR} </update> <update id="updateByPrimaryKey" parameterType="com.wuhn.module.User" > update user set nickname = #{nickname,jdbcType=VARCHAR}, email = #{email,jdbcType=VARCHAR}, password = #{password,jdbcType=VARCHAR}, name = #{name,jdbcType=VARCHAR}, gender = #{gender,jdbcType=INTEGER}, birthday = #{birthday,jdbcType=DATE}, picture = #{picture,jdbcType=VARCHAR} where userid = #{userid,jdbcType=VARCHAR} </update></mapper>
User.java
package com.wuhn.module;import java.util.Date;public class User { private String userid; private String nickname; private String email; private String password; private String name; private Integer gender; private Date birthday; private String picture; public String getUserid() { return userid; } public void setUserid(String userid) { this.userid = userid == null ? null : userid.trim(); } public String getNickname() { return nickname; } public void setNickname(String nickname) { this.nickname = nickname == null ? null : nickname.trim(); } public String getEmail() { return email; } public void setEmail(String email) { this.email = email == null ? null : email.trim(); } public String getPassword() { return password; } public void setPassword(String password) { this.password = password == null ? null : password.trim(); } public String getName() { return name; } public void setName(String name) { this.name = name == null ? null : name.trim(); } public Integer getGender() { return gender; } public void setGender(Integer gender) { this.gender = gender; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getPicture() { return picture; } public void setPicture(String picture) { this.picture = picture == null ? null : picture.trim(); }}
0 0
- Generator-Mybatis自动生成代码
- MyBatis Generator自动生成代码
- mybatis-generator自动生成代码
- mybatis自动生成代码generator
- MyBatis Generator 自动生成代码
- Mybatis-Generator自动生成代码
- MyBatis-generator 自动生成代码
- mybatis-generator自动生成代码
- mybatis-generator【mybatis代码自动生成】
- MBG(MyBatis Generator):MyBatis自动代码生成;
- mybatis mybatis-generator 代码自动生成工具
- 使用MyBatis-generator 自动生成MyBatis代码
- mybatis mybatis-generator 代码自动生成工具
- [mybatis]-mybatis代码自动生成工具mybatis-generator
- MyBatis使用Generator自动生成代码
- MyBatis使用Generator自动生成代码
- 用mybatis generator自动生成代码
- 使用MyBatis generator自动生成代码
- 老罗的那两年炼就的Android内功修养
- 34. GnuSkies
- C语言创建动态dll,并调用该dll(visual studio 2013环境下)
- Method Swizzling
- 安装n2000 故障处理
- mybatis-generator【mybatis代码自动生成】
- 友元
- android触摸屏事件手势操作滑动处理
- 点击view空白处 隐藏键盘
- 关于CoreLocation
- 程序员找工作,应该怎么应对面试官?
- Objective-C Runtime 运行时之六:拾遗
- PlayFrameWork2eclipse命令无法执行的原因
- 跟我一起写 Makefile