十堰网站设计公司装修绘图软件app
2026/6/10 17:11:27 网站建设 项目流程
十堰网站设计公司,装修绘图软件app,西安网站建设g,c 语言可以做网站吗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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询