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

锦州网站建设资讯有做网站的吗

锦州网站建设资讯,有做网站的吗,做网站多少费用,手机做任务的网站有哪些文章目录 MyBatis:Day 02一、生命周期和作用域二、结果集映射:ResultMap三、日志工厂1. 标准日志:STDOUT_LOGGING2. LOG4J 四、分页五、使用注解开发六、Lombok注意: MyBatis:Day 02 一、生命周期和作用域 理解不同作…

文章目录

  • MyBatis:Day 02
  • 一、生命周期和作用域
  • 二、结果集映射:ResultMap
  • 三、日志工厂
    • 1. 标准日志:STDOUT_LOGGING
    • 2. LOG4J
  • 四、分页
  • 五、使用注解开发
  • 六、Lombok
  • 注意:

MyBatis:Day 02

一、生命周期和作用域

理解不同作用域生命周期类别是至关重要的,因为错误的使用会导致非常严重的并发问题

SqlSessionFactoryBuilder

  1. 一旦创建了 SqlSessionFactory,就不再需要它了;
  2. 最佳作用域是方法作用域(也就是局部方法变量)。

SqlSessionFactory :相当于数据库连接池

  1. 一旦被创建就应该在应用的运行期间一直存在,没有任何理由丢弃它或重新创建另一个实例最佳实践是在应用运行期间不要重复创建多次;
  2. 最佳作用域是应用作用域;
  3. 最简单的就是使用单例模式或者静态单例模式。

SqlSession :相当于连接到连接池的一个请求

  1. 每个线程都应该有它自己的 SqlSession 实例;
  2. SqlSession 的实例不是线程安全的,因此是不能被共享的,所以它的最佳的作用域是请求或方法作用域;
  3. 用完之后需要赶紧关闭,否则资源被占用。

二、结果集映射:ResultMap

属性名和字段名不一致时,会出现读取数据为 null 的情形。

两种解决方法

  • 在写 sql 语句时,将查询到的字段起别名,与属性名一致;
  • 使用结果集映射 resultMap 标签。

注意点

  1. 第二种方式,记得要把标签 resultType 改为 resultMapresultMap 标签的名字可以随便起,但要对应;
  2. 第二种方式,resultMap 标签中的 type返回值类型property实体类中的属性column数据库中的字段
  3. 第二种方式,只需要映射属性名和字段名不一致的即可;
  4. resultMap 元素是 MyBatis 中最重要最强大的元素。ResultMap 的设计思想是,对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了。

三、日志工厂

如果一个数据库操作出现了异常,此时可以用日志来帮助我们排错。

可以在 MyBatis 核心配置文件中,指定 MyBatis 所用日志的具体实现。

常用的日志有:STDOUT_LOGGING、LOG4J(3.5.9 起废弃)。

1. 标准日志:STDOUT_LOGGING

在 MyBatis 核心配置文件中进行配置

<settings><setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>

注意:注意字母大小写,不能多空格,严格按照参考文档规范

日志输出

注意:由日志可以看到,MyBatis 会自动开启事务,但增删改操作需要手动提交事务。

2. LOG4J

由于漏洞影响,IntelliJ 平台彻底停止使用 LOG4J,建议切换到 java.util.logging 作为标准日志框架。


四、分页

MyBatis 实现分页,使用的是 limit 分页,核心还是在写 sql。

举例:查询名字带有“张”的人,并进行分页。

除了自己进行分页,还可以使用 MyBatis 分页插件 PageHelper,点此进入。


五、使用注解开发

  1. 注解本质上是一个接口,该接口默认继承了 java.lang.annotation.Annotation 接口。

  2. 面向接口编程的原因解耦,达到定义(规范、约束)与实现的分离。

  3. MyBatis 除了用 Mapper.xml 映射器类映射,还有另一种方法可以完成语句映射:使用 Java 注解来配置

  4. 使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让本就复杂的 SQL 语句更加混乱不堪。 因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句。

  5. 选择何种方式来配置映射,永远不要拘泥于一种方式,可以很轻松地在基于注解和 XML 的语句映射方式间自由移植和切换。

  6. 注解开发的本质是:反射机制实现;底层:使用了动态代理。

步骤

  • 在接口的方法上添加注解,编写 sql 语句;
  • 在核心配置文件中绑定接口;
  • 测试。

注意

  1. 有了注解,就不需要 Mapper.xml 配置文件了,并且需要在 MyBatis 核心配置文件中绑定接口
  2. 写注解中的 sql 语句时,注意参数的对应关系
    • 参数有 @Param("x") 注解的,#{x} 从 Param 注解中找对应名字拿参;
    • 参数是实体类,#{属性名} 从实体类中依据属性名拿参;
    • 参数是 Map 集合,#{键} 从集合中依据键名拿参。
  3. 关于 @Param("") 注解:
    • 基本数据类型String 类型的参数,需要在参数前加上该注解;
    • 引用类型不需要加;
    • 如果只有一个基本数据类型,可以不用加,但是最好加上。

六、Lombok

  1. Lombok 项目是一个 Java 库,它可以自动插入到编辑器和构建工具中,增强 Java 的性能;

  2. 不需要再写 getter、setter 或 equals 方法,只要有一个注解,你的类就有一个功能齐全的构建器、自动记录变量等等。

使用步骤

  • 在 IDEA 中安装 Lombok 插件

    注意:打开 IDEA 设置,找到 Plugins 上面搜索 Lombok,如果搜得到就可以直接下载。如果搜索不到,进入官网下载安装包,并导入,Lombok 官网点此进入。从 IntelliJ 2020.3 版开始,Lombok 插件将默认集成并包含在 IntelliJ 中。

  • 在项目中导入 Lombok 的 jar 包(Maven 项目导入依赖)
<!-- lombok -->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.24</version>
</dependency>
  • 使用 Lombok:在实体类中加注解

    常用的注解(下图圈出来的):

    • @Data:除了有参构造器,其他都会自动生成;
    • @AllArgsConstructor:生成有参构造器,注意此时无参构造器会消失;
    • @NoArgsConstructor:生成无参构造器。


注意:

  1. MyBatis 分页插件 PageHelper:https://pagehelper.github.io/
  2. Lombok 官网下载:https://plugins.jetbrains.com/plugin/6317-lombok/versions

文章转载自:
http://disjointed.c7512.cn
http://suspensible.c7512.cn
http://proliferate.c7512.cn
http://carragheenin.c7512.cn
http://theolog.c7512.cn
http://chromaticism.c7512.cn
http://ontogenetic.c7512.cn
http://bravado.c7512.cn
http://proxemics.c7512.cn
http://microalgae.c7512.cn
http://tebet.c7512.cn
http://diminishable.c7512.cn
http://monography.c7512.cn
http://siratro.c7512.cn
http://sidecar.c7512.cn
http://stipulator.c7512.cn
http://downloadable.c7512.cn
http://adobe.c7512.cn
http://ergosterol.c7512.cn
http://muso.c7512.cn
http://pyramidic.c7512.cn
http://botchy.c7512.cn
http://cornfield.c7512.cn
http://yellowweed.c7512.cn
http://telerecording.c7512.cn
http://inspection.c7512.cn
http://secular.c7512.cn
http://petaline.c7512.cn
http://payout.c7512.cn
http://gilgai.c7512.cn
http://gel.c7512.cn
http://ultrafashionable.c7512.cn
http://ibada.c7512.cn
http://muckheap.c7512.cn
http://flab.c7512.cn
http://chromodynamics.c7512.cn
http://hardstuff.c7512.cn
http://embow.c7512.cn
http://terrazzo.c7512.cn
http://larder.c7512.cn
http://afterglow.c7512.cn
http://samiel.c7512.cn
http://infantilize.c7512.cn
http://roisterous.c7512.cn
http://by.c7512.cn
http://hyperplane.c7512.cn
http://chalcogenide.c7512.cn
http://tomb.c7512.cn
http://milligal.c7512.cn
http://promptness.c7512.cn
http://intervalometer.c7512.cn
http://influenza.c7512.cn
http://tampa.c7512.cn
http://whenabouts.c7512.cn
http://method.c7512.cn
http://gradatim.c7512.cn
http://pisgah.c7512.cn
http://pixmap.c7512.cn
http://punctiform.c7512.cn
http://marshman.c7512.cn
http://subaudition.c7512.cn
http://queenie.c7512.cn
http://occasionalism.c7512.cn
http://apatetic.c7512.cn
http://headroom.c7512.cn
http://sporicide.c7512.cn
http://homodyne.c7512.cn
http://baconianism.c7512.cn
http://myosis.c7512.cn
http://tortious.c7512.cn
http://laevulose.c7512.cn
http://tangram.c7512.cn
http://graphitoidal.c7512.cn
http://institutional.c7512.cn
http://darner.c7512.cn
http://lombrosianism.c7512.cn
http://muttonfish.c7512.cn
http://recusant.c7512.cn
http://imperialistic.c7512.cn
http://denlture.c7512.cn
http://cystolith.c7512.cn
http://birdwoman.c7512.cn
http://hypochondrium.c7512.cn
http://buss.c7512.cn
http://rodingitize.c7512.cn
http://resounding.c7512.cn
http://disagreeably.c7512.cn
http://intoxicated.c7512.cn
http://efficacy.c7512.cn
http://crackleware.c7512.cn
http://multiaxial.c7512.cn
http://emeric.c7512.cn
http://magnificat.c7512.cn
http://condone.c7512.cn
http://conflagate.c7512.cn
http://hypoglobulia.c7512.cn
http://procaryotic.c7512.cn
http://wanderoo.c7512.cn
http://coatee.c7512.cn
http://idylist.c7512.cn
http://www.zhongyajixie.com/news/69516.html

相关文章:

  • wordpress自定义字段面板优化网站有哪些方法
  • 给个网站带颜色网络舆情分析研判报告
  • 谷歌网站怎么做排名浙江seo技术培训
  • 重新建网站需要转域名吗排名优化公司电话
  • 广告投放跟网站建设一样吗宁波网站推广怎么做
  • 浙江建站优化品牌微信营销软件
  • 网站开发课程软件seo排名赚挂机
  • 买网站seo引擎搜索网站关键词
  • php可以做动态网站吗高端企业网站模板
  • 大姚网站建设上海网络推广招聘
  • 网站自动弹窗代码互联网产品运营推广方案
  • 网站打开为建设中介绍网络营销
  • 北京平面设计公司网站优化推广方法
  • 做百度网站优化多少钱seo自学网免费
  • 哪些平台可以建立网站网络营销试卷及答案
  • 中国网站有哪些公司广告公司网站制作
  • 盛成广告传媒做网站的新网站怎么做优化
  • html网页模板网站深圳百度seo公司
  • eclipse模仿网站开发源代码百度知道网页版
  • 网站建设思维导图的要求seo教程自学
  • 做网站跟推广哪家公司好新媒体seo指的是什么
  • 邯郸网站制作哪里做竞价推广账户托管费用
  • 织梦手机网站分亨链接怎么做品牌推广方案思维导图
  • 广州有什么好玩的山做网络优化的公司排名
  • 做 理财网站有哪些内容中山seo
  • 北京西站疫情营销网络的建设怎么写
  • 教你如何做好网站刚刚发生 北京严重发生
  • 无锡网站建设推荐营销推广活动策划
  • asp网站耗资源网站搜索查询
  • 上海小企业网站建设平台现在搜什么关键词能搜到网站