时间:2021-07-01 10:21:17 帮助过:11人阅读
其中里面配置了数据库服务器的地址,账号和密码,并且设置了映射文件mapperxml的路径
2.在domain下面建立实体类
- <span style="color: #0000ff">package</span><span style="color: #000000"> domain;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> java.io.Serializable;
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span> App <span style="color: #0000ff">implements</span><span style="color: #000000"> Serializable{
- </span><span style="color: #008000">/**</span><span style="color: #008000">
- *
- </span><span style="color: #008000">*/</span>
- <span style="color: #0000ff">private</span><span style="color: #000000"> String appId;
- </span><span style="color: #0000ff">private</span><span style="color: #000000"> String appDesc;
- </span><span style="color: #0000ff">private</span><span style="color: #000000"> String newestVersion;
- </span><span style="color: #0000ff">private</span><span style="color: #000000"> String newestVersionDesc;
- </span><span style="color: #0000ff">private</span><span style="color: #000000"> String url;
- </span><span style="color: #0000ff">private</span><span style="color: #000000"> String md5;
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getAppId() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> appId;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setAppId(String appId) {
- </span><span style="color: #0000ff">this</span>.appId =<span style="color: #000000"> appId;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getAppDesc() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> appDesc;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setAppDesc(String appDesc) {
- </span><span style="color: #0000ff">this</span>.appDesc =<span style="color: #000000"> appDesc;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getNewestVersion() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> newestVersion;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setNewestVersion(String newestVersion) {
- </span><span style="color: #0000ff">this</span>.newestVersion =<span style="color: #000000"> newestVersion;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getNewestVersionDesc() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> newestVersionDesc;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setNewestVersionDesc(String newestVersionDesc) {
- </span><span style="color: #0000ff">this</span>.newestVersionDesc =<span style="color: #000000"> newestVersionDesc;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getUrl() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> url;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setUrl(String url) {
- </span><span style="color: #0000ff">this</span>.url =<span style="color: #000000"> url;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String getMd5() {
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> md5;
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setMd5(String md5) {
- </span><span style="color: #0000ff">this</span>.md5 =<span style="color: #000000"> md5;
- }
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> String toString() {
- </span><span style="color: #0000ff">return</span> "App [appId=" + appId + ", appDesc=" +<span style="color: #000000"> appDesc
- </span>+ ", newestVersion=" + newestVersion + ", newestVersionDesc="
- + newestVersionDesc + ", url=" + url + ", md5=" + md5 + "]"<span style="color: #000000">;
- }
- }</span>
这个类即代表一个表,类里面的变量可以直接设置为何表里面的字段一致,不一致就要在映射文件里面设置对应关系
3.在mapperXml下面写映射文件
- <span style="color: #0000ff"><?</span><span style="color: #ff00ff">xml version="1.0" encoding="UTF-8" </span><span style="color: #0000ff">?></span>
- <span style="color: #0000ff"><!</span><span style="color: #ff00ff">DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"</span><span style="color: #0000ff">></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">mapper </span><span style="color: #ff0000">namespace</span><span style="color: #0000ff">="mapper.AppMapper"</span><span style="color: #0000ff">></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">resultMap </span><span style="color: #ff0000">type</span><span style="color: #0000ff">="App"</span><span style="color: #ff0000"> id</span><span style="color: #0000ff">="appResultMap"</span><span style="color: #0000ff">></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">id </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="appId"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="app_id"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">result </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="appDesc"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="app_desc"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">result </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="newestVersion"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="newest_version"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">result </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="newestVersionDesc"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="newest_version_desc"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">result </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="url"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="url"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">result </span><span style="color: #ff0000">property</span><span style="color: #0000ff">="md5"</span><span style="color: #ff0000"> column</span><span style="color: #0000ff">="md5"</span> <span style="color: #0000ff">/></span>
- <span style="color: #0000ff"></</span><span style="color: #800000">resultMap</span><span style="color: #0000ff">></span>
- <span style="color: #008000"><!--</span><span style="color: #008000"> select语句 </span><span style="color: #008000">--></span>
- <span style="color: #0000ff"><</span><span style="color: #800000">select </span><span style="color: #ff0000">id</span><span style="color: #0000ff">="selectUserByID"</span><span style="color: #ff0000"> parameterType</span><span style="color: #0000ff">="int"</span><span style="color: #ff0000"> resultMap</span><span style="color: #0000ff">="appResultMap"</span><span style="color: #0000ff">></span><span style="color: #000000">
- select * from app_t where app_t.app_id = #{appId}
- </span><span style="color: #0000ff"></</span><span style="color: #800000">select</span><span style="color: #0000ff">></span>
- <span style="color: #0000ff"></</span><span style="color: #800000">mapper</span><span style="color: #0000ff">></span>
其中resultMap就设置了对应的关系,解决实体类的变量和数据库中字段不一致的问题
具体的sql语句也是在映射文件里面写,其中id代表的是对应的方法,parameterType就是传入变量的类型,resultMap就是返回的数据类型
4.在mapper下为每个实体类建立对应的接口,接口里面的方法和映射文件里面的id一一对应
- <span style="color: #0000ff">package</span><span style="color: #000000"> mapper;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> java.util.List;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> domain.App;
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">interface</span><span style="color: #000000"> AppMapper {
- </span><span style="color: #0000ff">public</span> App selectUserByID(<span style="color: #0000ff">int</span><span style="color: #000000"> id);
- </span><span style="color: #0000ff">public</span> List<App><span style="color: #000000"> selectUsersByName(String userName);
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> addUser(App user);
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> updateUser(App user);
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> deleteUser(<span style="color: #0000ff">int</span><span style="color: #000000"> id);
- }</span>
5.编写数据库查询帮助类,用于返回数据库对象
- <span style="color: #0000ff">package</span><span style="color: #000000"> Deal;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> domain.App;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> mapper.AppMapper;
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.ibatis.session.SqlSession;
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span><span style="color: #000000"> Test{
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> getUserByID(<span style="color: #0000ff">int</span><span style="color: #000000"> userID) {
- SqlSession session </span>=<span style="color: #000000"> SqlSessionHelper.getSessionFactory().openSession();
- </span><span style="color: #0000ff">try</span><span style="color: #000000"> {
- AppMapper userOperation </span>=<span style="color: #000000"> session
- .getMapper(AppMapper.</span><span style="color: #0000ff">class</span><span style="color: #000000">);
- App user </span>=<span style="color: #000000"> userOperation.selectUserByID(userID);
- </span><span style="color: #0000ff">if</span> (user != <span style="color: #0000ff">null</span><span style="color: #000000">) {
- System.out.println(user.getAppDesc());
- }
- } </span><span style="color: #0000ff">finally</span><span style="color: #000000"> {
- session.close();
- }
- }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span><span style="color: #000000"> main(String[] args) {
- </span><span style="color: #0000ff">try</span><span style="color: #000000"> {
- Test test </span>= <span style="color: #0000ff">new</span><span style="color: #000000"> Test();
- test.getUserByID(</span>1<span style="color: #000000">);
- } </span><span style="color: #0000ff">catch</span><span style="color: #000000"> (Exception e) {
- System.out.println(e.getMessage());
- }
- }
- }</span>
数据库表如下,使用该教程之前需要先在数据库建立表
查询的是app_id,对应的app_desc
运行test,得到的接口也是3
6.附上demo工程,不清楚的同学可以参考一下
链接: https://pan.baidu.com/s/1dFqVtSX 密码: jb7j
如何使用mybatis对mysql数据库进行操作,batis的增删改查
标签:sql语句 pom java except class 文件 ppm 代码 div