网站访问量来源个人博客网页模版

张小明 2026/3/12 12:54:05
网站访问量来源,个人博客网页模版,做网站好的书,郑州网站建设没效果Mybatis-9.28 环境#xff1a; JDK1.8Mysql5.7Maven 3.6.1IDEA 回顾#xff1a; JDBCMysqlJava 基础 #xff08;封装继承的思想#xff0c;看到一个东西能不能把它封装成一个工具类#xff09;Maven #xff08;会加个Maven、知道父子模块#xff09;Junit #x…Mybatis-9.28环境JDK1.8Mysql5.7Maven 3.6.1IDEA回顾JDBCMysqlJava 基础 封装继承的思想看到一个东西能不能把它封装成一个工具类Maven 会加个Maven、知道父子模块Junit 单元测试SSM框架配置文件的。最好学习的方式官网文档SSM 通常指代 Spring、SpringMVC 和 MyBatis 这三个 Java 框架的组合。现在学的M是MyBatis什么是 MyBatisMyBatis 是一款优秀的持久层框架它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJOPlain Old Java Objects普通老式 Java 对象为数据库中的记录。MyBatis原名为iBatis名称来源于internet和abatis的组合是一款基于Java的持久层框架最初由Apache软件基金会开发2010年迁移至Google Code并更名MyBatis2013年转至GitHub平台。持久化数据持久化持久化就是将程序的数据在持久状态和瞬时状态转换的过程内存断电即失。主要是把内存里面的数据持久化到我们的对象里面数据库JDBC)IO文件持久化。生活冷藏为什么需要持久化?有一些对象不能让他丢掉。内存太贵了持久层Dao层、Service层Controller层……完成持久化工作的代码块层界限十分明显为什么需要Mybatis?帮助程序员将数据存入到数据库中方便传统的JDB代码太复杂了。简化。框架。自动化不用Mybatis也可以。但是Mybatis更容易上手。技术没有高低之分优点简单易学灵活sql和代码的分离提高了可维护性。提供映射标签支持对象与数据库的ORM字段关系映射。提供对象关系映射标签支持对象关系组建维护。提供xml标签支持编写动态sql。最重要的一点使用的人多Spring SpringMVC SpringBoot随大众、迎合如何获得Mybatis?Maven仓库https://mvnrepository.com/search?qMybatis!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --dependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.2/version/dependencyGithubhttps://github.com/mybatis/mybatis-3中文文档https://mybatis.org/mybatis-3/zh_CN/index.html可以看见是一个Maevn项目学习思路搭建环境–导入Mybatis–编写代码–测试搭建环境搭建数据库CREATEDATABASEmybatis;USEmybatis;CREATETABLEuser(idINT(20)NOTNULLPRIMARYKEY,nameVARCHAR(30)DEFAULTNULL,pwdVARCHAR(30)DEFAULTNULL)ENGINEINNODBDEFAULTCHARSETutf8;INSERTINTOuser(id,name,pwd)VALUES(1,admin,123456),(2,test,123456),(3,root,123456);新建项目新建一个普通的Maven项目删除父工程的src目录导入Maven依赖dependencies!--mysql驱动--dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.47/version/dependency!--mybatis--!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --dependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.2/version/dependency!--junit单元测试--dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/versionscopetest/scope/dependency/dependencies编写代码创建一个模块编写mybatis的核心配置文件- 在子项目中的src目录下的resources资源目录新建配置文件?xml version1.0encodingUTF-8?!DOCTYPE configuration PUBLIC-//mybatis.org//DTD Config 3.0//ENhttps://mybatis.org/dtd/mybatis-3-config.dtd!--configuration核心配置文件--configuration!--环境设置因为有s代表复数可以配置多个环境environments--environmentsdefaultdevelopmentenvironment iddevelopmenttransactionManager typeJDBC/dataSource typePOOLEDproperty namedrivervaluecom.mysql.jdbc.Driver/!--amp;相当于原来的符号进行了转义因为XML中需要一些转义--property nameurlvaluejdbc:mysql://localhost:3306/mybatis?useSSLtrueamp;useUnicodetrueamp;characterEncodingUTF-8/property nameusernamevalue自己的用户名/property namepasswordvalue自己的密码//dataSource/environment/environments/configuration编写mybatis的工具类importorg.apache.ibatis.io.Resources;importorg.apache.ibatis.session.SqlSession;importorg.apache.ibatis.session.SqlSessionFactory;importorg.apache.ibatis.session.SqlSessionFactoryBuilder;importjava.io.IOException;importjava.io.InputStream;publicclassMybatisUtils{// 提升作用域privatestaticSqlSessionFactorysqlSessionFactory;//SqlSessionFactory -- sqlSessionstatic{try{// 使用MyBatis第一步获取sqlSessionFactory对象Stringresourcemybatis-config.xml;InputStreaminputStreamResources.getResourceAsStream(resource);SqlSessionFactorysqlSessionFactorynewSqlSessionFactoryBuilder().build(inputStream);}catch(IOExceptione){thrownewRuntimeException(e);}}// 既然有了 SqlSessionFactory顾名思义我们可以从中获取 SqlSession 的实例。// SQllSession 完全包含了面向数据库执行 SQL 命令所需的所有方法。publicstaticSqlSessiongetSqlSession(){returnsqlSessionFactory.openSession();}}编写代码实体类publicclassuser{privateintid;privateStringname;privateStringpwd;publicuser(){}publicuser(intid,Stringname,Stringpwd){this.idid;this.namename;this.pwdpwd;}publicintgetId(){returnid;}publicvoidsetId(intid){this.idid;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.namename;}publicStringgetPwd(){returnpwd;}publicvoidsetPwd(Stringpwd){this.pwdpwd;}OverridepublicStringtoString(){returnuser{idid, namename\, pwdpwd\};}}Dao接口importcom.cike.pojo.user;importjava.util.List;publicinterfaceUserDao{ListusergetUserList();}编写绑定接口的Mapper配置文件由原来的UserDaoImpl转变为一个Mapper配置文件resultMap返回多个、resultType返回一个?xml version1.0encodingUTF-8?!DOCTYPE mapper PUBLIC-//mybatis.org//DTD Mapper 3.0//ENhttps://mybatis.org/dtd/mybatis-3-mapper.dtd!--namespcae绑定一个对应的Dao/Mapper接口--mapper namespacecom.cike.dao.UserDao!--select id对应UserDao的方法resultType实体类--select idgetUserListresultTypecom.cike.pojo.user!--执行SQL--select*from mybatis.user/select/mapper测试MapperRegistry注意Mapping.XML要在mybatis-config.xml核心配置文件中注册?xml version1.0 encodingUTF-8 ?!DOCTYPEconfigurationPUBLIC-//mybatis.org//DTD Config 3.0//ENhttps://mybatis.org/dtd/mybatis-3-config.dtd!--configuration核心配置文件--configuration!--环境设置因为有s代表复数可以配置多个环境environments--environmentsdefaultdevelopmentenvironmentiddevelopmenttransactionManagertypeJDBC/dataSourcetypePOOLEDpropertynamedrivervaluecom.mysql.jdbc.Driver/!--amp;相当于原来的符号进行了转义因为XML中需要一些转义--propertynameurlvaluejdbc:mysql://localhost:3306/mybatis?useSSLtrueamp;useUnicodetrueamp;characterEncodingUTF-8/propertynameusernamevalueroot/propertynamepasswordvalue123456//dataSource/environment/environments!--没有给Mapping.XML都需要在Mybatis核心配置文件中注册--mappersmapperresourcecom/cike/dao/UserMapper.xml//mappers/configurationjunti测试importcom.cike.pojo.user;importcom.cike.util.MybatisUtils;importorg.apache.ibatis.session.SqlSession;importorg.junit.Test;importjava.util.List;publicclassUserDaoTest{Testpublicvoidtest(){//第一步获得SqlSession对象SqlSessionsqlSessionMybatisUtils.getSqlSession();//执行SQLUserDaouserDaosqlSession.getMapper(UserDao.class);// 获得对象ListuseruserListuserDao.getUserList();for(user user:userList){System.out.println(user);}// 关闭SqlSessionsqlSession.close();}}测试的代码也要规范路径问题解决-无法导出百分之10000遇到问题运行项目的时候发现XML没有成功导出Maven配置buildresourcesresourcedirectorysrc/main/resources/directoryincludesinclude**/*.properties/includeinclude**/*.xml/include/includesfilteringfalse/filtering/resource!-- 如果配置文件在java目录下需要添加此配置 --resourcedirectorysrc/main/java/directoryincludesinclude**/*.xml/include/includesfilteringfalse/filtering/resource/resources/build可能会遇到的问题配置文件没有注册绑定接口错误方法名不对返回类型不对Maven导出资源问题参考按着这个官方文档进行复制一些代码https://mybatis.org/mybatis-3/zh_CN/getting-started.html
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

做网站月薪资多少钱网站这么设置微信支付宝

量子行走的极限分布与混合时间解读 1. 引言 在有限量子系统中,时间演化存在准周期模式,这阻碍了其收敛到极限分布。不过,我们可以通过定义平均概率分布这一概念,来探索量子行走的极限分布和混合时间。平均概率分布随机演化,且不具有准周期行为,为我们分析量子行走提供了…

张小明 2026/3/5 7:25:41 网站建设

教育网站制作哪个好邢台专业网站建设公司

PDF数据自动化提取:从文档到Excel的终极解决方案 【免费下载链接】Python_pdf2Excel提取PDF内容写入Excel Python_pdf2Excel是一个高效的开源工具,专为自动化处理大量PDF文件并将其关键数据提取至Excel表格而设计。该项目通过Python脚本实现,…

张小明 2026/3/5 7:25:42 网站建设

做阿里渠道的销售要有哪些网站进入官方网站

LobeChat GPU算力 高效私有化部署AI聊天系统 在企业对数据隐私和系统可控性要求日益提升的今天,一个能真正“把数据留在自己手里”的AI助手,正从理想变为刚需。金融、医疗、政务等行业早已无法满足于调用公有云API换来几句看似智能的回复——他们需要的…

张小明 2026/3/5 7:25:43 网站建设

模板网站建设公司 东莞重庆装修公司口碑排名

第一章:GraphQL 的 PHP 字段别名在使用 GraphQL 构建 API 时,字段别名(Field Aliases)是一项强大且实用的功能,尤其在与 PHP 后端集成的场景中。它允许客户端查询时为返回的字段指定自定义名称,从而避免字段…

张小明 2026/3/5 7:25:44 网站建设

网站制作一个人可以做吗个人网站建设案例教程

"为什么按了快捷键却毫无反应?"这大概是每个Reor用户都曾遭遇的困扰。当你正沉浸于AI辅助的创作思绪中,突然发现最常用的CtrlN失灵了,那种挫败感足以打断所有灵感。别担心,今天我们就来彻底解决这个恼人的问题&#xff…

张小明 2026/3/5 7:25:44 网站建设

用asp做网站出现空白食材网站模板

Docker环境配置完整教程:从入门到集群部署 【免费下载链接】docker-curriculum :dolphin: A comprehensive tutorial on getting started with Docker! 项目地址: https://gitcode.com/gh_mirrors/do/docker-curriculum 还在为开发环境和生产环境不一致而烦恼…

张小明 2026/3/5 7:25:45 网站建设