mybatis常用jdbcType数据类类型对照表

MyBatis 通过包含的jdbcType类型

BIT         FLOAT      CHAR           TIMESTAMP       OTHER       UNDEFINED

TINYINT     REAL       VARCHAR        BINARY          BLOB        NVARCHAR

SMALLINT    DOUBLE     LONGVARCHAR    VARBINARY       CLOB        NCHAR

INTEGER     NUMERIC    DATE           LONGVARBINARY   BOOLEAN     NCLOB

BIGINT      DECIMAL    TIME           NULL            CURSOR

 

MybatisjavaTypejdbcType对应和CRUD例子

Xml代码   收藏代码
  1. <resultMap type="java.util.Map" id="resultjcm">  
  2.   <result property="FLD_NUMBER" column="FLD_NUMBER"  javaType="double" jdbcType="NUMERIC"/>  
  3.   <result property="FLD_VARCHAR" column="FLD_VARCHAR" javaType="string" jdbcType="VARCHAR"/>  
  4.   <result property="FLD_DATE" column="FLD_DATE" javaType="java.sql.Date" jdbcType="DATE"/>  
  5.   <result property="FLD_INTEGER" column="FLD_INTEGER"  javaType="int" jdbcType="INTEGER"/>  
  6.   <result property="FLD_DOUBLE" column="FLD_DOUBLE"  javaType="double" jdbcType="DOUBLE"/>  
  7.   <result property="FLD_LONG" column="FLD_LONG"  javaType="long" jdbcType="INTEGER"/>  
  8.   <result property="FLD_CHAR" column="FLD_CHAR"  javaType="string" jdbcType="CHAR"/>  
  9.   <result property="FLD_BLOB" column="FLD_BLOB"  javaType="[B" jdbcType="BLOB" />  
  10.   <result property="FLD_CLOB" column="FLD_CLOB"  javaType="string" jdbcType="CLOB"/>  
  11.   <result property="FLD_FLOAT" column="FLD_FLOAT"  javaType="float" jdbcType="FLOAT"/>  
  12.   <result property="FLD_TIMESTAMP" column="FLD_TIMESTAMP"  javaType="java.sql.Timestamp" jdbcType="TIMESTAMP"/>  
  13.  </resultMap>  

 

 

MybatisjavaTypejdbcType对应关系

 

Notepad代码   收藏代码
  1. JDBC Type           Java Type  
  2. CHAR                String  
  3. VARCHAR             String  
  4. LONGVARCHAR         String  
  5. NUMERIC             java.math.BigDecimal  
  6. DECIMAL             java.math.BigDecimal  
  7. BIT             boolean  
  8. BOOLEAN             boolean  
  9. TINYINT             byte  
  10. SMALLINT            short  
  11. INTEGER             int  
  12. BIGINT              long  
  13. REAL                float  
  14. FLOAT               double  
  15. DOUBLE              double  
  16. BINARY              byte[]  
  17. VARBINARY           byte[]  
  18. LONGVARBINARY               byte[]  
  19. DATE                java.sql.Date  
  20. TIME                java.sql.Time  
  21. TIMESTAMP           java.sql.Timestamp  
  22. CLOB                Clob  
  23. BLOB                Blob  
  24. ARRAY               Array  
  25. DISTINCT            mapping of underlying type  
  26. STRUCT              Struct  
  27. REF                         Ref  
  28. DATALINK            java.net.URL[color=red][/color]  
 
整合SpringMVC和MyBatis是Spring Boot的一个常见应用场景。下面是整合SpringMVC和MyBatis的步骤: 1. 创建一个Spring Boot项目,可以使用Spring Initializr快速创建一个Maven项目。 2. 在pom.xml文件中添加Spring MVC和MyBatis的依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> ``` 3. 在src/main/resources目录下创建application.properties文件,并添加以下内容: ```properties # 数据源配置 spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver # MyBatis配置 mybatis.type-aliases-package=com.example.model mybatis.mapper-locations=classpath:mapper/*.xml ``` 4. 在src/main/java目录下创建一个Model类,用于映射数据库表: ```java public class User { private Long id; private String name; private Integer age; // 省略getter和setter方法 } ``` 5. 在src/main/java目录下创建一个Mapper接口,用于定义数据库操作方法: ```java public interface UserMapper { List<User> getAll(); User getById(Long id); void insert(User user); void update(User user); void delete(Long id); } ``` 6. 在src/main/resources目录下创建一个mapper目录,并在其中创建一个userMapper.xml文件,用于编写SQL语句: ```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.example.mapper.UserMapper"> <resultMap id="BaseResultMap" type="com.example.model.User"> <id column="id" property="id" jdbcType="BIGINT" /> <result column="name" property="name" jdbcType="VARCHAR" /> <result column="age" property="age" jdbcType="INTEGER" /> </resultMap> <select id="getAll" resultMap="BaseResultMap"> SELECT id, name, age FROM user </select> <select id="getById" resultMap="BaseResultMap" parameterType="java.lang.Long"> SELECT id, name, age FROM user WHERE id = #{id} </select> <insert id="insert" parameterType="com.example.model.User"> INSERT INTO user(name, age) VALUES(#{name}, #{age}) </insert> <update id="update" parameterType="com.example.model.User"> UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id} </update> <delete id="delete" parameterType="java.lang.Long"> DELETE FROM user WHERE id = #{id} </delete> </mapper> ``` 7. 在src/main/java目录下创建一个Controller类,用于处理HTTP请求: ```java @RestController public class UserController { @Autowired private UserMapper userMapper; @RequestMapping("/users") public List<User> getAllUsers() { return userMapper.getAll(); } @RequestMapping("/user/{id}") public User getUserById(@PathVariable("id") Long id) { return userMapper.getById(id); } @RequestMapping(value = "/user", method = RequestMethod.POST) public void insertUser(@RequestBody User user) { userMapper.insert(user); } } ``` 8. 启动应用程序,访问http://localhost:8080/users,应该可以看到用户列表。接下来,可以使用Postman等工具向http://localhost:8080/user发送POST请求,插入一个新用户。 以下是实现插入用户的功能的截图: 1. 使用Postman发送POST请求插入新用户: ![](https://img-blog.youkuaiyun.com/20180803170526789?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lvdXJfYnVja2V0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80) 2. 访问http://localhost:8080/users,可以看到新用户已经插入成功: ![](https://img-blog.youkuaiyun.com/20180803170642754?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lvdXJfYnVja2V0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值