当前位置:Gxlcms > 数据库问题 > Mybatis基于注解的方式访问数据库

Mybatis基于注解的方式访问数据库

时间:2021-07-01 10:21:17 帮助过:4人阅读

package com.disappearwind.service; 2 3 import org.springframework.beans.factory.annotation.Autowired; 4 import org.springframework.stereotype.Repository; 5 import org.springframework.stereotype.Service; 6 7 import com.disappearwind.mapper.UserInfoMapper; 8 import com.disappearwind.model.UserInfo; 9 10 11 /** 12 * 用户service 13 * 14 */ 15 @Service 16 @Repository 17 public class UserInfoService{ 18 19 @Autowired 20 private UserInfoMapper userInfoMapper; 21 22 public UserInfo selectByPrimaryKey(Integer id){ 23 return userInfoMapper.selectByPrimaryKey(id); 24 } 25 } UserInfoService

2. Mapper层申明

技术分享
  1. <span style="color: #008080;">1</span> <span style="color: #0000ff;">package</span><span style="color: #000000;"> com.disappearwind.mapper;
  2. </span><span style="color: #008080;">2</span>
  3. <span style="color: #008080;">3</span> <span style="color: #0000ff;">import</span><span style="color: #000000;"> com.disappearwind.model.UserInfo;
  4. </span><span style="color: #008080;">4</span>
  5. <span style="color: #008080;">5</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">interface</span><span style="color: #000000;"> UserInfoMapper {
  6. </span><span style="color: #008080;">6</span> <span style="color: #000000;"> UserInfo selectByPrimaryKey(Integer id);
  7. </span><span style="color: #008080;">7</span> }
UserInfoMapper

3. mpper.xml配置文件

技术分享
  1. <span style="color: #008080;"> 1</span> <span style="color: #0000ff;"><?</span><span style="color: #ff00ff;">xml version="1.0" encoding="UTF-8" </span><span style="color: #0000ff;">?></span>
  2. <span style="color: #008080;"> 2</span> <span style="color: #0000ff;"><!</span><span style="color: #ff00ff;">DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" </span><span style="color: #0000ff;">></span>
  3. <span style="color: #008080;"> 3</span>
  4. <span style="color: #008080;"> 4</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">mapper </span><span style="color: #ff0000;">namespace</span><span style="color: #0000ff;">="com.disappearwind.mapper.UserInfoMapper"</span> <span style="color: #0000ff;">></span>
  5. <span style="color: #008080;"> 5</span>
  6. <span style="color: #008080;"> 6</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">resultMap </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">="BaseResultMap"</span><span style="color: #ff0000;"> type</span><span style="color: #0000ff;">="com.disappearwind.model.UserInfo"</span><span style="color: #0000ff;">></span>
  7. <span style="color: #008080;"> 7</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">id </span><span style="color: #ff0000;">column</span><span style="color: #0000ff;">="UserInfoID"</span><span style="color: #ff0000;"> property</span><span style="color: #0000ff;">="userinfoid"</span><span style="color: #ff0000;"> jdbcType</span><span style="color: #0000ff;">="INTEGER"</span> <span style="color: #0000ff;">/></span>
  8. <span style="color: #008080;"> 8</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">result </span><span style="color: #ff0000;">column</span><span style="color: #0000ff;">="Name"</span><span style="color: #ff0000;"> property</span><span style="color: #0000ff;">="username"</span><span style="color: #ff0000;"> jdbcType</span><span style="color: #0000ff;">="VARCHAR"</span> <span style="color: #0000ff;">/></span>
  9. <span style="color: #008080;"> 9</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">result </span><span style="color: #ff0000;">column</span><span style="color: #0000ff;">="Phone"</span><span style="color: #ff0000;"> property</span><span style="color: #0000ff;">="phone"</span><span style="color: #ff0000;"> jdbcType</span><span style="color: #0000ff;">="CHAR"</span> <span style="color: #0000ff;">/></span>
  10. <span style="color: #008080;">10</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">result </span><span style="color: #ff0000;">column</span><span style="color: #0000ff;">="Pwd"</span><span style="color: #ff0000;"> property</span><span style="color: #0000ff;">="pwd"</span><span style="color: #ff0000;"> jdbcType</span><span style="color: #0000ff;">="CHAR"</span> <span style="color: #0000ff;">/></span>
  11. <span style="color: #008080;">11</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">resultMap</span><span style="color: #0000ff;">></span>
  12. <span style="color: #008080;">12</span>
  13. <span style="color: #008080;">13</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">sql </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">="Base_Column_List"</span><span style="color: #0000ff;">></span>
  14. <span style="color: #008080;">14</span> <span style="color: #000000;"> UserInfoID, Name, Type, TypeRemark, HeadUrl,BigImgUrl,GreatImgUrl,
  15. </span><span style="color: #008080;">15</span> <span style="color: #000000;"> NickName, Sex, Status,Labels, StoryCount,
  16. </span><span style="color: #008080;">16</span> <span style="color: #000000;"> FriendCount, FollowerCount, FavouriteCount, HotNum,
  17. </span><span style="color: #008080;">17</span> <span style="color: #000000;"> CreateDate,Description
  18. </span><span style="color: #008080;">18</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">sql</span><span style="color: #0000ff;">></span>
  19. <span style="color: #008080;">19</span>
  20. <span style="color: #008080;">20</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">select </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">="selectByPrimaryKey"</span><span style="color: #ff0000;"> resultMap</span><span style="color: #0000ff;">="BaseResultMap"</span><span style="color: #ff0000;"> parameterType</span><span style="color: #0000ff;">="java.lang.Integer"</span> <span style="color: #0000ff;">></span>
  21. <span style="color: #008080;">21</span> <span style="color: #000000;"> select
  22. </span><span style="color: #008080;">22</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">include </span><span style="color: #ff0000;">refid</span><span style="color: #0000ff;">="Base_Column_List"</span> <span style="color: #0000ff;">/></span>
  23. <span style="color: #008080;">23</span> <span style="color: #000000;"> from userinfo
  24. </span><span style="color: #008080;">24</span> <span style="color: #000000;"> where UserInfoID = #{userinfoid,jdbcType=INTEGER}
  25. </span><span style="color: #008080;">25</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">select</span><span style="color: #0000ff;">></span>
  26. <span style="color: #008080;">26</span>
  27. <span style="color: #008080;">27</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">mapper</span><span style="color: #0000ff;">></span>
UserInfoMapper.xml

4. 实体model层

技术分享
  1. <span style="color: #008080;"> 1</span> <span style="color: #0000ff;">package</span><span style="color: #000000;"> com.disappearwind.model;
  2. </span><span style="color: #008080;"> 2</span>
  3. <span style="color: #008080;"> 3</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> UserInfo {
  4. </span><span style="color: #008080;"> 4</span> <span style="color: #0000ff;">private</span><span style="color: #000000;"> Integer userinfoid;
  5. </span><span style="color: #008080;"> 5</span>
  6. <span style="color: #008080;"> 6</span> <span style="color: #0000ff;">private</span><span style="color: #000000;"> String username;
  7. </span><span style="color: #008080;"> 7</span>
  8. <span style="color: #008080;"> 8</span> <span style="color: #0000ff;">private</span><span style="color: #000000;"> String phone;
  9. </span><span style="color: #008080;"> 9</span>
  10. <span style="color: #008080;">10</span> <span style="color: #0000ff;">private</span><span style="color: #000000;"> String pwd;
  11. </span><span style="color: #008080;">11</span>
  12. <span style="color: #008080;">12</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> Integer getUserinfoid() {
  13. </span><span style="color: #008080;">13</span> <span style="color: #0000ff;">return</span><span style="color: #000000;"> userinfoid;
  14. </span><span style="color: #008080;">14</span> <span style="color: #000000;"> }
  15. </span><span style="color: #008080;">15</span>
  16. <span style="color: #008080;">16</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setUserinfoid(Integer userinfoid) {
  17. </span><span style="color: #008080;">17</span> <span style="color: #0000ff;">this</span>.userinfoid =<span style="color: #000000;"> userinfoid;
  18. </span><span style="color: #008080;">18</span> <span style="color: #000000;"> }
  19. </span><span style="color: #008080;">19</span>
  20. <span style="color: #008080;">20</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> String getUsername() {
  21. </span><span style="color: #008080;">21</span> <span style="color: #0000ff;">return</span><span style="color: #000000;"> username;
  22. </span><span style="color: #008080;">22</span> <span style="color: #000000;"> }
  23. </span><span style="color: #008080;">23</span>
  24. <span style="color: #008080;">24</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setUsername(String username) {
  25. </span><span style="color: #008080;">25</span> <span style="color: #0000ff;">this</span>.username =<span style="color: #000000;"> username;
  26. </span><span style="color: #008080;">26</span> <span style="color: #000000;"> }
  27. </span><span style="color: #008080;">27</span>
  28. <span style="color: #008080;">28</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> String getPhone() {
  29. </span><span style="color: #008080;">29</span> <span style="color: #0000ff;">return</span><span style="color: #000000;"> phone;
  30. </span><span style="color: #008080;">30</span> <span style="color: #000000;"> }
  31. </span><span style="color: #008080;">31</span>
  32. <span style="color: #008080;">32</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setPhone(String phone) {
  33. </span><span style="color: #008080;">33</span> <span style="color: #0000ff;">this</span>.phone =<span style="color: #000000;"> phone;
  34. </span><span style="color: #008080;">34</span> <span style="color: #000000;"> }
  35. </span><span style="color: #008080;">35</span>
  36. <span style="color: #008080;">36</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> String getPwd() {
  37. </span><span style="color: #008080;">37</span> <span style="color: #0000ff;">return</span><span style="color: #000000;"> pwd;
  38. </span><span style="color: #008080;">38</span> <span style="color: #000000;"> }
  39. </span><span style="color: #008080;">39</span>
  40. <span style="color: #008080;">40</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> setPwd(String pwd) {
  41. </span><span style="color: #008080;">41</span> <span style="color: #0000ff;">this</span>.pwd =<span style="color: #000000;"> pwd;
  42. </span><span style="color: #008080;">42</span> <span style="color: #000000;"> }
  43. </span><span style="color: #008080;">43</span>
  44. <span style="color: #008080;">44</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> UserInfo() {
  45. </span><span style="color: #008080;">45</span> <span style="color: #000000;"> }
  46. </span><span style="color: #008080;">46</span> }
UserInfo

5. SpringMVC配置

技术分享
  1. <span style="color: #008080;"> 1</span> <span style="color: #0000ff;"><?</span><span style="color: #ff00ff;">xml version="1.0" encoding="UTF-8"</span><span style="color: #0000ff;">?></span>
  2. <span style="color: #008080;"> 2</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">beans </span><span style="color: #ff0000;">xmlns</span><span style="color: #0000ff;">="http://www.springframework.org/schema/beans"</span>
  3. <span style="color: #008080;"> 3</span> <span style="color: #ff0000;"> xmlns:p</span><span style="color: #0000ff;">="http://www.springframework.org/schema/p"</span><span style="color: #ff0000;"> xmlns:context</span><span style="color: #0000ff;">="http://www.springframework.org/schema/context"</span>
  4. <span style="color: #008080;"> 4</span> <span style="color: #ff0000;"> xmlns:xsi</span><span style="color: #0000ff;">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: #ff0000;"> xmlns:tx</span><span style="color: #0000ff;">="http://www.springframework.org/schema/tx"</span>
  5. <span style="color: #008080;"> 5</span> <span style="color: #ff0000;"> xmlns:aop</span><span style="color: #0000ff;">="http://www.springframework.org/schema/aop"</span>
  6. <span style="color: #008080;"> 6</span> <span style="color: #ff0000;"> xsi:schemaLocation</span><span style="color: #0000ff;">="
  7. </span><span style="color: #008080;"> 7</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/beans
  8. </span><span style="color: #008080;"> 8</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
  9. </span><span style="color: #008080;"> 9</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/context
  10. </span><span style="color: #008080;">10</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/context/spring-context-4.0.xsd
  11. </span><span style="color: #008080;">11</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/aop
  12. </span><span style="color: #008080;">12</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
  13. </span><span style="color: #008080;">13</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/tx
  14. </span><span style="color: #008080;">14</span> <span style="color: #0000ff;"> http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
  15. </span><span style="color: #008080;">15</span> <span style="color: #0000ff;"> "</span><span style="color: #0000ff;">></span>
  16. <span style="color: #008080;">16</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">context:component-scan </span><span style="color: #ff0000;">base-package</span><span style="color: #0000ff;">="com.disappearwind.*"</span> <span style="color: #0000ff;">/></span>
  17. <span style="color: #008080;">17</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">beans</span><span style="color: #0000ff;">></span>
context.xml

注意:context.xml的位置在web.xml中的如下配置节配置

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:context.xml</param-value>
</context-param>

 

用此方案的好处:省得写DAO层,只要Mapper层的方法申明和mapper.xml的方法申明保持一致,并且文件名也保持一致(UserInfoMapper.java和UserInfoMapper.xml)就能顺利的访问

Mybatis基于注解的方式访问数据库

标签:

人气教程排行