当前位置: 首页 > news >正文

专业的外贸网站建设公司价格网站推荐2021

专业的外贸网站建设公司价格,网站推荐2021,wordpress中文破解主题下载地址,什么网站是免费的文章目录 一. Mybatis的简介1. 什么是ORM?2. 什么是持久层#xff1f;3. Mybatis的作用 二. Mybatis环境搭建1. 搭建一个数据库2. 创建maven项目并导入相关依赖3. Mybatis相关插件安装4. Mybatis.cfg.xml核心配置文件 三. 基于ssm逆向工程的使用1. 配置generatorConfig.xml2.… 文章目录 一. Mybatis的简介1. 什么是ORM?2. 什么是持久层3. Mybatis的作用 二. Mybatis环境搭建1. 搭建一个数据库2. 创建maven项目并导入相关依赖3. Mybatis相关插件安装4. Mybatis.cfg.xml核心配置文件 三. 基于ssm逆向工程的使用1. 配置generatorConfig.xml2. 配置maven运行generator命令 四. Mybatis增删改查案例 一. Mybatis的简介 Mybatis是一款优秀的ORM持久层框架它支持自定义 SQL、存储过程以及高级映射(一对一一对多)。Mybatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。 1. 什么是ORM? Object Relation Mapping对象关系映射。对象指的是Java对象关系指的是数据库中的关系模型对象关系映射指的就是在Java对象和数据库的关系模型之间建立一种对应关系比如用一个Java的Student类去对应数据库中的一张student表类中的属性和表中的列一一对应。Student类就对应student表一个Student对象就对应student表中的一行数据。 2. 什么是持久层 持久层顾名思义是完成持久化工作的代码块也就是Date Access ObjectDao层大多数情况下特别是企业级应用数据持久化往往也就意味着将内存中的数据保存到磁盘上加以固化而持久化的实现过程则大多通过各种关系数据库来完成。层是界限是十分明显的 3. Mybatis的作用 简单易学本身就很小且简单。没有任何第三方依赖最简单安装只要两个jar文件配置几个sql映射文件就可以了易于学习易于使用通过文档和源代码可以比较完全的掌握它的设计思路和实现。灵活mybatis不会对应用程序或者数据库的现有设计强加任何影响。sql写在xml里便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。解除sql与程序代码的耦合通过提供DAO层将业务逻辑和数据访问逻辑分离使系统的设计更清晰更易维护更易单元测试。sql和代码的分离提高了可维护性。提供xml标签支持编写动态sql。现在主流使用方法 二. Mybatis环境搭建 1. 搭建一个数据库 2. 创建maven项目并导入相关依赖 pom.xml依赖 propertiesmaven.compiler.source1.8/maven.compiler.sourcemaven.compiler.target1.8/maven.compiler.target/propertiesdependencies!-- ********************** junit单元测试依赖 ********************** --dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/versionscopetest/scope/dependency!-- ********************** Java Servlet API ********************** --dependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion4.0.0/versionscopeprovided/scope/dependency!-- ********************** Mybatis依赖 ********************** --dependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.4.5/version/dependency!-- ********************** Mysql JDBC驱动 ********************** --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.44/version/dependency!-- ********************** 日志配置 ********************** --!--记得修改mybatis.cfg.xml添加如下内容--!--setting namelogImpl valueLOG4J2/--!--核心log4j2jar包--dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-core/artifactIdversion2.9.1/version/dependencydependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-api/artifactIdversion2.9.1/version/dependency!--web工程需要包含log4j-web非web工程不需要--dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-web/artifactIdversion2.9.1/version/dependency /dependenciesbuildresources!--解决mybatis-generator-maven-plugin运行时没有将XxxMapper.xml文件放入target文件夹的问题--resourcedirectorysrc/main/java/directoryincludesinclude**/*.xml/include/includes/resource!--解决mybatis-generator-maven-plugin运行时没有将jdbc.properites文件放入target文件夹的问题--resourcedirectorysrc/main/resources/directoryincludesincludejdbc.properties/includeinclude*.xml/include/includes/resource/resourcespluginsplugingroupIdorg.mybatis.generator/groupIdartifactIdmybatis-generator-maven-plugin/artifactIdversion1.3.2/versiondependencies!--使用Mybatis-generator插件不能使用太高版本的mysql驱动 --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.44/version/dependency/dependenciesconfigurationoverwritetrue/overwrite/configuration/plugin/plugins/build jdbc.properties jdbc.drivercom.mysql.jdbc.Driver jdbc.urljdbc:mysql://47.100.191.44:3308/mybatis_ssm?useUnicodetruecharacterEncodingUTF-8 jdbc.usernametest01 jdbc.passwordtest01web.xml web-app xmlnshttp://xmlns.jcp.org/xml/ns/javaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsdversion3.1/web-app 3. Mybatis相关插件安装 Free mybatis plugin Free mybatis plugin的主要功能 提供Mapper接口与配置文件中对应SQL的导航 编辑XML文件时自动补全 根据Mapper接口, 使用快捷键生成xml文件及SQL标签 Mybatis generator Mybatis generator的主要功能 它可以生成 MyBatis 的 Java 实体类、mapper.xml 文件以及对应的 Mapper 接口极大地减少了开发人员手写 SQL 语句和映射实体类的工作量提高了开发效率。 mybatis tools mybatis tools的主要功能 提供Mapper接口方法与XML配置文件中对应SQL自由切换导航。 提供Mapper接口方法调用明细。 maven helper maven helper的主要功能 显示依赖树。从 Maven pom.xml 文件中读取依赖关系然后创建依赖树可以通过 Maven Helper 插件的图形界面来查看依赖树从而更好地理解项目的依赖关系。查找冲突的依赖关系。如果项目中存在不兼容或冲突的依赖关系Maven Helper 插件会发现这些问题并将它们列出来让你轻松修复这些错误。解决依赖关系冲突。除了发现冲突的依赖关系外Maven Helper 还可以自动解决这些问题。它通过检查不同的版本并选择最适合的版本来解决冲突的依赖关系。管理 Maven 仓库。Maven Helper 还提供了一个简单的途径来管理和清理本地的 Maven 仓库。这个功能可以帮助你更高效地使用 Maven。 4. Mybatis.cfg.xml核心配置文件 Mybatis.cfg.xml properties属性 标签 开发者可通过properties属性来实现引用配置文件。这些属性都是可外部配置且可动态替换的。 setting设置 标签 setting设置标签这是Mybatis中极为重要的调整设置它们会改变Mybatis的运行时行为。 environments环境配置标签 MyBatis 可以配置成适应多种环境 不过要记住尽管可以配置多个环境但每个 SqlSessionFactory 实例只能选择一种环境。 typeAliases 类型别名标签 typeAliases类型别名是为java类型设置一个短的名字存在的意义仅在于用来减少类完全限定名的冗余。java内置内建类型别名它们都不区分大小写注意对基本类型名称重复采用的特殊命名风格。 mappers映射器标签 注册绑定我们的Mapper文件 注意1.接口和它的Mapper配置文件必须同名 2. 接口和它的Mapper配置文件必须在同一个包下 ?xml version1.0 encodingUTF-8? !DOCTYPE configuration PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-config.dtd configuration!-- 引入外部配置文件 --properties resourcejdbc.properties/settingssetting namelogImpl valueLOG4J2//settings!-- 别名 --typeAliases!--typeAlias typecom.javaxl.model.Book aliasBook/--/typeAliases!-- 配置mybatis运行环境 --environments defaultdevelopmentenvironment iddevelopment!-- typeJDBC 代表使用JDBC的提交和回滚来管理事务 --transactionManager typejdbc/!-- mybatis提供了3种数据源类型分别是POOLED,UNPOOLED,JNDI --!-- POOLED 表示支持JDBC数据源连接池 --!-- UNPOOLED 表示不支持数据源连接池 --!-- JNDI 表示支持外部数据源连接池 --dataSource typePOOLEDproperty namedrivervalue${jdbc.driver}/property nameurlvalue${jdbc.url}/property nameusername value${jdbc.username}/property namepassword value${jdbc.password}//dataSource/environment/environmentsmappersmapper resourcecom/javaxl/mapper/BookMapper.xml//mappers /configuration 三. 基于ssm逆向工程的使用 1. 配置generatorConfig.xml generatorConfig.xml ?xml version1.0 encodingUTF-8 ? !DOCTYPE generatorConfiguration PUBLIC -//mybatis.org//DTD MyBatis Generator Configuration 1.0//ENhttp://mybatis.org/dtd/mybatis-generator-config_1_0.dtd generatorConfiguration!-- 引入配置文件 --properties resourcejdbc.properties/!--指定数据库jdbc驱动jar包的位置--classPathEntry locationD:\\maven\\mvn_repository\\mysql\mysql-connector-java\\5.1.44\\mysql-connector-java-5.1.44.jar/!-- 一个数据库一个context --context idinfoGuardian!-- 注释 --commentGeneratorproperty namesuppressAllComments valuetrue/!-- 是否取消注释 --property namesuppressDate valuetrue/ !-- 是否生成注释代时间戳 --/commentGenerator!-- jdbc连接 --jdbcConnection driverClass${jdbc.driver}connectionURL${jdbc.url} userId${jdbc.username} password${jdbc.password}/!-- 类型转换 --javaTypeResolver!-- 是否使用bigDecimal false可自动转化以下类型Long, Integer, Short, etc. --property nameforceBigDecimals valuefalse//javaTypeResolver!-- 01 指定javaBean生成的位置 --!-- targetPackage指定生成的model生成所在的包名 --!-- targetProject指定在该项目下所在的路径 --javaModelGenerator targetPackagecom.xissl.modeltargetProjectsrc/main/java!-- 是否允许子包即targetPackage.schemaName.tableName --property nameenableSubPackages valuefalse/!-- 是否对model添加构造函数 --property nameconstructorBased valuetrue/!-- 是否针对string类型的字段在set的时候进行trim调用 --property nametrimStrings valuefalse/!-- 建立的Model对象是否 不可改变 即生成的Model对象不会有 setter方法只有构造方法 --property nameimmutable valuefalse//javaModelGenerator!-- 02 指定sql映射文件生成的位置 --sqlMapGenerator targetPackagecom.xissl.mappertargetProjectsrc/main/java!-- 是否允许子包即targetPackage.schemaName.tableName --property nameenableSubPackages valuefalse//sqlMapGenerator!-- 03 生成XxxMapper接口 --!-- typeANNOTATEDMAPPER,生成Java Model 和基于注解的Mapper对象 --!-- typeMIXEDMAPPER,生成基于注解的Java Model 和相应的Mapper对象 --!-- typeXMLMAPPER,生成SQLMap XML文件和独立的Mapper接口 --javaClientGenerator targetPackagecom.xissl.mappertargetProjectsrc/main/java typeXMLMAPPER!-- 是否在当前路径下新加一层schema,false路径com.oop.eksp.user.model true:com.oop.eksp.user.model.[schemaName] --property nameenableSubPackages valuefalse//javaClientGenerator!-- 配置表信息 --!-- schema即为数据库名 --!-- tableName为对应的数据库表 --!-- domainObjectName是要生成的实体类 --!-- enable*ByExample是否生成 example类 --!--table schema tableNamet_book domainObjectNameBook--!--enableCountByExamplefalse enableDeleteByExamplefalse--!--enableSelectByExamplefalse enableUpdateByExamplefalse--!--lt;!ndash; 忽略列不生成bean 字段 ndash;gt;--!--lt;!ndash; ignoreColumn columnFRED / ndash;gt;--!--lt;!ndash; 指定列的java数据类型 ndash;gt;--!--lt;!ndash; columnOverride columnLONG_VARCHAR_FIELD jdbcTypeVARCHAR / ndash;gt;--!--/table--table schema tableNamet_mvc_Book domainObjectNameBookenableCountByExamplefalse enableDeleteByExamplefalseenableSelectByExamplefalse enableUpdateByExamplefalse!-- 忽略列不生成bean 字段 --!-- ignoreColumn columnFRED / --!-- 指定列的java数据类型 --!-- columnOverride columnLONG_VARCHAR_FIELD jdbcTypeVARCHAR / --/table/context /generatorConfiguration 2. 配置maven运行generator命令 生成JavaBeansql映射文件和Mapper接口 四. Mybatis增删改查案例 Mapper接口 package com.xissl.biz;import com.xissl.model.Book;public interface BookBiz {int deleteByPrimaryKey(Integer bid);int insert(Book record);int insertSelective(Book record);Book selectByPrimaryKey(Integer bid);int updateByPrimaryKeySelective(Book record);int updateByPrimaryKey(Book record); }添加一个类去实现这个Mapper接口 package com.xissl.biz.impl;import com.xissl.biz.BookBiz; import com.xissl.mapper.BookMapper; import com.xissl.model.Book;/*** author xissl* create 2023-08-21 10:10*/ public class BookBizImpl implements BookBiz {private BookMapper bookMapper;public BookMapper getBookMapper() {return bookMapper;}public void setBookMapper(BookMapper bookMapper) {this.bookMapper bookMapper;}Overridepublic int deleteByPrimaryKey(Integer bid) {return bookMapper.deleteByPrimaryKey(bid);}Overridepublic int insert(Book record) {return bookMapper.insert(record);}Overridepublic int insertSelective(Book record) {return bookMapper.insertSelective(record);}Overridepublic Book selectByPrimaryKey(Integer bid) {return bookMapper.selectByPrimaryKey(bid);}Overridepublic int updateByPrimaryKeySelective(Book record) {return bookMapper.updateByPrimaryKeySelective(record);}Overridepublic int updateByPrimaryKey(Book record) {return bookMapper.updateByPrimaryKey(record);} } Mybatis 工具类 package com.xissl.util;import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder;public class SessionUtil {private static SqlSessionFactory sessionFactory;private static ThreadLocalSqlSession threadLocal new ThreadLocalSqlSession();static {sessionFactory new SqlSessionFactoryBuilder().build(SessionUtil.class.getResourceAsStream(/mybatis.cfg.xml));}public static SqlSession openSession() {SqlSession session threadLocal.get();if (null session) {session sessionFactory.openSession();threadLocal.set(session);}return session;}public static void main(String[] args) {SqlSession session openSession();System.out.println(session.getConnection());session.close(); // System.out.println(session.getConnection());} } 测试 package com.xissl.demo;import com.xissl.biz.BookBiz; import com.xissl.biz.impl.BookBizImpl; import com.xissl.mapper.BookMapper; import com.xissl.model.Book; import com.xissl.util.SessionUtil; import org.apache.ibatis.session.SqlSession; import org.junit.After; import org.junit.Before; import org.junit.Test;/*** author xissl* create 2023-08-21 10:18*/ public class demo01 {private SqlSession sqlSession;private BookBiz bookBiz;Beforepublic void before(){System.out.println(执行测试方法前执行的代码块...);sqlSession SessionUtil.openSession();BookBizImpl bookBiz new BookBizImpl();BookMapper mapper sqlSession.getMapper(BookMapper.class);bookBiz.setBookMapper(mapper);this.bookBiz bookBiz;}Afterpublic void after(){System.out.println(执行测试方法之后执行);}Testpublic void test01(){System.out.println(测试方法);Book book bookBiz.selectByPrimaryKey(25);System.out.println(book);} } 运行结果
http://www.w-s-a.com/news/442556/

相关文章:

  • 密云微网站建设汽车之家手机官网首页
  • 多语言外贸网站制作苏州建设网站微信公众号
  • 用wordpress建站学什么百度给企业做网站吗
  • 福建城乡建设网站做数码测评的网站
  • 东海县建设局网站wordpress 好用的主题
  • 网站图片设计制作制作一个门户网站需要多少钱
  • 虚拟币交易网站源码自己给网站做支付接口
  • 免费的seo网站在线 crm
  • 绍兴市高速公路建设指挥部网站网站主页和子页风格如何统一
  • 获取网站状态网站租金可以做办公费吗
  • 网站开发执行什么标准号wordpress主题 表白
  • 杭州网站推广与优化凡科网是免费的吗
  • 公司网站的重要性门户网站推广介绍方案
  • 做金融网站看那些素材江门网红打卡景点蓬江区
  • 饮食网站模板建网站中企动力优
  • 郑州 制造 网站东平企业建站公司
  • 天津设计师网站大全展示型网站搭建
  • 南宁网站建设 传导网站开发平台开发公司
  • 网站建设好处上海建设工程网站
  • 黑河哈尔滨网站建设太原网站制作定制开发
  • 建站做网站香河住房与建设局网站
  • 如何制造一个网站域名分类网站
  • 解析视频的网站怎么做凡科网快图
  • 企业网站优化问题接单app平台有哪些
  • 怎么做网站后缀识别符号才不会变什么是电子商务网站建设
  • 中山 五金 骏域网站建设专家专门用来制作网页的软件是什么
  • 怎么做刷东西的网站数据分析软件工具有哪些
  • 官方购物网站正品交易网站域名
  • lol网站建设seo 网站太小
  • 网站建设销售职责手机网站制作软件