发表于: 2020-04-28 23:24:06

1 1132


今天完成的事情:


重新编辑提交了任务三内容

昨天写了手贱关掉没保存,好气。



下午看了看spring事务的相关知识

虽然前面看过mysql的事务相关知识,略微了解了些

但各种各样的概念看的我头痛,明天再看一遍 。

跟着教程再配置下注解型的声明式事务。   



完成了一点深度思考


深度思考

1. 什么是代码生成,mybatis generator代码生成是怎么实现的,还有什么办法可以生成代码


代码生成就是利用插件自动生成实体类  接口及crud代码,减少代码工作量。


mybatis generator代码生成的用法。 自己前面只是了解,没搭建过这个,今天配置出来,感觉功能确实强大。


先给出文件路径   自己建

dao接口包  

enity实体类包  

resources下的mapper映射包 


pom.xml文件添加
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
<configurationFile>src/main/resources/gengratorConfig.xml</configurationFile>
</configuration>
</plugin>


resources 下新建generatorConfig.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
<generatorConfiguration>
<!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包-->
<classPathEntry location="E:\Maven-Repository\mysql\mysql-connector-java\5.1.6\mysql-connector-java-5.1.6.jar"/>
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressDate" value="true"/>
<!-- 是否去除自动生成的注释 true:是 : false: -->
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--数据库链接URL,用户名、密码 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/student" userId="root" password="451976">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成模型的包名和位置-->
<javaModelGenerator targetPackage="com.mb.enity" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成映射文件的包名和位置-->
<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!-- 生成DAO的包名和位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.mb.dao" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!-- 要生成的表 banner是数据库中的表名或视图名 bannerA是实体类名-->
<table tableName="banner" domainObjectName="bannerA" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>


配置文件头   红框处可能会出现红色      alt+enter   第一个引入就好。

添加一个maven启动项    红框内加入 mybatis-generator:generate -e


然后启动即可


功能确实强大,实体类  接口   xml文件都自动完成了
(xml文件 resultMap 都能自动生成) 

都是固定模板, 可根据自己需求增加或减少。


还有什么办法可以生成代码。
mgbatis-plus 
  Mybatis-Plus 是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

mybatis怎么做到增强代码的: 它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行。 


2.Mysql的一般而言应该配置多大的内存, 多大的硬盘 ,多大的连接数?


硬盘     需要根据数据表,及业务量大小来决定

内存的话,只要把需求响应时间降低在200ms之内    就是合理的内存设置。


MySQL默认的连接数为100   最大可以达到16384
此命令可以查看当前最大连接数。

show variables like '%max_connections%';  

我的目前是100


可以在mysql    my.ini文件里修改最大连接数



3.在端到端的请求当中,建立Http连接需要多久,Model通过JSP转成Json需要多久,Nginx调用Resin需要多久,Service访问DB需要多久,一个Sql语句执行的时间是多久。



明天计划的事情:


spring事务管理

完成剩下的深度思考


返回列表 返回列表
评论

    分享到