java-MyBatis项目配置

java-MyBatis项目配置

最近博主在学习MyBatis,学习了一下MyBatis项目配置。
下面博主就讲一下这个项目配置的一个情况

先看一下配置流程大纲:
后续,我会解释一下这些配置文件的意义

1.创建一个maven项目,为什么要创建这个项目,后面我们还会说的哈。

2.配置pom.xml文件

3.配置db.properties文件

4.配置mybatis-config.xml文件

5.创建mapper文件夹 并配置UserMapper.xml文件

6…开始写我们的程序

1.创建一个maven项目,为什么要创建这个项目,后面我们还会说的哈。

使用idea去创建项目,然后点击file ->project->moven
其他的随便填一下,都可以的
在这里插入图片描述
注:maven项目 联网之后,可以自动帮我们导入需要的jar包。所以这是为什么用这个。

2.配置pom.xml文件

在pom.xml文件加入依赖代码,maven项目就会开始帮我们配置环境了。

配置环境一般如下,mybatis,mysql相关jar包会自动安装。在联网的情况下。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.suncaper</groupId><artifactId>mMybatistest</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.5</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version><scope>runtime</scope></dependency></dependencies></project>

3.配置db.properties文件

这个文件其实也可以不配置,主要是图个方便,因为其在后续mybatis-config.xml文件种主要用作变量取填充代码。

db.driver=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql://127.0.0.1:3306/emps
db.username=root
db.password=a134679258

emps是数据库的名字,这里注意一下就好。

4.配置mybatis-config.xml文件

这个文件是一个核心文件
注意下面几行代码,就可以知道配置db.properties文件得作用了,其实就是做一个变量替换。

<properties resource="db.properties" /><property name="driver" value="${db.driver}" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />

mybatis-config.xml完整代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--mybatis的主配置文件--><configuration><!-- 通过properties标签,读取java配置文件的内容 --><properties resource="db.properties" /><!-- 配置mybatis的环境信息 --><environments default="development"><environment id="development"><!-- 配置JDBC事务控制,由mtybatis进行管理 --><transactionManager type="JDBC"></transactionManager><!-- 配置数据源,采用dbcp连接池 --><dataSource type="POOLED"><property name="driver" value="${db.driver}" /><property name="url" value="${db.url}" /><property name="username" value="${db.username}" /><property name="password" value="${db.password}" /></dataSource></environment></environments><mappers><mapper resource="mapper/UserMapper.xml"/></mappers>
</configuration>

这个代码,是告诉我们mappers文件去哪里找,这个文件会存放我们对数据库得一些操作。

   <mappers><mapper resource="mapper/UserMapper.xml"/></mappers>

5.创建mapper文件夹 并配置UserMapper.xml文件

这个UserMapper.xml文件放的是我们的sql代码,但是这个文件比较难懂:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="IUserDao"><select id="getUserById" parameterType="int" resultType="String">select  ENAME from emp ;</select>
</mapper>

namespace="IUserDao"这里指的是,我们使用什么函数接口对接下面的sql语句。
resultType=“String” 这里指的是从数据库种返回数据,会被转化成什么类型(可以直接是一个类)。
注意如果类型不匹配会自动返回null。

select  ENAME from emp ;
emp就是我们的数据库中的表 ,这就是一个句子。

所以本质上,MyBatis项目就是做了一个java和sql得对接,且可以直接将数据和类进行对接,极大方便了开发。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2661581.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

在markdown中添加视频的两种方法

查看专栏目录 Network 灰鸽宝典专栏主要关注服务器的配置&#xff0c;前后端开发环境的配置&#xff0c;编辑器的配置&#xff0c;网络服务的配置&#xff0c;网络命令的应用与配置&#xff0c;windows常见问题的解决等。 文章目录 方式一源代码: 方式二结尾语网络的梦想 markd…

Qt篇——QwtPainter::drawPie绘制扇形

QwtPainter::drawPie(QPainter *painter, const QRectF &rect, int startAngle, int angle); 一、参数含义&#xff1a; painter&#xff1a; 重绘函数中的painter对象 rect&#xff1a; 要绘制扇形的圆的外切矩形。 startAngle: 要绘制的扇形的起始角 …

Scala知识点——App类

我们在代码中一般程序都是是通过main方法进入。但是在scala中提供了一个App类&#xff0c;通过继承可以实现不用显式的调用main方法就能运行。 App类中实现了main方法&#xff1a;

Prometheus/Loki+Alertmanager+Grafana监控告警

@toc 告警模式 1、Prometheus+Alertmanager 2、Loki+Alertmanager 除了上面提到的服务,我们可以补充主要服务如下图: 部署方式 Node exporter+Prometheus+Alertmanager:Helm Promtail+Loki:Helm Grafana:Helm 1、Node exporter+Prometheus+Alertmanager方式 1)安装 添加H…

基于ssm西安旅游管理系统论文

摘 要 在如今社会上&#xff0c;关于信息上面的处理&#xff0c;没有任何一个企业或者个人会忽视&#xff0c;如何让信息急速传递&#xff0c;并且归档储存查询&#xff0c;采用之前的纸张记录模式已经不符合当前使用要求了。所以&#xff0c;对西安旅游信息管理的提升&#x…

Python/R/GUI/BI类型常用数据可视化工具

什么是数据可视化工具&#xff1f; 数据可视化工具是指旨在可视化数据的所有形式的软件。它们处理数据输入&#xff0c;将其转换为用户可以根据自己的需求进行定制的视觉效果。 不同的工具可以包含不同的功能&#xff0c;但最基本的是&#xff0c;数据可视化工具提供输入数据集…

2024 年政府和技术预测

新的一年即将来临&#xff0c;这意味着专家、技术专家和专栏作家应该尝试预测 2024 年政府和技术即将出现的一些最大趋势。今年可能使这些预测变得更加困难的是事实上&#xff0c;许多技术正在以惊人的速度向前发展。在某些情况下&#xff0c;过去需要多年才能慢慢发生的变化现…

每日汇评:黄金走势艰难,但有望在2023年上涨14%

黄金价格在此前从三周高点回落后又回到了上涨轨迹&#xff1b; 在2023年最后一个交易日&#xff0c;由于美债收益率低迷&#xff0c;美元再次走弱&#xff1b; 黄金价格有望突破2100美元&#xff0c;每日技术面仍有利于买家&#xff1b; 尽管前一天金价从三周高点 2089 美元回落…

元气森林与纷享销客深化合作:用数据连通业务驱动决策

快消行业标杆企业元气森林与纷享销客将进一步深化合作。日前&#xff0c;元气森林信息中心团队相关负责人到访纷享销客。元气森林信息中心负责人唐昕高度肯定了与纷享销客的合作成果&#xff0c;并表示未来双方将进一步加强在营销体系数字化运营上的合作。 01、数据驱动决策&am…

CSAPP《深入理解计算机系统》深读笔记3——第二章-信息的表示和处理(下)

CSAPP《深入理解计算机系统》深读笔记3——第二章-信息的表示和处理(下) 你好我是拉依达&#xff0c;这是我秋招结束后更新的第一个系列。我将争取完成“ 年轻人&#xff0c;你渴望力量吗&#xff1f;”的全套深度笔记。 今天开始进行第一本CSAPP&#xff1a;深入理解计算机系统…

【堡垒机小问答】堡垒机最早起源于哪里?是国外吗?

随着大家网络安全意识的增加&#xff0c;对于堡垒机的了解也越来越多。最近有不少小伙伴在问&#xff0c;堡垒机最早起源于哪里&#xff1f;是国外吗&#xff1f;这里我们就来简单回答一下。 堡垒机最早起源于哪里&#xff1f;是国外吗&#xff1f; 【回答】&#xff1a;堡垒…

【行云流水线】满足你对工作流编排的一切幻想~skr

流水线模型 众所周知&#xff0c;DevOps流水线&#xff08;DevOps pipeline&#xff09;的本质是实现自动化工作流程&#xff0c;用于支持软件开发、测试和部署的连续集成、交付和部署&#xff08;CI/CD&#xff09;实践。它是DevOps方法论的核心组成部分&#xff0c;旨在加速…

vite + javascript 创建纯 javascript项目

1、环境搭建&#xff1a;需要安装 node 管理器命令&#xff1a;安装了node的后&#xff0c;可以使用 npm &#xff0c;也可以安装使用 cnpm / pnpm 下载 cnpm npm install -g cnpm --registryhttps://registry.npm.taobao.org 下载 pnpm npm i -g pnpm pnpm config set r…

详解IP安全:【IPSec协议簇 | AH协议 | ESP协议 | IKE协议】

目录 IP安全概述 IPSec协议簇 IPSec的实现方式 AH&#xff08;Authentication Header&#xff0c;认证头&#xff09; ESP&#xff08;Encapsulating Security Payload&#xff0c;封装安全载荷&#xff09; IKE&#xff08;Internet Key Exchange&#xff0c;因特网密钥…

【苏州】买套二手房需要多少钱?

买新房存在一定的交付风险&#xff0c;买二手房毕竟是现货&#xff0c;所以最近二手房购房者越来越多了。 根据住房和城乡建设部副部长董建国在中国国际经济交流中心举行的2023&#xff0d;2024中国经济年会上的发言&#xff0c;今年1到11月&#xff0c;全国二手房交易量占全部…

JavaFX:控件Group。

group组件是一个容器组件&#xff0c;它不对其子组件应用特殊布局。所有子组件&#xff08;节点&#xff09;都位于0,0处。JavaFX组组件通常用于将一些效果或转换应用于一组控件&#xff08;作为一个组&#xff09;。如果需要对组内的子级进行一些布局&#xff0c;请将它们嵌套…

使用自相关求周期性

测量不确定性和噪声有时会导致难以发现信号中的振荡行为&#xff0c;即使该震荡行为是预期存在的。 周期信号的自相关序列与信号本身具有相同的周期特征。因此&#xff0c;自相关可以帮助验证周期的存在并确定其持续时间。 以由办公楼内温度计采集的一组温度数据为例。该设备每…

Vue : v-if, v-show

目录 v-show v-if v-show <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title>…

【XR806开发板试用】语音紧急呼叫系统

1.背景介绍 老人和小孩子独自在家的时候如果遇到紧急情况&#xff0c;通过拨打电话或者微信的方式通知家人存在操作不便的问题。例如&#xff0c;如果老人摔倒了手机很可能不在身边&#xff0c;对小孩来说手机的操作又过于复杂。针对这种情况&#xff0c;研发一种主动语音上报…

GitHub教程-自定义个人页制作

GitHub是全球最大的代码托管平台&#xff0c;除了存放代码&#xff0c;它还允许用户个性化定制自己的主页&#xff0c;展示个人特色、技能和项目。本教程旨在向GitHub用户展示如何制作个性化主页&#xff0c;同时&#xff0c;介绍了GitHub Actions的应用&#xff0c;可以自动化…