mybatis_01 初运行
maven坐标
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
mybatis配置文件:
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test?useSSL=true&useUnicode=true&characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/huang/mapper/UserInfoMapper.xml"/>
</mappers>
</configuration>
映射文件:
mapper.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.huang.mapper.UserInfoMapper">
<select id="selectUser" resultType="com.huang.entity.UserInfo">
select * from user_info
</select>
</mapper>
测试:
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession session = sqlSessionFactory.openSession(); UserInfoMapper userInfoMapper = session.getMapper(UserInfoMapper.class); userInfoMapper.selectUser().forEach(System.out::print);
其他代码:
实体:
package com.huang.entity; public class UserInfo { private String id; private String username; private String password; public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public UserInfo() {
super();
// TODO Auto-generated constructor stub
} public UserInfo(String id, String username, String password) {
super();
this.id = id;
this.username = username;
this.password = password;
} @Override
public String toString() {
return "UserInfo [id=" + id + ", username=" + username + ", password=" + password + "]";
} }
dao层:
package com.huang.mapper; import java.util.List; import com.huang.entity.UserInfo; public interface UserInfoMapper { List<UserInfo> selectUser(); }
mybatis_01 初运行的更多相关文章
- Windows平台下Flutter安装,配置,初运行。
Flutter是什么?他是谷歌根据Dark语言开源的跨平台开发依赖.和目前比较火的Reactive Native一样,一套代码能够实现两个不同平台的App.那么为什么要介绍Flutter而不是在国内大 ...
- SpringBoot-05:SpringBoot初运行以及tomcat端口号的修改
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 上篇博客讲了,如何创建SpringBoot工程,所以,我本篇博客讲述,如何跑起来自己的第一个案例 1.准备一个 ...
- CodeFirst实战:用文本数据库存档软件配置
背景: 以前要写软件的时候,在编写用户配置这一块时,由于存档数据库不靠谱或大题小作,所以一般是存在文本中. 一开始是一个文件保存一个配置(图个File.Read与File.Write的操作简单) 由于 ...
- redis数据库入门
Redis入门(1) 之安装.配置.安全登录 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redi ...
- AI应用开发实战 - 手写算式计算器
扩展手写数字识别应用 识别并计算简单手写数学表达式 主要知识点 了解MNIST数据集 了解如何扩展数据集 实现手写算式计算器 简介 本文将介绍一例支持识别手写数学表达式并对其进行计算的人工智能应用的开 ...
- Win32消息循环机制等【转载】http://blog.csdn.net/u013777351/article/details/49522219
Dos的过程驱动与Windows的事件驱动 在讲本程序的消息循环之前,我想先谈一下Dos与Windows驱动机制的区别: DOS程序主要使用顺序的,过程驱动的程序设计方法.顺序的,过程驱动的程序有一个 ...
- 收藏:Win32消息机制
Dos的过程驱动与Windows的事件驱动 在讲本程序的消息循环之前,我想先谈一下Dos与Windows驱动机制的区别: DOS程序主要使用顺序的,过程驱动的程序设计方法.顺序的,过程驱动的程序有一个 ...
- linux&shell
Linux经常使用命令 登录时显示信息放在/etc/motd和/etc/profile.d/xxx.sh motd放置字符串 profile.d下放置脚本文件 echo echo -e 处理特殊字符. ...
- django + pycharm 开局
1. 首先有 python3 2. 安装了pycharm 3. 配置开局 下面是用的全局的解释器,如果是用的虚拟环境的,Existing interpreter 选择虚拟环境的解释器. 4. set ...
- [2020.03]Unity ML-Agents v0.15.0 环境部署与试运行
一.ML-Agents简介 近期在学习Unity中的机器学习插件ML-Agents,做一些记录,用以简单记录或交流学习. 先简单说一下机器学习使用的环境场景:高视觉复杂度(Visual Complex ...
随机推荐
- C++实现二叉树的定义与操作
头文件及常量定义 #include<stdio.h> #include<stdlib.h> #include<stdarg.h> #include<iostr ...
- 使用AJAX绑定点击事件将接口值返回渲染到指定位置
AJAX 是局部的刷新或者叫做无刷新技术 首先是js部分,这里注意不紧要引入express模块,还需要把cors模块也引入 在下面添加了判断,用来判断所取得的随机值是否在0.5以上 接下来是HTML部 ...
- null和undefine的区别
null和undefine都是基本数据类型,两种类型都只有一个值. 区别: 1.undefined表示已经声明未定义,null表示的是一个空对象(null并不是空对象,js的typeof会将null判 ...
- csp201503-1(矩阵逆时针九十度旋转)
//矩阵变换的题,要找出两个矩阵各元素横纵坐标之间的关系 #include<bits/stdc++.h> using namespace std; int main() { int a[1 ...
- 代码随想录训练营day 4|链表基础理论,移除链表元素,设计链表,反转链表
链表理论基础 链表是一种由指针串联在一起的线性结构,每一个节点都由一个数据域和一个指针域组成. 链表的类型有:单链表.双链表.循环链表. 链表的存储方式:在内存中不连续分布. 链表的定义很多人因为不重 ...
- 7.Object
Object类 超类.基类,所以类的直接或间接父类,位于继承树的最顶层 任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承 Object类中所定义的方法,是所 ...
- window.location.href 用法总结
想做好前端,这几种用法一定要了解: 在做网页前端的时候会经常用到JavaScript其中window.location.href用得非常多: 其中最常用的有windows.location.href= ...
- Centos 7 部署Kubernetes集群 (基于cri-dockerd)
前言 基础描述 从 k8s 1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能 ...
- React 安装 Sass 错误问题; node-sass 安装运行成功 yarn add sass node-sass@npm:sass
正常安装是: yarn add node-sass 直接安装出现报错 例如: Node Sass does not yet support your current environment: Wind ...
- element ui tabs 标签页支持展开收起修改
<template> <div class="com-resource-legend" style=""> <el-tabs ty ...