• jeesite笔记


    环境

    Github上的不能初始化数据库:https://github.com/thinkgem/jeesite

    官网上的可以: http://jeesite.com/

    用 Idea 打开,修改 srcmain esourcesjeesite.properties 中的数据库连接字符串,重新导入Marven包。运行dbinit-db.bat。

    配置Tomcat8,就可以运行了。

    规范

    modules 下里分了几个系统组,每个系统组里,又分了 entity,dao,service,web,调用关系:

    web->service->dao->entity

    Dao 是 Xml 对 Java 的映射,所以Dao不需要实现,它是接口。

    生成配置

    1. 创建数据表。

    2. 生成单表实体: public class {DbTable} extends DataEntity<{DbTable}> 

    3. 生成表Dao:

    @MyBatisDao
    public interface {DbTable}Dao extends CrudDao<{DbTable}> {
        public {DbTable} {XmlFunction}(String Id);
    }

    4. 生成表Service:Server可以根据情况,按MDA模型中的M进行生成。一个表可以生成多个Service,多个表可以使用一个Service。

    @Service
    @Transactional(readOnly = true)
    public class {DbTable}Service extends CrudService<{DbTable}Dao,{DbTable}> {
        @Autowired
        public {DbTable1}Dao {DbTable1}Dao;
        
        @Autowired
        public {DbTable2}Dao {DbTable2}Dao;
    
        public {自定义返回实体} {业务方法} (String Id){
            {DbTable1}Dao.方法();
        {DbTable2}Dao.方法();
    
        return {自定义返回实体};
        }
    }

    如果继承 CrudService,它是为代码生成器准备的,需要在Dao和Xml中定义以下方法:

    public interface CrudDao<T> extends BaseDao {
        public T get(String id);     
        public T get(T entity);
        public List<T> findList(T entity);
        public List<T> findAllList(T entity);
        @Deprecated
        public List<T> findAllList();
        public int insert(T entity);
        public int update(T entity);
        @Deprecated
        public int delete(String id);
        public int delete(T entity);
    }

    5. 定义Xml,位置:resourcesmappingsmodules组

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="{NameSpace}.{DbTable}Dao">
        <!-- 根据编号获得用户 -->
        <select id="{XmlFunction}" resultType="{DbTable}">
            SELECT *
            FROM {DbTable}
            WHERE id = #{id}
        </select>
    </mapper>

    resultType="HashMap"  或者: resultType="Map"  可以使 XmlFunction 返回字典。

    代码生成器

    jeesite使用了自己的规范,运行起jeesite网站后, 在代码生成里,进行代码生成,步骤如下:

    1. 添加数据库表

    2. 在jeesite里:代码生成-》业务表配置-》业务表添加,进行添加。

    3. 在jeesite里: 代码生成-》生成方案配置-》单表-》保存并生成代码。 如果是主子表,可以选主子表。如果是树,可以选树。

      主子表,仅选择主表就可以。也可以先生成全部表后,再对主表进行覆盖生成。

    4. 完成后,代码生成到项目中了。

    改造

    1. 去除权限机制 @RequiresPermissions

    2. 去除 @RequestMapping 中的  ${adminPath} 定义。

    功能

    1. JsonMapper:

      String toJson(Object object)

      <T> T fromJson(String jsonString, Class<T> clazz)

    2. StringUtils ,各种类型的转换

    3. CacheUtils , 缓存工具类

    4. Digests ,支持SHA-1/MD5消息摘要的工具类.

    5. 

  • 相关阅读:
    Leetcode Plus One
    Leetcode Swap Nodes in Pairs
    Leetcode Remove Nth Node From End of List
    leetcode Remove Duplicates from Sorted Array
    leetcode Remove Element
    leetcode Container With Most Water
    leetcode String to Integer (atoi)
    leetcode Palindrome Number
    leetcode Roman to Integer
    leetcode ZigZag Conversion
  • 原文地址:https://www.cnblogs.com/newsea/p/4964900.html
Copyright © 2020-2023  润新知