发表于: 2021-11-23 23:12:50
0 769
了解什么是原型图
1.什么是原型图?
原型图简单的来说,就是一款产品成型之前的一个简单的框架,就是将页面的排版布局展现出来,每个功能键的交互,使产品的初步构思有一个可视化的展示。
2.原型图的作用和重要性
当一个企业想开发一款产品时,那么绝大多数企业本身并不懂得互联网知识,与外包公司沟通清楚业务流程和需求后,其实并不知道想象得到,自己的产品的表现形态。
那么原型图就可以让自己提前看到,产品的界面样式,每个按钮的功能和效果,也可以看到产品的基本框架,和运作机制,获得比较真实的感受。
因为原型图不是最终设计稿,当有需求需要修改,或者逻辑交互不符合需求时,修改起来也是比较方便,不会很麻烦,能够在开发前排除相当一部分的潜在问题和故障。
在企业方确定了原型图后,接下来作为UI的设计人员,直接看原型图,根据原型图设计相关的界面和交互,因为UI设计人员,没有与企业方直接沟通过需求,不能理解产品的真实意图,给设计人员提供一份原型图,能很好的节省沟通成本。
开发人员也可以很快速的理解到产品的样式和需求,以及功能点,如果没有原型图,开发人员就会出现很多想当然的情况,结果做出来的功能不是自己想要的,最后就会出现需求和开发互相推卸的情况。
其实最后会发现,原型图让大家都能参与到项目中来,让产品往预期的方向推进,并能得出解决方案,也省去很多沟通的时间成本。
了解需求,根据需求设计数据库
01、作为网站的管理者,我需要通过输入和后台的账号和密码来登录网站后台,在保障后台的安全同时方便我管理网站。
02、作为网站的管理者,我需要后台有banner管理功能,以便于我可以对前台展示的banner进行着增加、修改、删除、查看。
03、作为网站的管理者,我需要后台有关于我的工作室管理功能,以便于我可以对前台展示的关于我和我的工作室的内容进行着增加、修改、查看。
04、作为网站的管理者,我需要后台有留言管理功能,以便于我可以查看访问我网站的客户给我的留言,也可以回复,以及设置为精选留言。
05、作为网站的管理者,我需要后台有作品管理功能,以便于我可以对前台展示的作品进行分类、增加、修改、查看。
06、作为网站的管理者,我需要后台轨迹管理功能,以便于我可以对前台展示的轨迹内容进行着增加、修改、查看。
07、作为网站的管理者,我需要后台有修改密码功能,以便于我可以在后台密码泄露的情况下修改密码,保障后台账户安全。
08、作为网站的管理者,我需要后台有模块管理功能,以便于我可以前台根据业务的变化,增加新的模块或删除旧的模块。
09、作为网站的管理者,我需要后台有账户管理功能,以便于我可以实时管理可以登录后台人员。
10、作为网站的管理者,我需要后台有角色管理功能,以便于我可以分配登录后台人员的操作权限。
什么是代码生成,mybatis generator代码生成是怎么实现的,还有什么办法可以生成代码?
虽然MyBatis是一个简单易学的框架,但是配置XML文件也是一件相当繁琐的一个过程,而且会出现很多不容易定位的错误。当在工作中需要生成大量对象的时候,有太多的重复劳动,简直是生无可恋。所以,官方开发了 MyBatis Generator。它只需要很少量的简单配置,就可以完成大量的表到Java对象的生成工作,拥有零出错和速度快的优点,让开发人员解放出来更专注于业务逻辑的开发。
有四种办法生成代码
第一种: 命令行式创建
第二种: IDEA 中使用mybatis-generator-maven-plugin插件自动生成MyBatis代码
第三种方式 通过MybatisGenerator类和配置文件生成
第四种方式 通过GeneratorAntTask类和配置文件生成
我使用的是 IDEA 中使用mybatis-generator-maven-plugin插件自动生成MyBatis代码,方法如下
在pom.xml中加载依赖包
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<configuration>
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
</dependencies>
</plugin>
</plugins>
并设置plugin
设置generatorConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!-- context 是逆向工程的主要配置信息 -->
<!-- id:起个名字 -->
<!-- targetRuntime:设置生成的文件适用于那个 mybatis 版本 -->
<context id="default" targetRuntime="MyBatis3">
<!--optional,指在创建class时,对注释进行控制-->
<commentGenerator>
<property name="suppressDate" value="true"/>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--jdbc的数据库连接 wg_insert 为数据库名字-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/artist?useUnicode=true&characeterEncoding=utf-8&serverTimezone=UTC"
userId="root"
password="root"></jdbcConnection>
<!--非必须,类型处理器,在数据库类型和java类型之间的转换控制-->
<javaTypeResolver>
<!-- 默认情况下数据库中的 decimal,bigInt 在 Java 对应是 sql 下的 BigDecimal 类 -->
<!-- 不是 double 和 long 类型 -->
<!-- 使用常用的基本类型代替 sql 包下的引用类型 -->
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- targetPackage:生成的实体类所在的包 -->
<!-- targetProject:生成的实体类所在的硬盘位置 -->
<javaModelGenerator targetPackage="com.artist.entity"
targetProject="src/main/java">
<!-- 是否允许子包 -->
<property name="enableSubPackages" value="false"/>
<!-- 是否对modal添加构造函数 -->
<property name="constructorBased" value="true"/>
<!-- 是否清理从数据库中查询出的字符串左右两边的空白字符 -->
<property name="trimStrings" value="true"/>
<!-- 建立modal对象是否不可改变 即生成的modal对象不会有setter方法,只有构造方法 -->
<property name="immutable" value="false"/>
</javaModelGenerator>
<!-- targetPackage 和 targetProject:生成的 mapper 文件的包和位置 -->
<sqlMapGenerator targetPackage="mapping"
targetProject="src/main/resources">
<!-- 针对数据库的一个配置,是否把 schema 作为字包名 -->
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!-- targetPackage 和 targetProject:生成的 interface 文件的包和位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.artist.mapper" targetProject="src/main/java">
<!-- 针对 oracle 数据库的一个配置,是否把 schema 作为字包名 -->
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!-- tableName是数据库中的表名,domainObjectName是生成的JAVA模型名,后面的参数不用改,要生成更多的表就在下面继续加table标签 -->
<table tableName="admin_user" domainObjectName="User"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false"></table>
<!-- tableName是数据库中的表名,domainObjectName是生成的JAVA模型名,后面的参数不用改,要生成更多的表就在下面继续加table标签 -->
<table tableName="post" domainObjectName="Post"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
运行mybatis-generator生成相应的文件
遇到的问题:前面加载jar包后 maven一直没有mybatis-generator 的选项,百度查资料后要在<pluginManagement>同一级别下才会生效,如下:
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<configuration>
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
</dependencies>
</plugin>
</plugins>
<pluginManagement>
<plugins>
</plugins>
</pluginManagement>
</build>
如在build中加数据mysql-connector-java 包的话配置文件中需加载 连接数据库的jar包
自动生成的mapper.xml 文件需要在头文件中加
<?xml version="1.0" encoding="UTF-8" ?>
不然 启动容器(resin tomcat)会报错,自动生成的文件没有这个头文件
评论