环境
Github上的不能初始化数据库:https://github.com/thinkgem/jeesite
官网上的可以: http://jeesite.com/
用 Idea 打开,修改 \src\main\resources\jeesite.properties 中的数据库连接字符串,重新导入Marven包。运行\db\init-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,位置:resources\mappings\modules\组
<?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>
时间: 2024-10-05 05:32:53