zoukankan      html  css  js  c++  java
  • 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. 

  • 相关阅读:
    IIS中ASP.NET安全配置
    好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面)
    js取两位小数点
    json格式的ajax传输交互
    js全选与反选
    formdata,ajax提交数据
    js判断是否微信浏览器、IE浏览器
    js实现列表从下往上循环滚动
    绝对定位始终居中
    存储、字符串截取、两端对齐、样式绑定、微信调拨号功能
  • 原文地址:https://www.cnblogs.com/newsea/p/4964900.html
Copyright © 2011-2022 走看看