发表于: 2017-09-02 16:05:37

1 1009


今天完成的事情:

整理了一下任务3的脚本和命令,先开始任务4吧

先看界面

这个我觉得能做成静态界面,没必要建个表,略过

这个可以建个表,如下

只有id和内容应该就可以了

学员展示,图片还是不管,应该建个学员表就可以了,还可以和下面的累计人数联动

studying和working分别用0和1表示在还是不在,然后可以统计

这个表据说需要个外键,我感觉也可以不用,直接写在一个表里,分开调用应该可以

先这样试试,不行再改

要重新写一个项目了,用一个传说中的插件可以一键生成mybatis代码,学习一下

用Mybatis-generator生成mybatis代码,因为项目是用maven搭建的,所以需要用到mybatis-generator-maven-plugin插件

在pom文件里添加依赖和插件

<dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis</artifactId>
   <version>3.4.4</version>
</dependency>
<dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis-spring</artifactId>
   <version>1.3.1</version>
</dependency>
<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.42</version>
</dependency>
<dependency>
   <groupId>commons-dbcp</groupId>
   <artifactId>commons-dbcp</artifactId>
   <version>1.4</version>
</dependency>
<dependency>
   <groupId>org.mybatis.generator</groupId>
   <artifactId>mybatis-generator-core</artifactId>
   <version>1.3.5</version>
</dependency>
<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/mybatis-generator/generatorConfig.xml</configurationFile>

   </configuration>

</plugin>

还有其他的一些mysql的依赖和以前一样就行了

安好了这个发现在右边maven插件栏里多了一个

此时就可以使用了,不过还需要一个配置文件来告诉插件要怎么执行

在resources下建一个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>
   <!-- 导入属性配置 -->
   <properties resource="mybatis-generator/generatorConfig.properties"></properties>
   <!-- 指定特定数据库的jdbc驱动jar包位置 -->
   <classPathEntry location="${jdbc_driverPath}" />
   <context id="my" targetRuntime="MyBatis3">

       <!-- optional,旨在创建class时,对注释进行控制 -->
       <commentGenerator>
           <property name="suppressDate" value="false" />
           <!-- 下面一行用于取消注释的生成 -->
           <property name="suppressAllComments" value="true" />
       </commentGenerator>

       <!-- jdbc的数据库连接 -->
       <jdbcConnection driverClass="${jdbc_driverClassName}" connectionURL="${jdbc_url}" userId="${jdbc_username}" password="${jdbc_password}"></jdbcConnection>

       <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
       <!--<javaTypeResolver >-->
           <!--<property name="forceBigDecimals" value="false" />-->
       <!--</javaTypeResolver>-->

       <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
           targetPackage     指定生成的model生成所在的包名
           targetProject     指定在该项目下所在的路径
       -->
       <javaModelGenerator targetPackage="${modelPackage}" targetProject="${targetProject}">
           <!-- 是否对model添加 构造函数 -->
           <!--<property name="constructorBased" value="true"/>-->

           <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
           <property name="enableSubPackages" value="true" />

           <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
           <!--<property name="immutable" value="true"/>-->

           <!-- 给Model添加一个父类 -->
           <!--<property name="rootClass" value="com.foo.louis.Hello"/>-->

           <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
           <property name="trimStrings" value="true" />
       </javaModelGenerator>

       <!--Mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
       <sqlMapGenerator targetPackage="${mappingPackage}" targetProject="${targetProject}">
           <property name="enableSubPackages" value="true" />
       </sqlMapGenerator>

       <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
               type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
               type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
               type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
       -->
       <javaClientGenerator targetPackage="${mapperPackage}" targetProject="${targetProject}" type="XMLMAPPER">
           <property name="enableSubPackages" value="true" />
       </javaClientGenerator>

       <!--schema数据库名,tableName表名,domainObjectName生成的Dao名-->
       <table schema="mybatis" tableName="goodstudent" domainObjectName="student"
              enableCountByExample="false" enableUpdateByExample="false"
              enableDeleteByExample="false" enableSelectByExample="false"
              selectByExampleQueryId="false">
           <!--<columnRenamingRule searchString="^D_" replaceString=""/> -->
       </table>
   </context>
</generatorConfiguration>

很多配置都不知道有啥用,就注释掉了,大概这么配就可以了。然后我使用了外置的属性配置文件,generator.properties


jdbc_driverPath=E:/Program Files/apache-maven-3.5.0/repository/mysql/mysql-connector-java/5.1.42/mysql-connector-java-5.1.42.jar
jdbc_driverClassName=com.mysql.jdbc.Driver
jdbc_url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=UTF-8
jdbc_username=root
jdbc_password=*******
targetProject=C:/Users/HP/IdeaProjects/mytask/src/main/java
modelPackage=com.jnshu.entities
mapperPackage=com.jnshu.dao
mappingPackage=resource.mapping

这个文件的坑还是要说一下,properties文件里最好不要写中文,默认这个文件是不支持中文的,非要写的话可以转成Unicode码再输进去。

然后可以配置一下maven的启动命令

也可以直接用插件,运行一下

我这是运行了三次,把上面三张表都变成了项目,就是这样了。

然后加入spring和springmvc吧,还要学一下tiles

明天计划的事情:

看情况并不能爬山_(:з」∠)_,弄弄小课堂啥的好了

遇到的问题:

我这个表设计的有什么问题吗!?

收获:

以上


返回列表 返回列表
评论

    分享到